/// <summary> /// 提交病历 /// </summary> /// <returns></returns> public ActionResult SubmitPatientRecord() { try { string TaskCode = Request.Form["TaskCode"].ToString(); int PatientOrder = Convert.ToInt32(Request.Form["PatientOrder"]); string EvenType = Request.Form["EvenType"].ToString(); string TaskOrder = Request.Form["TaskOrder"].ToString(); string DispatcherInfo = Request.Form["DispatcherInfo"].ToString(); string TiJianInfo = Request.Form["TiJianInfo"].ToString(); string WorkCode = Request.Form["WorkCode"].ToString(); string PersonName = Request.Form["PersonName"].ToString(); M_PatientRecord pr = JsonHelper.GetJsonInfoBy <M_PatientRecord>(DispatcherInfo); M_PatientRecordAppend pra = JsonHelper.GetJsonInfoBy <M_PatientRecordAppend>(TiJianInfo); string errorMsg = ""; if (new MobilePatientRecordBLL().PADAddPatientRecord(TaskCode, PatientOrder, EvenType, TaskOrder, pr, pra, WorkCode, PersonName, ref errorMsg)) { return(Json(new { success = true, msg = TaskOrder }, "appliction/json", JsonRequestBehavior.AllowGet)); } else { return(Json(new { success = false, msg = "上传病历失败!原因:" + errorMsg }, "appliction/json", JsonRequestBehavior.AllowGet)); } } catch (Exception ex) { return(Json(new { success = false, msg = "上传病历失败!原因:" + ex.Message }, "appliction/json", JsonRequestBehavior.AllowGet)); } }
public void GetPatientInfo(string TaskCode, int PatientOrder, out M_PatientRecord info , out M_PatientRecordAppend pra) { info = null; object objpr = null; M_PatientRecordCPR mprCPR = null; m_DAL.GetPatientInfo(TaskCode, PatientOrder, out objpr, out pra, out mprCPR); if (objpr != null) { info = (M_PatientRecord)objpr; } }
public ActionResult SavePatientCharge() { string chargeStr = Request.Form["charge"].ToString(); M_PatientCharge charge = JsonHelper.GetJsonInfoBy <M_PatientCharge>(chargeStr); if (charge == null) { return(Json(new { result = "ERROR", msg = "解析实体为空!" }, "appliction/json", JsonRequestBehavior.AllowGet)); } M_PatientCharge info = new M_PatientChargeBLL().GetListBy(pc => pc.TaskCode.Equals(charge.TaskCode) && pc.PatientOrder == 1).FirstOrDefault(); if (info != null) { if (new M_PatientChargeBLL().Del(info) <= 0) // 删除旧收费信息 { return(Json(new { result = "ERROR", msg = "删除旧收费信息失败!" }, "appliction/json", JsonRequestBehavior.AllowGet)); } } //查询是否已经填写病历 M_PatientRecord prinfo = new M_PatientRecordBLL().GetListBy(pr => pr.TaskCode.Equals(charge.TaskCode) && pr.PatientOrder == 1).FirstOrDefault(); if (prinfo == null) { M_PatientRecordBLL bll = new M_PatientRecordBLL(); M_PatientRecord pinfo = null; //病历主表信息 M_PatientRecordAppend pra = null; //病历附表 M_PatientRecordCPR prCPR = null; //病历附表--心肺复苏 List <M_PatientRecordDiag> prDiag = null; //病历子表--初步印象 List <M_PatientRecordECGImpressions> prECG = null; //病历子表--心电图印象 GetPatientRecordInfo(charge.TaskCode, charge.ChargePerson, out pinfo, out pra, out prCPR); bll.Insert(pinfo, pra, prCPR, prDiag, prECG); //新增病历主表、附表、子表 } charge.PatientOrder = 1; //收费序号目前永远为1 if (new M_PatientChargeBLL().Add(charge) > 0) { return(Json(new { result = "OK", msg = "收费成功!" }, "appliction/json", JsonRequestBehavior.AllowGet)); } else { return(Json(new { result = "ERROR", msg = "收费失败!" }, "appliction/json", JsonRequestBehavior.AllowGet)); } }
public ActionResult GetPatientRecordInfo() { string TaskCode = Request.Form["TaskCode"].ToString(); int PatientOrder = Convert.ToInt32(Request.Form["PatientOrder"]); M_PatientRecord pr = null; M_PatientRecordAppend pra = null; new MobilePatientRecordBLL().GetPatientInfo(TaskCode, PatientOrder, out pr, out pra); if (pr != null) { return(Json(new { success = true, pr = pr, pra = pra }, "appliction/json", JsonRequestBehavior.AllowGet)); } else { M_AttemperData result = new M_PatientRecordBLL().GetAttemperData(TaskCode, "");//根据任务编码获取调度信息 pr = new M_PatientRecord(); pr.CallOrder = result.CallOrder; pr.PatientOrder = 1; pr.LocalAddress = result.LocalAddress; pr.Name = result.Name; pr.Sex = result.Sex; pr.Age = result.Age; pr.AgeType = result.AgeType; pr.Station = result.Station; pr.OutStationCode = result.StationCode; pr.DrivingTime = result.DrivingTime; pr.ArriveSceneTime = result.ArriveSceneTime; pr.LeaveSceneTime = result.LeaveSceneTime; pr.ArriveDestinationTime = result.ArriveDestinationTime; pr.SendAddress = result.SendAddress; pr.Driver = result.Driver; pr.DoctorAndNurse = result.Doctor + result.Nurse; pr.StretcherBearersI = result.StretcherBearers; pr.ContactTelephone = result.ContactTelephone; return(Json(new { success = true, pr = pr, pra = pra }, "appliction/json", JsonRequestBehavior.AllowGet)); } }
public void GetPatientInfo(string taskCode, int patientOrder, out object info , out M_PatientRecordAppend pra, out M_PatientRecordCPR prCPR) { m_DAL.GetPatientInfo(taskCode, patientOrder, out info, out pra, out prCPR); }
public bool Update(object info, M_PatientRecordAppend pra , M_PatientRecordCPR prCPR, List <M_PatientRecordDiag> prDiag , List <M_PatientRecordECGImpressions> prECG) { return(m_DAL.Update(info, pra, prCPR, prDiag, prECG)); }
public bool SavePatient() { string state = ""; M_PatientRecordBLL bll = new M_PatientRecordBLL(); M_PatientRecord info = null; //病历主表信息 M_PatientRecordAppend pra = null; //病历附表 M_PatientRecordCPR prCPR = null; //病历附表--心肺复苏 List <M_PatientRecordDiag> prDiag = null; //病历子表--初步印象 List <M_PatientRecordECGImpressions> prECG = null; //病历子表--心电图印象 string PatientRecord = Request.Form["PatientRecord"].ToString(); M_AddPatientRecord add = new M_AddPatientRecord(); add = JsonHelper.GetJsonInfoBy <M_AddPatientRecord>(PatientRecord); if (add != null) { string TaskCode = add.TaskCode; int PatientOrder = add.PatientOrder; state = add.state; info = add.info; //病历主表信息 pra = add.pra; //病历附表 prCPR = add.prCPR; //病历附表--心肺复苏 if (add.prDiag.Count > 0) { prDiag = add.prDiag; } //病历子表--初步印象 else { prDiag = null; } //病历子表--初步印象 if (add.prECG.Count > 0) { prECG = add.prECG; } //病历子表--心电图印象 else { prECG = null; } //病历子表--心电图印象 } bool save = false; if (info != null) { try { if (state == "new") { save = bll.Insert(info, pra, prCPR, prDiag, prECG);//新增病历主表、附表、子表 } else if (state == "edit") { save = bll.Update(info, pra, prCPR, prDiag, prECG);//修改病历主表、附表、子表 } } catch (Exception e) { save = false; } } return(save); }
/// <summary> /// 病历页面初始化 /// </summary> /// <param name="TaskCode">任务编码</param> /// <param name="PatientOrder">序号</param> /// <param name="state">填写状态</param> /// <returns></returns> public ActionResult AddPatientRecord(string TaskCode, int PatientOrder, string state) { //, int PatientOrder//测试 M_PatientRecordBLL prBLL = new M_PatientRecordBLL(); M_DictionaryBLL dBLL = new M_DictionaryBLL(); //int PatientOrder = 1;//测试 M_AttemperData result = prBLL.GetAttemperData(TaskCode, state);//根据任务编码获取调度信息 ViewBag.Attemper = result; ViewData["TaskCode"] = TaskCode == null ? "2012102023555200020101" : TaskCode; M_PatientRecord prInfo; //病历主表信息 M_PatientRecordAppend pra; //病历附表--体检等信息 M_PatientRecordCPR prCPR; //病历附表--心肺复苏 if (state == "new") { int AddPatientOrder = prBLL.GetPatientMaxOrder(TaskCode); ViewData["PatientOrder"] = AddPatientOrder; prInfo = new M_PatientRecord(); pra = new M_PatientRecordAppend(); prCPR = new M_PatientRecordCPR(); ViewBag.PRInfo = prInfo; //病历主表信息--传到页面 ViewBag.PRAppendInfo = pra; //病历附表--体检等信息--传到页面 ViewBag.PRCPRInfo = prCPR; //病历附表--心肺复苏--传到页面 } else { object oPatientInfo;//病历主表 prBLL.GetPatientInfo(TaskCode, PatientOrder, out oPatientInfo, out pra, out prCPR); if (PatientOrder > 0) { prInfo = (M_PatientRecord)oPatientInfo; ViewBag.PRInfo = prInfo; //病历主表信息--传到页面 ViewBag.PRAppendInfo = pra; //病历附表--体检等信息--传到页面 ViewBag.PRCPRInfo = prCPR; //病历附表--心肺复苏--传到页面 ViewData["PatientOrder"] = PatientOrder; if (SuperRole("SuperRole")) { this.ViewData["SuperRole"] = "SuperRole";//登录人有超级权限 } else { this.ViewData["SuperRole"] = ""; } string role = UserOperateContext.Current.getMaxPerForRole(); //获取登录人角色(医生、护士、司机) this.ViewData["PatientRole"] = role; // } } ViewData["state"] = state == null ? "new" : state; if (SuperRole("PRAuditCPR")) { this.ViewData["PRAuditCPR"] = "PRAuditCPR";//登录人有“心肺复苏审核”权限 } else { this.ViewData["PRAuditCPR"] = ""; } if (SuperRole("SubCenterSpotChecks")) { this.ViewData["SubCenterSpotChecks"] = "SubCenterSpotChecks";//登录人有"分中心抽查"权限 } else { this.ViewData["SubCenterSpotChecks"] = ""; } if (SuperRole("CenterSpotChecks")) { this.ViewData["CenterSpotChecks"] = "CenterSpotChecks";//登录人有"中心抽查"权限 } else { this.ViewData["CenterSpotChecks"] = ""; } P_User pUser = new P_User(); pUser = UserOperateContext.Current.Session_UsrInfo;//获取登录人信息 ViewData["AgentCode"] = pUser.ID; ViewData["AgentWorkID"] = pUser.WorkCode; ViewData["AgentName"] = pUser.Name; ViewData["BeginFillPatientTime"] = DateTime.Now.ToString();//开始填写病历时间 #region 为病历页面的CheckBoxList项目赋值 CheckViewModel model = new CheckViewModel(); //model.DiseasesClassification = dBLL.GetCheckBoxModelByTableName("M_ZCaseTemplate");//病种分类 //model.GongShiRen = dBLL.GetCheckBoxModel("GongShiRen");//供史人 //model.AnamnesisllnessHistory = dBLL.GetCheckBoxModel("PastMedicalHistory");//既往病史 model.BodyFigure = dBLL.GetCheckBoxModel("PiFu"); //皮肤 model.Head = dBLL.GetCheckBoxModel("Head"); //头部 model.Neck = dBLL.GetCheckBoxModel("Neck"); //颈部 model.Chest = dBLL.GetCheckBoxModel("Chest"); //胸部 model.Lung = dBLL.GetCheckBoxModel("Lung"); //肺脏 model.LungLeft = dBLL.GetCheckBoxModel("LungLeft"); //左肺 model.LungRight = dBLL.GetCheckBoxModel("LungLeft"); //右肺 model.FuBu = dBLL.GetCheckBoxModel("FuBu"); //腹部 model.JiZhu = dBLL.GetCheckBoxModel("JiZhu"); //脊柱 model.Limb = dBLL.GetCheckBoxModel("Limb"); //四肢 #endregion #region 为病历页面的RadioButtonList从数据库传值 var ProvideMedicalHistoryPeople = new object(); //供史人 var DiseasesClassification = new object(); //病种分类 var PastMedicalHistory = new object(); //既往病史 var BabinskiSign = new object(); //神经系统--巴氏征 var ChestExtrusionTest = new object(); //胸廓挤压试验 var PelvicExtrusionTest = new object(); //骨盆挤压试验 lock (m_SyncRoot) { ProvideMedicalHistoryPeople = CacheHelper.GetCache("ProvideMedicalHistoryPeople"); DiseasesClassification = CacheHelper.GetCache("DiseasesClassification"); PastMedicalHistory = CacheHelper.GetCache("PastMedicalHistory"); BabinskiSign = CacheHelper.GetCache("BabinskiSign"); ChestExtrusionTest = CacheHelper.GetCache("ChestExtrusionTest"); PelvicExtrusionTest = CacheHelper.GetCache("PelvicExtrusionTest"); if (ProvideMedicalHistoryPeople == null) { ProvideMedicalHistoryPeople = dBLL.GetCheckBoxOrRadioButtonList("Checkbox", "ProvideMedicalHistoryPeople", "checkbox"); CacheHelper.SetCache("ProvideMedicalHistoryPeople", ProvideMedicalHistoryPeople); } if (DiseasesClassification == null) { DiseasesClassification = dBLL.GetCheckBoxListByTableName("M_ZCaseTemplate", "DiseasesClassification", "checkbox"); CacheHelper.SetCache("DiseasesClassification", DiseasesClassification); } if (PastMedicalHistory == null) { PastMedicalHistory = dBLL.GetCheckBoxOrRadioButtonList("Checkbox", "PastMedicalHistory", "checkbox"); CacheHelper.SetCache("PastMedicalHistory", PastMedicalHistory); } if (BabinskiSign == null) { BabinskiSign = dBLL.GetCheckBoxOrRadioButtonList("Checkbox", "BabinskiSign", "checkbox"); CacheHelper.SetCache("BabinskiSign", BabinskiSign); } if (ChestExtrusionTest == null) { ChestExtrusionTest = dBLL.GetCheckBoxOrRadioButtonList("Radio", "ChestExtrusionTest", "radio"); CacheHelper.SetCache("ChestExtrusionTest", ChestExtrusionTest); } if (PelvicExtrusionTest == null) { PelvicExtrusionTest = dBLL.GetCheckBoxOrRadioButtonList("Radio", "PelvicExtrusionTest", "radio"); CacheHelper.SetCache("PelvicExtrusionTest", PelvicExtrusionTest); } } this.ViewData["ProvideMedicalHistoryPeople"] = ProvideMedicalHistoryPeople; this.ViewData["DiseasesClassification"] = DiseasesClassification; this.ViewData["PastMedicalHistory"] = PastMedicalHistory; this.ViewData["BabinskiSign"] = BabinskiSign; this.ViewData["ChestExtrusionTest"] = ChestExtrusionTest; this.ViewData["PelvicExtrusionTest"] = PelvicExtrusionTest; #endregion return(View(model)); }
public bool PADAddPatientRecord(string TaskCode, int PatientOrder, string EvenType, string TaskOrder, M_PatientRecord pr, M_PatientRecordAppend pra, string WorkCode, string PersonName, ref string errorMsg) { try { if (pr == null) { pr = new M_PatientRecord(); } if (pra == null) { pra = new M_PatientRecordAppend(); } if (TaskCode == "") { TaskCode = m_DAL.GetTaskCodeByTaskOrder(TaskOrder); } if (TaskCode == "") { errorMsg = "任务流水号错误!未在任务中找到该流水号。"; return(false); } pr.TaskCode = TaskCode; pr.PatientOrder = PatientOrder; pr.AgentWorkID = WorkCode; pr.AgentName = PersonName; pr.PatientVersion = EvenType; pra.TaskCode = TaskCode; pra.PatientOrder = PatientOrder; object objpr = null; M_PatientRecordAppend mpra = null; M_PatientRecordCPR mprCPR = new M_PatientRecordCPR();; M_PatientRecord mpr = null; mprCPR.TaskCode = TaskCode; mprCPR.PatientOrder = PatientOrder; mprCPR.CenterIFAuditForXFFS = false; pr.MedicalRecordGenerationTime = DateTime.Now; pr.IMEI = "PAD"; m_DAL.GetPatientInfo(TaskCode, PatientOrder, out objpr, out mpra); if (objpr != null) { mpr = (M_PatientRecord)objpr; ReflectionUtility.UpdateObjectProperty(mpr, pr); ReflectionUtility.UpdateObjectProperty(mpra, pra); m_DAL.Update(pr, pra); } else { string HJTel = ""; string Area = ""; string EventType = ""; new MobileTaskDAL().GetMobileTaskInfo(TaskCode, out HJTel, out Area, out EventType); pr.ForHelpTelephone = HJTel; pr.OriginalTaskType = EventType; pr.ForArea = Area; pr.MedicalStateCode = 0; pr.FormCompleteLogo = false; pr.SubmitLogo = false; pr.SubCenterIFSpotChecks = false; pr.CenterIFSpotChecks = false; pr.LastUpdatePerson = PersonName; pr.LastUpdateTime = DateTime.Now; m_DAL.Insert(pr, pra, mprCPR, null, null); } return(true); } catch (Exception ex) { errorMsg = ex.Message; return(false); } }
//获取病历信息 public void GetPatientRecordInfo(string TaskCode, string WorkID, out M_PatientRecord info, out M_PatientRecordAppend pra, out M_PatientRecordCPR prCPR) { M_PatientRecordBLL prBLL = new M_PatientRecordBLL(); M_AttemperData result = prBLL.GetAttemperData(TaskCode, ""); //根据任务编码获取调度信息 info = new M_PatientRecord(); //病历主表信息 info.TaskCode = TaskCode; info.PatientOrder = 1; info.CallOrder = result.CallOrder; info.Name = result.Name; info.Sex = result.Sex; info.AgeType = "岁"; info.ForHelpTelephone = result.ForHelpPhone; info.ContactTelephone = result.ContactTelephone; info.PatientVersion = result.AlarmType; info.OriginalTaskType = result.AlarmType; info.ForArea = result.Area; info.LocalAddress = result.LocalAddress; info.OutStationCode = result.StationCode; info.Station = result.Station; info.SendAddress = result.SendAddress; info.DrivingTime = result.DrivingTime; info.ArriveSceneTime = result.ArriveSceneTime; info.LeaveSceneTime = result.LeaveSceneTime; info.ArriveDestinationTime = result.ArriveDestinationTime; info.Driver = result.Driver; info.StretcherBearersI = result.StretcherBearers; info.DoctorAndNurse = result.Doctor + result.Nurse; P_UserBLL bll = new P_UserBLL(); P_User user = bll.GetListBy(u => u.WorkCode == WorkID).Select(u => u.ToExtModle()).FirstOrDefault(); //查找用户名 密码 info.AgentCode = user.ID.ToString(); info.AgentWorkID = WorkID; info.AgentName = user.Name; info.BeginFillPatientTime = DateTime.Now; info.MedicalRecordGenerationTime = DateTime.Now; info.FormCompleteLogo = false; //obj.FormCompleteTime = null; info.ChargeOrder = 0; info.SubCenterIFSpotChecks = false; info.CenterIFSpotChecks = false; info.SubmitLogo = false; info.SubmitTime = null; info.MedicalStateCode = 0; info.LastUpdatePerson = user.Name; //填写病历的人员 info.LastUpdateTime = DateTime.Now; info.CPRIFSuccess = ""; //心肺复苏选择 info.IFRefuseTreatment = "治疗记录"; //是否拒绝治疗(救治记录) info.RescueType = ""; //抢救类型(救治记录) info.IMEI = "PAD"; //从PAD填写 pra = new M_PatientRecordAppend();// pra.TaskCode = TaskCode; pra.PatientOrder = 1; prCPR = new M_PatientRecordCPR();// prCPR.TaskCode = TaskCode; prCPR.PatientOrder = 1; prCPR.CenterIFAuditForXFFS = false; }