예제 #1
0
        /// <summary>
        /// 添加依据模板
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public bool SaveBaseOnTemplate(string historyId, List <BaseTemplateResult> list)
        {
            if (list == null)
            {
                LogService.WriteInfoLog(logTitle, "试图查找为空的CTMS_BASETEMPLATERESULT实体!");
                return(false);
            }

            using (var db = DbSessionFactory.GetCurrentDbContext())
            {
                var oldList = db.Set <CTMS_BASETEMPLATERESULT>().Where(p => p.HISTORYID == historyId).ToList();

                foreach (var item in oldList)
                {
                    db.Set <CTMS_BASETEMPLATERESULT>().Remove(item);
                    db.Set <CTMS_IMAGEEXAMINEREPORTDETAIL>().Where(p => p.REPORTID == item.BASETEMPLATEID)
                    .ForEachAsync(k => db.Set <CTMS_IMAGEEXAMINEREPORTDETAIL>().Remove(k));
                }

                foreach (var baseTemplateResult in list)
                {
                    db.Set <CTMS_BASETEMPLATERESULT>().Add(ModelToEntity(baseTemplateResult));
                    //结果不序列化成json的存放
                    Dictionary <string, string> dic = JsonConvert.DeserializeObject <Dictionary <string, string> >(baseTemplateResult.RESULT);
                    if (dic.Count > 0)
                    {
                        foreach (string key in dic.Keys)
                        {
                            CTMS_IMAGEEXAMINEREPORTDETAIL detail = new CTMS_IMAGEEXAMINEREPORTDETAIL();
                            detail.ID       = Guid.NewGuid().ToString();
                            detail.REPORTID = baseTemplateResult.BASETEMPLATEID;
                            detail.OPTIONID = key;
                            detail.VALUE    = dic[key];
                            db.Set <CTMS_IMAGEEXAMINEREPORTDETAIL>().Add(detail);
                        }
                    }
                }
                return(db.SaveChanges() > 0);
            }
        }
예제 #2
0
 public IHttpActionResult Post([FromBody] Request <ImageExamineReport> req)
 {
     try
     {
         ImageExamineReport            model = req.Data;
         Response <ImageExamineReport> rsp   = new Response <ImageExamineReport> ();
         if (string.IsNullOrEmpty(model.Id))
         {
             //新增
             string id = Guid.NewGuid().ToString();
             model.Id             = id;
             model.CreateUserId   = User.UserId;
             model.CreateUserName = User.LoginName;
             model.CreateDateTime = model.CreateDateTime == null ? DateTime.Now : model.CreateDateTime;
             model.IsDeleted      = 0;
             model.EditUserName   = User.LoginName;
             model.EditUserId     = User.UserId;
             model.EditDateTime   = DateTime.Now;
             model.UserId         = Guid.Parse(model.UserId).ToString();
             model.Remark         = "";
             bool result = _ier.AddImageExamineReport(model);
             rsp.Data = model;
             if (result)
             {
                 Dictionary <string, string> dic = JsonConvert.DeserializeObject <Dictionary <string, string> >(model.ReportDetail);
                 if (dic.Count > 0)
                 {
                     var detailList = (from x in _db.Set <CTMS_IMAGEEXAMINEREPORTDETAIL>() where x.REPORTID == model.Id select x).ToList();
                     if (detailList.Count > 0)
                     {
                         _db.Set <CTMS_IMAGEEXAMINEREPORTDETAIL>().RemoveRange(detailList);
                     }
                     foreach (string key in dic.Keys)
                     {
                         CTMS_IMAGEEXAMINEREPORTDETAIL detail = new CTMS_IMAGEEXAMINEREPORTDETAIL();
                         detail.ID       = Guid.NewGuid().ToString();
                         detail.REPORTID = model.Id;
                         detail.OPTIONID = key;
                         detail.VALUE    = dic[key];
                         _db.Set <CTMS_IMAGEEXAMINEREPORTDETAIL>().Add(detail);
                     }
                     _db.SaveChanges();
                 }
                 return(Ok(rsp));
             }
         }
         else
         {
             //修改
             ImageExamineReport m = _ier.GetImageExamineReportById(model.Id);
             if (m != null)
             {
                 if (model.CheckDate != null)
                 {
                     m.CheckDate = model.CheckDate;
                 }
                 if (!string.IsNullOrEmpty(model.Dept))
                 {
                     m.Dept = model.Dept;
                 }
                 if (!string.IsNullOrEmpty(model.Part))
                 {
                     m.Part = model.Part;
                 }
                 if (!string.IsNullOrEmpty(model.Diagnose))
                 {
                     m.Diagnose = model.Diagnose;
                 }
                 if (!string.IsNullOrEmpty(model.See))
                 {
                     m.See = model.See;
                 }
                 if (!string.IsNullOrEmpty(model.ReportDoctor))
                 {
                     m.ReportDoctor = model.ReportDoctor;
                 }
                 if (!string.IsNullOrEmpty(model.ReportDetail))
                 {
                     m.ReportDetail = model.ReportDetail;
                 }
                 if (!string.IsNullOrEmpty(model.CheckDoctor))
                 {
                     m.CheckDoctor = model.CheckDoctor;
                 }
                 bool result = _ier.UpdateImageExamineReport(m);
                 rsp.Data = m;
                 if (result)
                 {
                     Dictionary <string, string> dic = JsonConvert.DeserializeObject <Dictionary <string, string> >(model.ReportDetail);
                     if (dic.Count > 0)
                     {
                         var detailList = (from x in _db.Set <CTMS_IMAGEEXAMINEREPORTDETAIL>() where x.REPORTID == model.Id select x).ToList();
                         if (detailList.Count > 0)
                         {
                             _db.Set <CTMS_IMAGEEXAMINEREPORTDETAIL>().RemoveRange(detailList);
                         }
                         foreach (string key in dic.Keys)
                         {
                             CTMS_IMAGEEXAMINEREPORTDETAIL detail = new CTMS_IMAGEEXAMINEREPORTDETAIL();
                             detail.ID       = Guid.NewGuid().ToString();
                             detail.REPORTID = model.Id;
                             detail.OPTIONID = key;
                             detail.VALUE    = dic[key];
                             _db.Set <CTMS_IMAGEEXAMINEREPORTDETAIL>().Add(detail);
                         }
                         _db.SaveChanges();
                     }
                     return(Ok(rsp));
                 }
             }
         }
         return(BadRequest("操作失败"));
     }
     catch (DbEntityValidationException ex)
     {
         LogService.WriteErrorLog("ExamineReportController[Post]", ex.ToString());
         return(BadRequest(ex.Message));
     }
     catch (Exception ex)
     {
         LogService.WriteErrorLog("ExamineReportController[Post]", ex.ToString());
         return(BadRequest(ex.Message));
     }
 }