示例#1
0
        /// <summary>
        /// 新增账单
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public string Add(AccountRecord model)
        {
            if (model == null)
            {
                return(string.Empty);
            }
            if (string.IsNullOrEmpty(model.AccountDescription))
            {
                model.AccountDescription = string.Format("{0}{1}", model.SpendTypeText, model.ProductName);
            }

            using (DbContext db = new CRDatabase())
            {
                CTMS_SYS_USERINFO user = db.Set <CTMS_SYS_USERINFO>().Find(model.UserID);
                if (model.Balance == -1 && model.Account > user.ACCOUNT)
                {
                    throw new Exception("余额不足!");
                }
                user.ACCOUNT        += model.Balance * model.Account;
                db.Entry(user).State = EntityState.Modified;
                //Todo 对应服务次数加1

                db.Set <CTMS_ACCOUNTRECORD>().Add(ModelToEntity(model));
                db.SaveChanges();
                return(model.ID);
            }
        }
示例#2
0
 /// <summary>
 /// 修改用户角色
 /// </summary>
 /// <param name="model"></param>
 /// <returns></returns>
 public bool UpdateUserRole(string userid, List <Role> roleList)
 {
     if (string.IsNullOrEmpty(userid) || roleList == null)
     {
         LogService.WriteInfoLog(logTitle, "用户ID或实体列表为空!");
         return(false);
     }
     using (DbContext db = new CRDatabase())
     {
         List <CTMS_SYS_USERROLE> preUserRoleList = db.Set <CTMS_SYS_USERROLE>().Where(o => !o.ISDELETED && o.USERID.Equals(userid)).ToList();
         List <string>            preRoleIDList   = preUserRoleList.Select(p => p.ROLEID).ToList();
         List <string>            afterRoleIDList = roleList.Select(o => o.RoleID).ToList();
         foreach (CTMS_SYS_USERROLE entity in preUserRoleList)
         {
             entity.ISDELETED       = (preUserRoleList.Find(o => afterRoleIDList.Contains(entity.ROLEID)) == null);
             db.Entry(entity).State = EntityState.Modified;
         }
         foreach (string roleID in afterRoleIDList.Where(o => !preRoleIDList.Contains(o)))
         {
             db.Set <CTMS_SYS_USERROLE>().Add(new CTMS_SYS_USERROLE()
             {
                 USERROLEID = Guid.NewGuid().ToString(), ROLEID = roleID, USERID = userid
             });
         }
         return(db.SaveChanges() > 0);
     }
 }
示例#3
0
        public BaseResult DeleteItemStandVal(string id)
        {
            BaseResult br = new BaseResult()
            {
                Succeeded = true
            };

            using (CRDatabase _context = new CRDatabase())
            {
                var entity = _context.HR_ITEMSTANDVAL.FirstOrDefault(p => p.ID == id);
                if (entity != null)
                {
                    entity.ISDELETED = "1";
                    try
                    {
                        _context.Entry(entity).State = EntityState.Modified;
                        _context.SaveChanges();
                    }
                    catch (Exception e)
                    {
                        br.Succeeded = false;
                        br.Error     = e.Message.ToString();
                    }
                }
            }
            return(br);
        }
示例#4
0
        /// <summary>
        /// 更新值设置
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public BaseResult UpdateItemStandVal(ItemStandVal model)
        {
            BaseResult br = new BaseResult()
            {
                Succeeded = true
            };

            try
            {
                using (CRDatabase _context = new CRDatabase())
                {
                    var entity = _context.HR_ITEMSTANDVAL.FirstOrDefault(p => p.ID == model.ID);

                    if (entity != null)
                    {
                        entity.NAMEENG               = model.NAMEENG;
                        entity.EDITDATETIME          = model.EDITDATETIME;
                        entity.EDITUSERID            = model.EDITUSERID;
                        entity.MINVALUE              = model.MINVALUE;
                        entity.ITEMMAXVALUE          = model.MAXVALUE;
                        entity.UNIT                  = model.UNIT;
                        _context.Entry(entity).State = EntityState.Modified;
                        _context.SaveChanges();
                        //_context.Entry(ModelToEntity(model)).State = EntityState.Modified;
                        //_context.SaveChanges();
                    }
                }
            }
            catch (Exception e)
            {
                br.Succeeded = false;
                br.Error     = e.Message.ToString();
            }
            return(br);
        }
