public CnrUser EntityToModel(HR_CNR_USER entity) { if (entity != null) { var model = new CnrUser() { USERID = entity.USERID, PERSONID = entity.PERSONID, LOCALISM = entity.LOCALISM, AREA = entity.AREA, DISEASE = entity.DISEASE, CREATTIME = entity.CREATTIME, CREATBY = entity.CREATBY, MODIFYTIME = entity.MODIFYTIME, MODIFYBY = entity.MODIFYBY, IDCARD = entity.IDCARD, NAME = entity.USERNAME, AGE = entity.AGE, SEX = entity.SEX, BIRTHDATE = entity.BIRTHDATE, CITY = entity.CITY, DOCTORNAME = entity.DOCTORNAME }; return(model); } return(null); }
public ActionResult getHistory(string userId, string templateName) { try { if (string.IsNullOrEmpty(templateName) || string.IsNullOrEmpty(userId)) { return(Json(new { Status = -1, Data = string.Empty, Msg = "参数错误1" }, JsonRequestBehavior.AllowGet)); } HR_CNR_USER user = _db.Set <HR_CNR_USER>().Where(p => p.USERID == userId).FirstOrDefault(); if (user == null) { return(Json(new { Status = -2, Data = string.Empty, Msg = "参数错误2" }, JsonRequestBehavior.AllowGet)); } /*if (string.IsNullOrEmpty(user.IDCARD)) * return Json(new { Status = -3, Data = string.Empty, Msg = "参数错误3" }, JsonRequestBehavior.AllowGet); * * HPN_Users hpn_user = (from x in _db.Set<HPN_Users>() where x.IDCard == user.IDCARD select x).FirstOrDefault(); * if(hpn_user == null) * return Json(new { Status = -4, Data = string.Empty, Msg = "参数错误4" }, JsonRequestBehavior.AllowGet);*/ HPN_TEMPLATE temp = templateService.getTemplateByName(templateName); if (temp == null) { return(Json(new { Status = -5, Data = string.Empty, Msg = "参数错误5" }, JsonRequestBehavior.AllowGet)); } List <HPN_TESTRESULT> testResultList = (from x in _db.Set <HPN_TESTRESULT>() where x.TEMPLATENAME == templateName && x.USERID.Equals(user.USERID) select x).OrderBy(p => p.INPUTTIME).ToList(); Chart chart = new Chart(); chart.title = temp.TITLE; ChartData chartData = new ChartData(); chartData.label = temp.TITLE; chartData.fillColor = "rgba(151,187,205,0.2)"; chartData.strokeColor = "rgba(151,187,205,1)"; chartData.pointColor = "rgba(151,187,205,1)"; chartData.pointStrokeColor = "#fff"; chartData.pointHighlightFill = "#fff"; chartData.pointHighlightStroke = "rgba(151,187,205,1)"; foreach (HPN_TESTRESULT item in testResultList) { chart.labels.Add(item.INPUTTIME.ToString()); chartData.data.Add(item.RESULT.ToDouble(0)); } chart.datasets.Add(chartData); return(Json(new { Status = 1, Data = chart, Msg = "操作成功" }, JsonRequestBehavior.AllowGet)); } catch (Exception ex) { return(Json(new { Status = -99, Data = string.Empty, Msg = ex.Message }, JsonRequestBehavior.AllowGet)); } }
/// <summary> /// 获取公共个人信息 /// </summary> /// <param name="personid"></param> /// <returns></returns> public IHttpActionResult Get(string Uid) { IPersonInfoRepository _personRepository = new EFPersonInfoRepository(); CancerUserInfoRepository _repository = new CancerUserInfoRepository(); //申明返回 HR_CNR_USER model = new HR_CNR_USER(); try { model = _repository.FindOne(p => p.USERID == Uid); if (model != null) { int personID = 0; int.TryParse(model.PERSONID, out personID); if (personID > 0) { var person = _personRepository.Get(personID); if (person != null && person.BirthDate.Length > 4) { int birthDateYear = Convert.ToInt32(person.BirthDate.Substring(0, 4)); model.AGE = DateTime.Now.Year - birthDateYear + 1; switch (person.Gender) { case "1": model.SEX = "男"; break; case "2": model.SEX = "女"; break; case "0": model.SEX = "未知"; break; default: model.SEX = "其他"; break; } } } } } catch (Exception ex) { LogHelper.WriteError(ex.ToString()); return(BadRequest(ex.Message)); } //返回 return(Ok(model)); }
public ActionResult getTestList(string UserId = null, decimal?TemplateType = null) { IQueryable <HPN_TEMPLATE> testList = _db.Set <HPN_TEMPLATE>().Where(p => p.STATUS == 1 && (TemplateType == null ? true : p.TYPE == TemplateType)).OrderBy(p => p.INDEX); List <object> list = new List <object>(); HR_CNR_USER user = null; if (!string.IsNullOrEmpty(UserId)) { user = _db.Set <HR_CNR_USER>().Where(p => p.USERID == UserId).FirstOrDefault(); if (user != null) { foreach (HPN_TEMPLATE item in testList) { HPN_TESTRESULT testResult = (from x in _db.Set <HPN_TESTRESULT>() where x.TEMPLATENAME == item.NAME select x).OrderByDescending(p => p.INPUTTIME).FirstOrDefault(); if (testResult == null) { continue; } if (!string.IsNullOrEmpty(testResult.RESULT)) { item.TestScore = testResult.RESULT.ToDouble(0); } var result = templateService.getResultDescByScore(testResult.TEMPLATENAME, testResult.RESULT.ToDouble(0)); item.WELCOMELABEL = string.Empty; if (result.Count > 0) { string desc = result.First().RESULT; if (string.IsNullOrEmpty(desc)) { desc = result.First().RESULTDETAIL; } if (!string.IsNullOrEmpty(desc)) { item.TestResult = desc; } } if (testResult.INPUTTIME != null) { item.TestTime = testResult.INPUTTIME; } } } } foreach (HPN_TEMPLATE item in testList) { list.Add(new { Title = item.TITLE, ActionName = item.NAME, TestScore = item.TestScore == 0 ? string.Empty : item.TestScore.ToString(), TestResult = item.TestResult, TestTime = item.TestTime.ToString() }); } return(Json(new { UserInfo = user, Templates = list, TemplateType = TemplateType == 1 ? "营养状况量表列表" : TemplateType == 2 ? "心理状况量表列表" : TemplateType == 3 ? "体力状况量表列表" : string.Empty }, JsonRequestBehavior.AllowGet)); }
/// <summary> /// 发送用户待办通知 /// </summary> private void SendEvent(string uid, string loginname) { string _appleID = Guid.NewGuid().ToString(); DoctorControlBll dcbll = new DoctorControlBll(); UserApply userApply = new UserApply(); userApply.ID = Guid.NewGuid().ToString(); userApply.APPLYID = _appleID; userApply.USERID = uid; userApply.GUIDELINEID = "1"; userApply.STATUS = "1"; userApply.CREATEDATETIME = DateTime.Now; userApply.ISDELETED = false; dcbll.Add(userApply); UserEvent userEvent = new UserEvent(); userEvent.FromUser = ""; userEvent.UserApplyId = userApply.ID; userEvent.ActionType = ((int)ActionType.待办事项).ToString(); userEvent.ActionInfo = "您已注册成功,请上传您的病历资料"; userEvent.ReceiptTime = DateTime.Now; userEvent.ActionStatus = ((int)ActionStatus.Progress).ToString(); userEvent.ToUser = uid; userEvent.CreateTime = DateTime.Now; userEvent.LinkUrl = "ViewUpload"; UserEventBLL userEventBLL = new UserEventBLL(); userEventBLL.Add(userEvent); CancerUserInfoRepository cancerUserRepository = new CancerUserInfoRepository(); HR_CNR_USER cnr_User = new HR_CNR_USER(); cnr_User.CREATTIME = DateTime.Now; cnr_User.USERID = uid; cnr_User.NAME = loginname; cancerUserRepository.Insert(cnr_User); }
public IHttpActionResult Get([FromUri] Request <string> req) { try { UserInfo user = _user.GetCurrentUser(); List <ServiceTraceInfo> list = _service.GetServiceTraceInfoByCreateUserId(user.UserId); if (!string.IsNullOrEmpty(req.Data)) { list = list.Where(p => p.TraceType == (Common.TraceType)req.Data.ToInt()).ToList <ServiceTraceInfo>(); } List <TraceHistoryModel> historyList = new List <TraceHistoryModel>(); list.ForEach(delegate(ServiceTraceInfo info) { UserEvent e = _event.Get(p => p.EVENTID == info.ForEventId); HR_CNR_USER u = _repository.FindOne(p => p.USERID == e.ToUser); UserInfo toUser = _user.GetUserInfoByID(e.ToUser); UserEvent s = _event.Get(p => p.REMARKS == e.EventID.ToLower()); TraceHistoryModel model = new TraceHistoryModel(); model.TraceInfo = info; model.User = u; model.UserEvent = e; model.ServiceEvent = s; if (toUser != null) { model.MemberLevel = toUser.Member.MEMBERNAME; } model.IsClose = e == null ? "" : e.ActionStatus == "完成" ? "是" : "否"; historyList.Add(model); }); Response <List <TraceHistoryModel> > rsp = new Response <List <TraceHistoryModel> >(); rsp.Data = historyList; return(Ok(rsp)); } catch (Exception ex) { LogService.WriteErrorLog("ServiceTaskController[Get]", ex.ToString()); return(BadRequest(ex.Message)); } }
public IHttpActionResult Get([FromUri] Request <HR_CNR_USER> request) { Response <IEnumerable <object> > response = new Response <IEnumerable <object> >(); try { var model = _repository.FindAll(); if (model == null) { return(NotFound()); } if (!string.IsNullOrEmpty(request.Keyword)) { model = model.Where(o => o.IDCARD.Equals(request.Keyword)); } if (!string.IsNullOrEmpty(request.UserName)) { model = model.Where(o => o.NAME.Contains(request.UserName)); } UserInfo user = new UserInfoService().GetCurrentUser(); if (user == null) { return(BadRequest("获取不到当前用户信息!")); } ArrayList args = new ArrayList(); string filterString = new RoleFunctionBLL().GetFilterString(user.UserId, "HR_CNR_USER", PermissionType.View, ref args); model = model.where (filterString, args.ToArray()); List <HR_CNR_USER> list = model.ToList(); for (int i = 0; i < list.Count; i++) { HR_CNR_USER entity = list[i]; PersonInfo person = null; if (!string.IsNullOrEmpty(entity.PERSONID)) { int personID = 0; int.TryParse(entity.PERSONID, out personID); if (personID > 0) { person = personRepostitory.Get(personID); } } else if (!string.IsNullOrEmpty(entity.IDCARD)) { person = personRepostitory.Get(entity.IDCARD); } if (person != null) { if (person.BirthDate.Length <= 4) { continue; } int birthDateYear = Convert.ToInt32(person.BirthDate.Substring(0, 4)); entity.AGE = DateTime.Now.Year - birthDateYear + 1; switch (person.Gender) { case "1": entity.SEX = "男"; break; case "2": entity.SEX = "女"; break; case "0": entity.SEX = "未知"; break; default: entity.SEX = "其他"; break; } } } response.Data = list; return(Ok(response)); } catch (Exception ex) { LogHelper.WriteError(ex.ToString()); return(BadRequest(ex.Message)); } }
public bool SaveUserApply(UserApply model) { using (var context = new CRDatabase()) { //根据model的NextCurrentNode字段来判断是否有选择 //if (model.NextCurrentNode == "") //当为空的时候,默认就更新几个字段 //{ // var entity = context.CTMS_USERAPPLY.FirstOrDefault(p => p.APPLYID == oldApplyId); // entity.DOCTORSUGGEST = model.DOCTORSUGGEST; // return context.SaveChanges() > 0; //} //else //{ UserInfo currentUser = new UserInfoService().GetCurrentUser(); UserEventBLL ueBll = new UserEventBLL(); UserEvent ueModel = new UserEvent(); UserEvent oldEvent = ueBll.Get(p => p.EVENTID == model.EventId); //更新原先的待办信息 ueBll.CloseEvent(model.EventId); var entity = context.CTMS_USERAPPLY.FirstOrDefault(p => p.APPLYID == model.APPLYID); entity.STATUS = ((int)ActionStatus.Complete).ToString(); var addModel = new CTMS_USERAPPLY(); addModel.ID = Guid.NewGuid().ToString(); addModel.APPLYID = model.APPLYID; addModel.USERID = entity.USERID; addModel.GUIDELINEID = entity.GUIDELINEID; addModel.CURRENTNODE = model.NextCurrentNode; addModel.STATUS = ((int)ActionStatus.Progress).ToString(); addModel.DOCTORSUGGEST = model.DOCTORSUGGEST; addModel.ENTRYDATE = model.ENTRYDATE; addModel.EXITDATE = model.EXITDATE; addModel.ISDELETED = false; context.CTMS_USERAPPLY.Add(addModel); //发送待办任务 CancerUserInfoRepository _repository = new CancerUserInfoRepository(); HR_CNR_USER user = _repository.FindOne(p => p.USERID == entity.USERID); ueModel.EventID = Guid.NewGuid().ToString(); string userEventId = ueModel.EventID; ueModel.UserApplyId = addModel.ID; ueModel.ActionType = "1"; ueModel.ActionInfo = "您收到了Doc医生的建议,请查看";// + model.NextCurrentNodeName; ueModel.ReceiptTime = System.DateTime.Now; ueModel.ActionStatus = ((int)ActionStatus.Progress).ToString(); ueModel.FromUser = currentUser.UserId; ueModel.ToUser = entity.USERID; ueModel.CreateTime = System.DateTime.Now; ueModel.LinkUrl = "DoTreatmentView"; //用户待办界面 ueModel.ModelId = oldEvent.ModelId; ueBll.AddUserEvent(ueModel); #region 推荐产品与待办关联 string _guidID = model.NextCurrentNode == "" ? model.CURRENTNODE : model.NextCurrentNode; GuidelineProductBLL gpBLL = new GuidelineProductBLL(); IEnumerable <GuidelineProduct> products = gpBLL.GetList(p => p.GUIDELINEID.Equals(_guidID)); EventProductBLL epdBLL = new EventProductBLL(); foreach (GuidelineProduct item in products) { EventProduct eventProduct = new EventProduct(); eventProduct.EventId = ueModel.EventID; eventProduct.ProductID = item.ProductId; eventProduct.ProductName = item.ProductName; eventProduct.ProductPrice = item.ProductPrice; eventProduct.ProductDes = item.Productdes; eventProduct.IsAlreadyBuy = "0"; epdBLL.Add(eventProduct); } #endregion #region 发送客服待办 ueModel = new UserEvent(); ueModel.EventID = Guid.NewGuid().ToString(); ueModel.UserApplyId = addModel.ID; ueModel.ActionType = "1"; ueModel.ActionInfo = string.Format("{0}收到了{1}对于病例的处理建议,请跟踪", user.USERNAME, currentUser.LoginName); ueModel.ReceiptTime = System.DateTime.Now; ueModel.ActionStatus = ((int)ActionStatus.Progress).ToString(); ueModel.FromUser = currentUser.UserId; var toUserId = context.CTMS_SYS_USERINFO.FirstOrDefault(p => p.USERTYPE == (decimal)UserType.客服); ueModel.ToUser = toUserId.USERID; ueModel.CreateTime = System.DateTime.Now; ueModel.LinkUrl = "ServiceTask"; //客服待办 ueModel.Remarks = userEventId; ueModel.ModelId = oldEvent.ModelId; ueBll.AddUserEvent(ueModel); #endregion return(context.SaveChanges() > 0); //} } }
public UserInfo LoadModelFromEntity(CTMS_SYS_USERINFO entity) { if (entity == null) { return(null); } UserInfo model = new UserInfo(); model.UserId = entity.USERID; if (!string.IsNullOrEmpty(entity.USERID)) { using (CRDatabase db = new CRDatabase()) { HR_CNR_USER patient = db.HR_CNR_USER.FirstOrDefault(p => p.USERID == entity.USERID); if (patient != null) { model.PatientInfo = patient; } List <CTMS_MYHOUSEKEEPER> myHouse = db.CTMS_MYHOUSEKEEPER.Where(p => p.USERID == entity.USERID).ToList(); if (myHouse.Count > 0) { CTMS_MYHOUSEKEEPER temp = myHouse.FirstOrDefault(p => p.OBJECTTYPE == UserType.医生.ToString()); if (temp != null) { UserInfo tempUser = LoadModelFromEntity(db.CTMS_SYS_USERINFO.FirstOrDefault(p => p.USERID == temp.OBJECTUSERID)); model.MyDoctor = tempUser; } temp = myHouse.FirstOrDefault(p => p.OBJECTTYPE == UserType.客服.ToString()); if (temp != null) { UserInfo tempUser = LoadModelFromEntity(db.CTMS_SYS_USERINFO.FirstOrDefault(p => p.USERID == temp.OBJECTUSERID)); model.MyService = tempUser; } } } } model.LoginName = entity.LOGINNAME; model.LoginPwd = entity.LOGINPWD; model.MobilePhone = entity.MOBILEPHONE; model.Email = entity.EMAIL; model.UserType = entity.USERTYPE; model.Status = (UserStatus)entity.USERSTATUS; model.MemberID = entity.MEMBERID; model.Account = entity.ACCOUNT; model.MemberStartDate = entity.MEMBERSTARTDATE; model.MemberEndDate = entity.MEMBERENDDATE; //通用 model.CreateUserID = entity.CREATEUSERID; model.CreateUserName = entity.CREATEUSERNAME; model.CreateDateTime = entity.CREATEDATETIME; model.EditUserID = entity.EDITUSERID; model.EditUserName = entity.EDITUSERNAME; model.EditTime = entity.EDITDATETIME; model.OwnerID = entity.OWNERID; model.OwnerName = entity.OWNERNAME; model.IsDeleted = entity.ISDELETED.Value; return(model); }
public IHttpActionResult Post([FromBody] Request <PersonInfo> request) { Response <PersonInfo> response = new Response <PersonInfo>(); try { using (EFPersonInfoRepository repository = new EFPersonInfoRepository()) { PersonInfo model = request.Data as PersonInfo; if (model == null) { return(NotFound()); } if (string.IsNullOrEmpty(model.PersonNo)) { model.PersonNo = model.IDNumber; } if (model.PersonId <= 0) { int ID = repository.Add(model); model.PersonId = ID; if (!string.IsNullOrEmpty(request.Keyword)) { CancerUserInfoRepository cancerUserRepository = new CancerUserInfoRepository(); HR_CNR_USER cancerUser = cancerUserRepository.Find(request.Keyword); if (cancerUser != null) { cancerUser.PERSONID = ID.ToString(); cancerUserRepository.Update(cancerUser); } } } else { bool isEditSuccess = repository.Edit(model); } response.Data = model; return(Ok(response)); } } catch (DbEntityValidationException ex) { StringBuilder errors = new StringBuilder(); IEnumerable <DbEntityValidationResult> validationResult = ex.EntityValidationErrors; foreach (DbEntityValidationResult result in validationResult) { ICollection <DbValidationError> validationError = result.ValidationErrors; foreach (DbValidationError err in validationError) { errors.Append(err.PropertyName + ":" + err.ErrorMessage + "\r\n"); } } string errMsg = errors.ToString(); LogService.WriteErrorLog("GeneDicGeneController[Post]", errMsg); return(BadRequest(errMsg)); //简写 //var validerr = ex.EntityValidationErrors.First().ValidationErrors.First(); //Console.WriteLine(validerr.PropertyName + ":" + validerr.ErrorMessage); } catch (Exception ex) { LogService.WriteErrorLog("GeneDicGeneController[Post]", ex.ToString()); return(BadRequest(ex.Message)); } }