示例#5
0
 /// <summary>
 /// 修改元数据
 /// </summary>
 /// <param name="model"></param>
 /// <returns></returns>
 public bool Edit(GuideLine model)
 {
     if (string.IsNullOrEmpty(model.ID))
     {
         LogService.WriteInfoLog(logTitle, "试图修改为空的GuideLine实体!");
         throw new KeyNotFoundException();
     }
     using (DbContext db = new CRDatabase())
     {
         db.Entry(ModelToEntity(model)).State = EntityState.Modified;
         foreach (GuideLineData data in model.MetaDataList)
         {
             db.Entry(new GuideLineDataBLL().ModelToEntity(data)).State = EntityState.Modified;
         }
         return(db.SaveChanges() > 0);
     }
 }
示例#6
0
 /// <summary>
 /// 编辑用户基因
 /// </summary>
 /// <param name="model"></param>
 /// <returns></returns>
 public bool Edit(UserGene model)
 {
     if (model == null)
     {
         LogService.WriteInfoLog(logTitle, "试图修改为空的UserGene实体!");
         return(false);
     }
     using (DbContext db = new CRDatabase())
     {
         db.Entry(ModelToEntity(model)).State = EntityState.Modified;
         return(db.SaveChanges() > 0);
     }
 }
示例#7
0
 /// <summary>
 /// 修改随访方案
 /// </summary>
 /// <param name="model"></param>
 /// <returns></returns>
 public bool Edit(QATestSolution model)
 {
     if (string.IsNullOrEmpty(model.SolutionID))
     {
         LogService.WriteInfoLog(logTitle, "试图修改为空的QATestSolution实体!");
         throw new KeyNotFoundException();
     }
     using (DbContext db = new CRDatabase())
     {
         db.Entry(ModelToEntity(model)).State = EntityState.Modified;
         return(db.SaveChanges() > 0);
     }
 }
示例#8
0
 /// <summary>
 /// 修改元数据
 /// </summary>
 /// <param name="model"></param>
 /// <returns></returns>
 public bool Edit(MetaData model)
 {
     if (model == null || model.ID <= 0)
     {
         LogService.WriteInfoLog(logTitle, "试图修改为空的MetaData实体!");
         throw new KeyNotFoundException();
     }
     using (DbContext db = new CRDatabase())
     {
         db.Entry(ModelToEntity(model)).State = EntityState.Modified;
         return(db.SaveChanges() > 0);
     }
 }
示例#9
0
 /// <summary>
 /// 修改菜单
 /// </summary>
 /// <param name="model"></param>
 /// <returns></returns>
 public bool Edit(MenuInfo model)
 {
     if (string.IsNullOrEmpty(model.ID))
     {
         LogService.WriteInfoLog("访问MenuInfoBLL类", "试图修改为空的Function实体!");
         throw new KeyNotFoundException();
     }
     using (DbContext db = new CRDatabase())
     {
         db.Entry(ModelToEntity(model)).State = EntityState.Modified;
         return(db.SaveChanges() > 0);
     }
 }
示例#10
0
 /// <summary>
 /// 修改咨询
 /// </summary>
 /// <param name="model"></param>
 /// <returns></returns>
 public bool Edit(MyQuestion model, string eventID = "")
 {
     if (string.IsNullOrEmpty(model.ID))
     {
         LogService.WriteInfoLog(logTitle, "试图修改为空的MyQuestion实体!");
         throw new KeyNotFoundException();
     }
     using (DbContext db = new CRDatabase())
     {
         db.Entry(ModelToEntity(model)).State = EntityState.Modified;
         if (!string.IsNullOrEmpty(eventID))
         {
             CTMS_USEREVENT userEvent = db.Set <CTMS_USEREVENT>().Find(eventID);
             if (userEvent != null)
             {
                 userEvent.ACTIONSTATUS    = "3";
                 userEvent.ENDTIME         = model.EditTime;
                 db.Entry(userEvent).State = EntityState.Modified;
             }
         }
         return(db.SaveChanges() > 0);
     }
 }
示例#11
0
        /// <summary>
        /// 保存就诊史录入
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public bool SaveSeeDoctoryHis(SeeDoctorHistory model)
        {
            if (model == null)
            {
                LogService.WriteInfoLog(logTitle, "试图查找为空的SeeDoctorHistory实体!");
                return(false);
            }

            using (DbContext db = new CRDatabase())
            {
                db.Entry(ModelToEntity(model)).State = EntityState.Modified;
                db.Set <HR_SEEDOCHISICD>()
                .Where(p => p.HISTORYID == model.HISTORYID)
                .ForEachAsync(k => db.Set <HR_SEEDOCHISICD>().Remove((k)));

                model.ICDList.ForEach(p => db.Set <HR_SEEDOCHISICD>().Add(EntityToModel(p)));
                return(db.SaveChanges() > 0);
            }
        }
示例#12
0
        /// <summary>
        /// 更新模板配置
        /// </summary>
        /// <param name="etModel"></param>
        /// <returns></returns>
        public bool UpdateTemplate(ExamineTemplate etModel)
        {
            using (CRDatabase _context = new CRDatabase())
            {
                if (etModel != null)
                {
                    _context.Entry(ModelToEntity(etModel)).State = EntityState.Modified;

                    //_context.HR_TEMPLATEITEM.Where(p => p.TEMPLATEID == etModel.TEMPLATEID)
                    //    .ToList()
                    //    .ForEach(k => _context.HR_TEMPLATEITEM.Remove(k));
                    //删除掉关联的项以及项的单位
                    foreach (var item in _context.HR_TEMPLATEITEM.Where(p => p.TEMPLATEID == etModel.TEMPLATEID).ToList())
                    {
                        _context.HR_TEMPLATEITEMUNIT.Where(p => p.ITEMID == item.ITEMID)
                        .ForEachAsync(k => _context.HR_TEMPLATEITEMUNIT.Remove(k));
                        _context.HR_TEMPLATEITEM.Remove(item);
                    }

                    //_context.Database.ExecuteSqlCommand("delete from Students where StudentId = @studentId", new SqlParameter("@studentId", 5));
                    //foreach (var templateItem in etModel.TemplateItems)
                    //{
                    //    templateItem.TEMPLATEID = etModel.TEMPLATEID;
                    //    templateItem.ITEMID = Guid.NewGuid().ToString();
                    //    //_context.HR_TEMPLATEITEM.Add(ModelToEntity(templateItem));
                    //}
                    foreach (var item in etModel.TemplateItems ?? new List <HR_TemplateItemDTO>())
                    {
                        item.TEMPLATEID = etModel.TEMPLATEID;
                        _context.Set <HR_TEMPLATEITEM>().Add(ModelToEntity(item));

                        //3.添加项单位
                        foreach (var unitDto in item.ItemUnit ?? new List <HR_TemplateItemUnitDTO>())
                        {
                            unitDto.ITEMID = item.ITEMID;
                            _context.Set <HR_TEMPLATEITEMUNIT>().Add(ModelToEntity(unitDto));
                        }
                    }
                }
                return(_context.SaveChanges() > 0);
            }
        }
示例#13
0
 /// <summary>
 /// 购买会员
 /// </summary>
 /// <param name="userID"></param>
 /// <param name="MemberID"></param>
 /// <returns></returns>
 public bool BuyMember(string userID, string memberID)
 {
     using (DbContext db = new CRDatabase())
     {
         DateTime    now       = DateTime.Now;
         DateTime    startDate = now.Date;
         DateTime    endDate   = now.Date.AddYears(1).AddDays(-1);
         UserInfo    userInfo  = new UserInfoService().GetUserInfoByID(userID);
         MemberModel buyMember = new MemberBLL().GetMember(memberID);
         if (userInfo == null || buyMember == null)
         {
             throw new Exception("错误的用户ID或会员ID");
         }
         //判断余额
         if (userInfo.Account < buyMember.MEMBERPRICE.Value)
         {
             throw new Exception("余额不足,购买失败!");
         }
         //判断会员等级
         if (userInfo.Member.MEMBERLEVEL.Value >= buyMember.MEMBERLEVEL)
         {
             throw new Exception("不能购买相同或更低级别的会员!");
         }
         //1.扣钱+升级会员
         CTMS_SYS_USERINFO user = db.Set <CTMS_SYS_USERINFO>().Find(userID);
         user.ACCOUNT        -= buyMember.MEMBERPRICE.Value;
         user.MEMBERID        = buyMember.MEMBERID;
         user.MEMBERSTARTDATE = startDate;
         user.MEMBERENDDATE   = endDate;
         db.Entry(user).State = EntityState.Modified;
         //2.添加商品
         List <string> productDescList = new List <string>();
         foreach (MemberProducts memberProduct in buyMember.menberProductList)
         {
             if (!memberProduct.PRODUCTNUMBER.HasValue || Convert.ToInt32(memberProduct.PRODUCTNUMBER.Value) <= 0)
             {
                 continue;
             }
             for (int i = 0; i < Convert.ToInt32(memberProduct.PRODUCTNUMBER.Value); i++)
             {
                 db.Set <CTMS_MYPRODUCT>().Add(new CTMS_MYPRODUCT()
                 {
                     CREATEDATETIME = now,
                     CREATEUSERID   = userInfo.UserId,
                     CREATEUSERNAME = userInfo.LoginName,
                     ENDDATE        = endDate,
                     ID             = Guid.NewGuid().ToString(),
                     LOGINNAME      = userInfo.LoginName,
                     PRODUCTID      = memberProduct.PRODUCTID,
                     PRODUCTNUM     = 1,
                     STARTDATE      = startDate,
                     USERID         = userInfo.UserId
                 });
             }
             var product = db.Set <CTMS_PRODUCTS>().Find(memberProduct.PRODUCTID);
             if (product != null)
             {
                 productDescList.Add(string.Format("{0}*{1}", product.PRODUCTNAME, Convert.ToInt32(memberProduct.PRODUCTNUMBER.Value)));
             }
         }
         //3.提示记录
         db.Set <CTMS_ACCOUNTRECORD>().Add(new CTMS_ACCOUNTRECORD()
         {
             ACCOUNT            = buyMember.MEMBERPRICE.Value,
             ACCOUNTDESCRIPTION = string.Format("购买{0}", buyMember.MEMBERNAME),
             BALANCE            = -1,
             CREATEDATETIME     = now,
             CREATEUSERID       = userInfo.UserId,
             CREATEUSERNAME     = userInfo.LoginName,
             ID          = Guid.NewGuid().ToString(),
             LOGINNAME   = userInfo.LoginName,
             PRODUCTID   = "",
             PRODUCTNAME = string.Format("{0}(包含商品/服务:{1})", buyMember.MEMBERNAME, string.Join(",", productDescList)),
             //PRODUCTNAME = string.Format("{0}", buyMember.MEMBERNAME),
             SPENDTYPE = (int)SpendType.Buy,
             USERID    = userInfo.UserId,
         });
         return(db.SaveChanges() > 0);
     }
 }
示例#14
0
        /// <summary>
        /// 根据ID获取我的产品
        /// </summary>
        /// <param name="keyWord"></param>
        /// <returns></returns>
        public bool BuyProduct(string userID, string ProductID)
        {
            using (DbContext db = new CRDatabase())
            {
                DateTime now = DateTime.Now;
                if (string.IsNullOrEmpty(userID) || string.IsNullOrEmpty(ProductID))
                {
                    throw new Exception("用户ID或产品ID为空,购买失败!");
                }
                CTMS_SYS_USERINFO user    = db.Set <CTMS_SYS_USERINFO>().Find(userID);
                CTMS_PRODUCTS     product = db.Set <CTMS_PRODUCTS>().Find(ProductID);
                if (user == null || product == null)
                {
                    throw new Exception("错误的用户ID或产品ID");
                }
                if (product.SALEPRICE > user.ACCOUNT)
                {
                    throw new Exception("余额不足!");
                }

                //用户表
                decimal salePrice = product.SALEPRICE.HasValue ? product.SALEPRICE.Value : 0;
                user.ACCOUNT        -= salePrice;
                db.Entry(user).State = EntityState.Modified;

                //记录表
                CTMS_ACCOUNTRECORD accountRecord = new CTMS_ACCOUNTRECORD()
                {
                    ID                 = Guid.NewGuid().ToString(),
                    USERID             = user.USERID,
                    ACCOUNT            = salePrice,
                    ACCOUNTDESCRIPTION = string.Format("购买{0}", product.PRODUCTNAME),
                    BALANCE            = -1,
                    LOGINNAME          = user.LOGINNAME,
                    ORDERID            = "",
                    PRODUCTID          = product.PRODUCTID,
                    PRODUCTNAME        = product.PRODUCTNAME,
                    SPENDTYPE          = (int)SpendType.Buy,
                    CREATEDATETIME     = now,
                    CREATEUSERID       = user.USERID,
                    CREATEUSERNAME     = user.LOGINNAME
                };
                db.Set <CTMS_ACCOUNTRECORD>().Add(accountRecord);

                //我的产品表
                CTMS_MYPRODUCT myProduct = new CTMS_MYPRODUCT()
                {
                    ID             = Guid.NewGuid().ToString(),
                    USERID         = user.USERID,
                    LOGINNAME      = user.LOGINNAME,
                    PRODUCTID      = product.PRODUCTID,
                    PRODUCTNUM     = 1,
                    STARTDATE      = DateTime.Now.Date,
                    ENDDATE        = DateTime.Now.Date.AddYears(1).AddDays(-1),
                    CREATEUSERID   = user.USERID,
                    CREATEUSERNAME = user.LOGINNAME,
                    CREATEDATETIME = now,
                };
                db.Set <CTMS_MYPRODUCT>().Add(myProduct);

                return(db.SaveChanges() > 0);
            }
        }