public trn_basic_measure_hdr getBasicHdr(string hn, string en) { string rvisual_out_lens = null; string lvisual_out_lens = null; string rvisual_with_lens = null; string lvisual_with_lens = null; DateTime dateNow = Program.GetServerDateTime(); using (Service.WS_TrakcareCls ws = new Service.WS_TrakcareCls()) { DataSet ds = ws.GetvitalSign(en); if (ds != null) { if (ds.Tables.Count > 0) { string WithContactLens = ds.Tables[0].Rows[0]["WithContactLens"] == null ? "" : ds.Tables[0].Rows[0]["WithContactLens"].ToString(); if (WithContactLens == "N") { rvisual_out_lens = ds.Tables[0].Rows[0]["VisionRt"].ToString(); lvisual_out_lens = ds.Tables[0].Rows[0]["VisionLt"].ToString(); } else if (WithContactLens == "Y") { rvisual_with_lens = ds.Tables[0].Rows[0]["VisionRt"].ToString(); lvisual_with_lens = ds.Tables[0].Rows[0]["VisionLt"].ToString(); } } } } trn_basic_measure_hdr tbm = new trn_basic_measure_hdr { tbm_appearance = "GD", tbm_arrive = "WK", tbm_create_by = "System", tbm_create_date = dateNow, tbm_precaution = "SDP", tbm_purpose = 'W', tbm_triage = '5', tbm_type = 'N', tbm_update_by = "System", tbm_update_date = dateNow, tbm_vision_lvisual_out_lens = lvisual_out_lens, tbm_vision_lvisual_with_lens = lvisual_with_lens, tbm_vision_rvisual_out_lens = rvisual_out_lens, tbm_vision_rvisual_with_lens = rvisual_with_lens }; tbm.trn_basic_measure_dtls.AddRange(getVitalSign(hn, en)); return(tbm); }
public static void SaveBasicMeasurment(int tpr_id, bool _IsCallLab) { if (_IsCallLab == true) { using (InhCheckupDataContext dbc = new InhCheckupDataContext()) { trn_patient_regi tpr = dbc.trn_patient_regis.Where(x => x.tpr_id == tpr_id).FirstOrDefault(); if (tpr != null) { trn_basic_measure_hdr hdr = tpr.trn_basic_measure_hdrs.FirstOrDefault(); if (hdr == null) { hdr = new trn_basic_measure_hdr(); tpr.trn_basic_measure_hdrs.Add(hdr); } List <trn_basic_measure_dtl> dtl = hdr.trn_basic_measure_dtls.ToList(); if (dtl.Count() > 0) { dbc.trn_basic_measure_dtls.DeleteAllOnSubmit(dtl); } EmrClass.GetDataFromWSTrakCare tk = new EmrClass.GetDataFromWSTrakCare(); List <trn_basic_measure_dtl> newBmDtl = tk.getVitalSignByHN(tpr.trn_patient.tpt_hn_no); if (newBmDtl != null && newBmDtl.Count() > 0) { trn_basic_measure_dtl last_basic_dtl = newBmDtl.OrderByDescending(x => x.tbd_date).FirstOrDefault(); if (last_basic_dtl != null) { hdr.tbm_glass_or_contact = last_basic_dtl.tbd_vision_with_lens == true ? 'Y' : 'N'; } if (newBmDtl != null && newBmDtl.Count > 0) { hdr.trn_basic_measure_dtls.AddRange(newBmDtl); } } dbc.SubmitChanges(); } //if (Program.CurrentRegis != null) //{ //var objbmhdr = dbc.trn_basic_measure_hdrs.Where(c => c.tpr_id == tpr_id).ToList(); //dbc.trn_basic_measure_dtls.DeleteAllOnSubmit(bmDtl); //if (objbmhdr.Count > 0) //{ //del data in trn_basic_measurement by tbm_id //var objdeldtl = dbc.trn_basic_measure_dtls.Where(c => c.tbm_id == objbmhdr[0].tbm_id); //dbc.trn_basic_measure_dtls.DeleteAllOnSubmit(objdeldtl); //foreach (var data in objdeldtl) //{ // dbc.trn_basic_measure_dtls.DeleteOnSubmit(data); //} //dbc.SubmitChanges(); // Ws_GetDataByTrak.WS_GetDataBytrakSoapClient ws = new Ws_GetDataByTrak.WS_GetDataBytrakSoapClient(); // var hn = dbc.trn_patients.Where(c => c.tpt_id == Program.CurrentRegis.tpt_id).FirstOrDefault(); // //Search By HN // DataTable dt = ws.GetVitalSignByHN(hn.tpt_hn_no); // if (dt.Rows.Count != 0) // { // //ค้นหาวันที่ 5 วันล่าสุด จาก ws // var objseldatetop5 = (from myRow in dt.AsEnumerable() // select myRow).GroupBy(c => c.Field<DateTime>("OBS_Date")).Take(5).ToList(); // for (int i = 0; i < objseldatetop5.Count; i++) // { // //ค้นหาข้อมูลตามวันที่ // trn_basic_measure_dtl objnew = new trn_basic_measure_dtl(); // var objseldata = (from myRow in dt.AsEnumerable() // where myRow.Field<DateTime>("OBS_Date") == objseldatetop5[i].Key // select myRow).ToList(); // //save data to trn_basic_measurement_dlt // foreach (var data in objseldata) // { // switch ((int)data["OBS_Item_DR"]) // { // case 230: // objnew.tbd_weight = (string)data["OBS_Value"]; // break; // case 231: // objnew.tbd_height = (string)data["OBS_Value"]; // break; // case 11: // objnew.tbd_temp = (string)data["OBS_Value"]; // break; // case 129: // objnew.tbd_systolic = (string)data["OBS_Value"]; // break; // case 128: // objnew.tbd_diastolic = (string)data["OBS_Value"]; // break; // case 9: // objnew.tbd_pulse = (string)data["OBS_Value"]; // break; // case 10: // objnew.tbd_rr = (string)data["OBS_Value"]; // break; // case 134: // objnew.tbd_bmi = (string)data["OBS_Value"]; // break; // case 176: // objnew.tbd_waist = (string)data["OBS_Value"]; // break; // case 173: // objnew.tbd_vision_lt = (string)data["OBS_Value"]; // break; // case 174: // objnew.tbd_vision_rt = (string)data["OBS_Value"]; // break; // } // string _DateTime = String.Format("{0:yyyy/MM/dd}", data["OBS_Date"]); // objnew.tbd_date = Convert.ToDateTime(_DateTime + " " + data["OBS_Time"]); // objnew.tbm_id = objbmhdr[0].tbm_id; // objnew.tbd_create_by = Program.CurrentUser.mut_username; // objnew.tbd_create_date = Program.GetServerDateTime(); // objnew.tbd_update_by = Program.CurrentUser.mut_username; // objnew.tbd_update_date = Program.GetServerDateTime(); // } // dbc.trn_basic_measure_dtls.InsertOnSubmit(objnew); // } // } // dbc.SubmitChanges(); //} //} //if cur regis } //using } }
private void trnpatientregisBindingSource_CurrentChanged(object sender, EventArgs e) { try { if (dbc.GetChangeSet().Updates.Count > 0) { if (MessageBox.Show("คุณต้องการบันทึกการเปลี่ยนแปลงข้อมูลหรือไม่", "Confirm Message", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { dbc.SubmitChanges(); } else { trnpatientregisBindingSource.CancelEdit(); } } } catch (Exception ex) { Program.MessageError(ex.Message); } //Patient Type trn_patient_regi currentRegis = (trn_patient_regi)trnpatientregisBindingSource.Current; if (currentRegis != null) { Program.SetValueRadioGroup(GBPatientType, currentRegis.tpr_patient_type); RDGeneral_CheckedChanged(null, null); CHSameMainAddress.Checked = false; CHOfficeAddress.Checked = false; txtMainAddress.Text = currentRegis.tpr_main_address + " แขวง " + currentRegis.tpr_main_tumbon + " เขต " + currentRegis.tpr_main_amphur + " จังหวัด " + currentRegis.tpr_main_province + " " + currentRegis.tpr_main_zip_code; if (currentRegis.trn_patient != null && currentRegis.trn_patient.tpt_image != null) { pictureBox1.Image = Program.byteArrayToImage(currentRegis.trn_patient.tpt_image.ToArray()); } } var objPackItemList = (from t1 in currentRegis.trn_patient_order_items select new PackageBOView { ItemSet = (from t2 in currentRegis.trn_patient_order_sets where t2.tos_id == t1.tos_id select t2.tos_item_row_id).FirstOrDefault(), ItemSetCode = (from t2 in currentRegis.trn_patient_order_sets where t2.tos_id == t1.tos_id select t2.tos_od_set_code).FirstOrDefault(), ItemSetName = (from t2 in currentRegis.trn_patient_order_sets where t2.tos_id == t1.tos_id select t2.tos_od_set_name).FirstOrDefault(), ItemID = t1.toi_item_row_id, ItemCode = t1.toi_od_item_code, ItemName = t1.toi_od_item_name }).ToList(); GridPackage.DataSource = new SortableBindingList <PackageBOView>(objPackItemList); //Load Queue History var objQueueHistory = (from t1 in currentRegis.trn_patient_queues select new QueueHistory { RoomName = t1.mst_room_hdr.mrm_ename, EventName = (from t2 in dbc.mst_events where t2.mvt_id == t1.mvt_id select t2.mvt_ename).FirstOrDefault(), CallBy = t1.tps_call_by, CallDate = t1.tps_call_date, HoldBy = t1.tps_hold_by, HoldDate = t1.tps_hold_date, CancelBy = t1.tps_cancel_by, CencelDate = t1.tps_cancel_date, CancelRemark1 = t1.tps_cancel_remark, CancelRemark2 = t1.tps_cancel_other }).ToList(); GridQueueHistory.DataSource = new SortableBindingList <QueueHistory>(objQueueHistory); //LoadBasicMeasurement int SetTprID = currentRegis.tpr_id; trn_basic_measure_hdr objhdr = dbc.trn_basic_measure_hdrs.Where(c => c.tpr_id == SetTprID).FirstOrDefault(); if (objhdr != null) { BasicMeasurementbindingSource1.DataSource = objhdr; trn_basic_measure_hdr BasicMensureCurrent = (trn_basic_measure_hdr)BasicMeasurementbindingSource1.Current; // set Radio Program.SetValueRadioGroup(GBStatusOnArrival, BasicMensureCurrent.tbm_arrive.ToString()); Program.SetValueRadioGroup(GBPurpose, BasicMensureCurrent.tbm_purpose.ToString()); Program.SetValueRadioGroup(GBGeneralAppearance, BasicMensureCurrent.tbm_appearance.ToString()); Program.SetValueRadioGroup(GBFallPrecaution, BasicMensureCurrent.tbm_precaution.ToString()); Program.SetValueRadioGroup(GBEyeGlasseslen, BasicMensureCurrent.tbm_glass_or_contact.ToString()); Program.SetValueRadioGroup(GBColorBindness, BasicMensureCurrent.tbm_color_blind.ToString()); Program.SetValueRadioGroup(GBTriage, BasicMensureCurrent.tbm_triage); var objBasicMeasurementDetail = (from t1 in dbc.trn_basic_measure_dtls where t1.trn_basic_measure_hdr.trn_patient_regi.trn_patient.tpt_hn_no == currentRegis.trn_patient.tpt_hn_no orderby t1.tbd_update_by descending select new BasicMeasurementDetail { Height = t1.tbd_height, Weight = t1.tbd_weight, BMI = t1.tbd_bmi, BP = ((t1.tbd_systolic != null)?t1.tbd_systolic:"") + " / " + ((t1.tbd_diastolic != null)?t1.tbd_diastolic:""), Pulse = t1.tbd_pulse, Waist = t1.tbd_waist, RR = t1.tbd_rr, Temp = t1.tbd_temp }).Take(5); GridBasicMeasurementDetail.DataSource = new SortableBindingList <BasicMeasurementDetail>(objBasicMeasurementDetail.ToList()); } //End LoadBasicMeasurement }
public void updateByVitalSignResult(ref trn_patient_regi pregis, List <APITrakcare.VitalSignResult> vsresult, DateTime dateNow, string user) { try { var hdr = pregis.trn_basic_measure_hdrs.FirstOrDefault(); if (hdr == null) { hdr = new trn_basic_measure_hdr(); hdr.tbm_create_by = user; hdr.tbm_create_date = dateNow; pregis.trn_basic_measure_hdrs.Add(hdr); } hdr.tbm_vision_left = null; hdr.tbm_vision_right = null; hdr.tbm_glass_or_contact = null; hdr.tbm_color_blind = null; hdr.tbm_vision_lvisual_with_lens = null; hdr.tbm_vision_rvisual_with_lens = null; hdr.tbm_vision_lvisual_out_lens = null; hdr.tbm_vision_rvisual_out_lens = null; hdr.tbm_update_by = user; hdr.tbm_update_date = dateNow; if (vsresult.Count > 0) { hdr.tbm_vision_left = convInt(vsresult[0].visionLeft); hdr.tbm_vision_right = convInt(vsresult[0].visionRight); hdr.tbm_glass_or_contact = vsresult[0].withlen ? 'Y' : 'N'; hdr.tbm_color_blind = vsresult[0].colorblind == null ? (char?)null : vsresult[0].colorblind.ToUpper() == "NA" ? 'X' : vsresult[0].colorblind.ToUpper() == "NO" ? 'N' : vsresult[0].colorblind.ToUpper() == "AB" ? 'A' : (char?)null; if (hdr.tbm_glass_or_contact == 'Y') { hdr.tbm_vision_lvisual_with_lens = vsresult[0].visionLeft; hdr.tbm_vision_rvisual_with_lens = vsresult[0].visionRight; } else { hdr.tbm_vision_lvisual_out_lens = vsresult[0].visionLeft; hdr.tbm_vision_rvisual_out_lens = vsresult[0].visionRight; } var dtls = hdr.trn_basic_measure_dtls.OrderBy(x => x.tbd_id).ToList(); int i; for (i = 0; i < vsresult.Count; i++) { trn_basic_measure_dtl dtl; if (i < dtls.Count) { dtl = dtls[i]; } else { dtl = new trn_basic_measure_dtl { tbd_create_by = user, tbd_create_date = dateNow }; hdr.trn_basic_measure_dtls.Add(dtl); } dtl.tbd_row_id = vsresult[i].rowid; dtl.tbd_en_no = vsresult[i].en; dtl.tbd_date = vsresult[i].vsDate; dtl.tbd_vision_lt = vsresult[i].visionLeft; dtl.tbd_vision_rt = vsresult[i].visionRight; dtl.tbd_bmi = vsresult[i].bmi; dtl.tbd_diastolic = vsresult[i].diastolic; dtl.tbd_height = vsresult[i].height; dtl.tbd_pulse = vsresult[i].pulse; dtl.tbd_rr = vsresult[i].respirationrate; dtl.tbd_systolic = vsresult[i].systolic; dtl.tbd_temp = vsresult[i].temperature; if (vsresult[i].withlen) { dtl.tbd_vision_lvisual_out_lens = null; dtl.tbd_vision_rvisual_out_lens = null; dtl.tbd_vision_lvisual_with_lens = vsresult[i].visionLeft; dtl.tbd_vision_rvisual_with_lens = vsresult[i].visionRight; } else { dtl.tbd_vision_lvisual_out_lens = vsresult[i].visionLeft; dtl.tbd_vision_rvisual_out_lens = vsresult[i].visionRight; dtl.tbd_vision_lvisual_with_lens = null; dtl.tbd_vision_rvisual_with_lens = null; } dtl.tbd_vision_with_lens = vsresult[i].withlen; dtl.tbd_waist = vsresult[i].Waist; dtl.tbd_weight = vsresult[i].weight; dtl.tbd_update_by = user; dtl.tbd_update_date = dateNow; } } } catch (Exception ex) { Class.globalCls.MessageError("VitalSignCls", "InsertByVitalSignResult", ex.Message); throw ex; } }
public void GetVistalSign(int tpr_id, string username) { using (InhCheckupDataContext dbc = new InhCheckupDataContext()) { DateTime dateNow = globalCls.GetServerDateTime(); trn_patient_regi tpr = dbc.trn_patient_regis.Where(x => x.tpr_id == tpr_id).FirstOrDefault(); if (tpr != null) { List <string> locCheckup = dbc.mst_hpc_sites.Where(x => x.mhs_status == 'A' && x.mhs_other_clinic == false).Select(x => x.mhs_code).ToList(); locCheckup.Add("01AMSCHK"); var res = GetVitalSign(tpr.trn_patient.tpt_hn_no);//.Where(x => locCheckup.Contains(x.Location)).OrderByDescending(x => x.VitalSignDate); trn_basic_measure_hdr hdr = tpr.trn_basic_measure_hdrs.FirstOrDefault(); if (hdr == null) { hdr = new trn_basic_measure_hdr(); hdr.tbm_create_by = username; hdr.tbm_create_date = dateNow; tpr.trn_basic_measure_hdrs.Add(hdr); } hdr.tbm_vision_left = null; hdr.tbm_vision_right = null; hdr.tbm_glass_or_contact = null; hdr.tbm_vision_lvisual_with_lens = null; hdr.tbm_vision_rvisual_with_lens = null; hdr.tbm_vision_lvisual_out_lens = null; hdr.tbm_vision_rvisual_out_lens = null; hdr.tbm_update_by = username; hdr.tbm_update_date = dateNow; var cur = res.Where(x => x.en == tpr.tpr_en_no).OrderByDescending(x => x.VitalSignDate).FirstOrDefault(); if (cur != null) { hdr.tbm_vision_left = ConvertToInt(cur.VisionLeft); hdr.tbm_vision_right = ConvertToInt(cur.VisionRight); hdr.tbm_glass_or_contact = cur.WithLen ? 'Y' : 'N'; hdr.tbm_color_blind = cur.ColorBlind == null ? (char?)null : cur.ColorBlind.ToUpper() == "NA" ? 'X' : cur.ColorBlind.ToUpper() == "NO" ? 'N' : cur.ColorBlind.ToUpper() == "AB" ? 'A' : (char?)null; if (hdr.tbm_glass_or_contact == 'Y') { hdr.tbm_vision_lvisual_with_lens = cur.VisionLeft; hdr.tbm_vision_rvisual_with_lens = cur.VisionRight; } else { hdr.tbm_vision_lvisual_out_lens = cur.VisionLeft; hdr.tbm_vision_rvisual_out_lens = cur.VisionRight; } } bool start = false; int count = 0; List <int> list_tbd_id = hdr.trn_basic_measure_dtls.Select(x => x.tbd_id).ToList(); foreach (var rs in res) { if (rs.Equals(cur)) { start = true; } if (start) { trn_basic_measure_dtl dtl = hdr.trn_basic_measure_dtls .Where(x => x.tbd_row_id == rs.rowid && x.tbd_en_no == rs.en && x.tbd_date == rs.VitalSignDate) .FirstOrDefault(); if (dtl == null) { dtl = new trn_basic_measure_dtl(); dtl.tbd_row_id = rs.rowid; dtl.tbd_create_by = username; dtl.tbd_create_date = dateNow; hdr.trn_basic_measure_dtls.Add(dtl); } else { list_tbd_id.Remove(dtl.tbd_id); } dtl.tbd_en_no = rs.en; dtl.tbd_date = rs.VitalSignDate; dtl.tbd_vision_lt = rs.VisionLeft; dtl.tbd_vision_rt = rs.VisionRight; dtl.tbd_bmi = rs.BMI; dtl.tbd_diastolic = rs.Diastolic; dtl.tbd_height = rs.Height; dtl.tbd_pulse = rs.Pulse; dtl.tbd_rr = rs.RespirationRate; dtl.tbd_systolic = rs.Systolic; dtl.tbd_temp = rs.Temperature; if (rs.WithLen) { dtl.tbd_vision_lvisual_out_lens = null; dtl.tbd_vision_rvisual_out_lens = null; dtl.tbd_vision_lvisual_with_lens = rs.VisionLeft; dtl.tbd_vision_rvisual_with_lens = rs.VisionRight; } else { dtl.tbd_vision_lvisual_out_lens = rs.VisionLeft; dtl.tbd_vision_rvisual_out_lens = rs.VisionRight; dtl.tbd_vision_lvisual_with_lens = null; dtl.tbd_vision_rvisual_with_lens = null; } dtl.tbd_vision_with_lens = rs.WithLen; dtl.tbd_waist = rs.Waist; dtl.tbd_weight = rs.Weight; dtl.tbd_update_by = username; dtl.tbd_update_date = dateNow; count++; } if (count == 3) { break; } } List <trn_basic_measure_dtl> listDeleteDtl = hdr.trn_basic_measure_dtls.Where(x => list_tbd_id.Contains(x.tbd_id)).ToList(); if (listDeleteDtl.Count > 0) { dbc.trn_basic_measure_dtls.DeleteAllOnSubmit(listDeleteDtl); } try { dbc.SubmitChanges(); } catch (System.Data.Linq.ChangeConflictException) { foreach (System.Data.Linq.ObjectChangeConflict occ in dbc.ChangeConflicts) { dbc.Refresh(System.Data.Linq.RefreshMode.KeepChanges, occ.Object); } dbc.SubmitChanges(); } //trn_basic_measure_hdr hdr = tpr.trn_basic_measure_hdrs.FirstOrDefault(); //if (hdr == null) //{ // hdr = new trn_basic_measure_hdr(); // tpr.trn_basic_measure_hdrs.Add(hdr); //} //EnumerableRowCollection<DataRow> result = retrieveVitalSign(tpr.trn_patient.tpt_hn_no); //List<int> ListOBS_Item_DR = new List<int> //{ // 230, 231, 11, 129, 128, 9, 10, 134, 176, 173, 174, 281 //}; //if (result != null) //{ // if (result.Count() > 0) // { // var grpResultByID = result.Where(x => ListOBS_Item_DR.Contains(x.Field<int>("OBS_Item_DR"))) // .GroupBy(x => x.Field<int>("OBS_ParRef")) // .Select(x => new VitalSign // { // OBS_ParRef = x.Key, // OBS_DateTime = x.Select(y => y.Field<DateTime>("OBS_Date").Add(y.Field<TimeSpan>("OBS_Time"))).OrderByDescending(y => y).FirstOrDefault(), // PAADM_ADMNo = x.Select(y => y.Field<string>("PAADM_ADMNo")).FirstOrDefault(), // VitalSign_Dtl = x.GroupBy(y => y.Field<DateTime>("OBS_Date").Add(y.Field<TimeSpan>("OBS_Time"))) // .OrderByDescending(y => y.Key).FirstOrDefault() // .Select(y => new VitalSign.VitalSignDtl // { // OBS_Item_DR = y.Field<int>("OBS_Item_DR"), // OBS_Value = y.Field<string>("OBS_Value") // }).ToList() // }).ToList() // .OrderByDescending(x => x.OBS_DateTime); // bool start = false; // int countRec = 0; // List<int?> listNewRowID = new List<int?>(); // foreach (var rowID in grpResultByID) // { // if (rowID.PAADM_ADMNo == tpr.tpr_en_no) // { // start = true; // } // if (start) // { // countRec = countRec + 1; // listNewRowID.Add(rowID.OBS_ParRef); // trn_basic_measure_dtl dtl = hdr.trn_basic_measure_dtls.Where(x => x.tbd_row_id == rowID.OBS_ParRef).FirstOrDefault(); // if (dtl == null) // { // dtl = new trn_basic_measure_dtl(); // dtl.tbd_en_no = rowID.PAADM_ADMNo; // dtl.tbd_row_id = rowID.OBS_ParRef; // dtl.tbd_date = rowID.OBS_DateTime; // dtl.tbd_create_by = username; // dtl.tbd_create_date = dateNow; // hdr.trn_basic_measure_dtls.Add(dtl); // } // dtl.tbd_weight = null; // dtl.tbd_height = null; // dtl.tbd_temp = null; // dtl.tbd_systolic = null; // dtl.tbd_diastolic = null; // dtl.tbd_pulse = null; // dtl.tbd_rr = null; // dtl.tbd_bmi = null; // dtl.tbd_waist = null; // dtl.tbd_vision_lt = null; // dtl.tbd_vision_rt = null; // foreach (var item in rowID.VitalSign_Dtl) // { // switch (item.OBS_Item_DR) // { // case 230: // dtl.tbd_weight = item.OBS_Value; // break; // case 231: // dtl.tbd_height = item.OBS_Value; // break; // case 11: // dtl.tbd_temp = item.OBS_Value; // break; // case 129: // dtl.tbd_systolic = item.OBS_Value; // break; // case 128: // dtl.tbd_diastolic = item.OBS_Value; // break; // case 9: // dtl.tbd_pulse = item.OBS_Value; // break; // case 10: // dtl.tbd_rr = item.OBS_Value; // break; // case 134: // dtl.tbd_bmi = item.OBS_Value; // break; // case 176: // dtl.tbd_waist = item.OBS_Value; // break; // case 173: // dtl.tbd_vision_lt = item.OBS_Value; // break; // case 174: // dtl.tbd_vision_rt = item.OBS_Value; // break; // // Sumit Edit 23/12/2014 // case 281: // dtl.tbd_vision_with_lens = (item.OBS_Value == "Y" || item.OBS_Value == "y") ? true : false; // break; // } // } // dtl.tbd_update_by = username; // dtl.tbd_update_date = dateNow; // } // if (countRec == 5) break; // } // try // { // var eyesVS = hdr.trn_basic_measure_dtls // .OrderByDescending(x => x.tbd_date) // .Select(x => new // { // x.tbd_vision_rt, // x.tbd_vision_lt // }).FirstOrDefault(); // hdr.tbm_vision_right = Convert.ToInt32(eyesVS.tbd_vision_rt); // hdr.tbm_vision_left = Convert.ToInt32(eyesVS.tbd_vision_lt); // } // catch // { // } // List<trn_basic_measure_dtl> listDeleteDtl = hdr.trn_basic_measure_dtls.Where(x => !listNewRowID.Contains(x.tbd_row_id)).ToList(); // dbc.trn_basic_measure_dtls.DeleteAllOnSubmit(listDeleteDtl); // dbc.SubmitChanges(); // } //} } } }
public void GetEyeExam(int tpr_id, string username) { using (InhCheckupDataContext dbc = new InhCheckupDataContext()) { DateTime dateNow = globalCls.GetServerDateTime(); trn_patient_regi tpr = dbc.trn_patient_regis.Where(x => x.tpr_id == tpr_id).FirstOrDefault(); if (tpr != null) { var visitdate = tpr.trn_patient_regis_detail != null && tpr.trn_patient_regis_detail.tpr_real_arrived_date != null ? tpr.trn_patient_regis_detail.tpr_real_arrived_date.Value.Date : tpr.tpr_arrive_date != null ? tpr.tpr_arrive_date.Value.Date : dateNow; trn_eye_exam_hdr teh = dbc.trn_eye_exam_hdrs.Where(x => x.tpr_id == tpr_id).FirstOrDefault(); trn_basic_measure_hdr hdr = dbc.trn_basic_measure_hdrs.Where(x => x.tpr_id == tpr_id).FirstOrDefault(); trn_patient_event mvt = dbc.trn_patient_events.Where(x => x.tpr_id == tpr_id && x.mst_event.mvt_code == "EM").FirstOrDefault(); if (mvt != null) { hdr.tbm_glass_or_contact = string.IsNullOrEmpty(teh.teh_vision_le) == true && string.IsNullOrEmpty(teh.teh_vision_out_le) == false ? 'Y' : 'N'; hdr.tbm_color_blind = teh.teh_color_vision == null ? (char?)null : (char?)teh.teh_color_vision; //tbm_vision_lvisual_with_lens if (teh.teh_vision_le == null && teh.teh_vision_out_llens == null) { hdr.tbm_vision_lvisual_with_lens = null; } else if (teh.teh_vision_le != null) { if (teh.teh_vision_le.Contains("20/")) { hdr.tbm_vision_lvisual_with_lens = findEyeValue(teh.teh_vision_le); } else { hdr.tbm_vision_lvisual_with_lens = teh.teh_vision_le; } } else if (teh.teh_vision_out_llens != null) { if (teh.teh_vision_out_llens.Contains("20/")) { hdr.tbm_vision_lvisual_with_lens = findEyeValue(teh.teh_vision_out_llens); } else { hdr.tbm_vision_lvisual_with_lens = teh.teh_vision_out_llens.ToString(); } } //tbm_vision_rvisual_with_lens if (teh.teh_vision_re == null && teh.teh_vision_out_rlens == null) { hdr.tbm_vision_rvisual_with_lens = null; } else if (teh.teh_vision_re != null) { if (teh.teh_vision_re.Contains("20/")) { hdr.tbm_vision_rvisual_with_lens = findEyeValue(teh.teh_vision_re); } else { hdr.tbm_vision_rvisual_with_lens = teh.teh_vision_re; } } else if (teh.teh_vision_out_llens != null) { if (teh.teh_vision_out_rlens.Contains("20/")) { hdr.tbm_vision_rvisual_with_lens = findEyeValue(teh.teh_vision_out_rlens); } else { hdr.tbm_vision_rvisual_with_lens = teh.teh_vision_out_rlens.ToString(); } } hdr.tbm_vision_lvisual_out_lens = teh.teh_vision_out_le == null ? null : teh.teh_vision_out_le.Contains("20/") ? findEyeValue(teh.teh_vision_out_le) : null; hdr.tbm_vision_rvisual_out_lens = teh.teh_vision_out_re == null ? null : teh.teh_vision_out_re.Contains("20/") ? findEyeValue(teh.teh_vision_out_re) : null; // } dbc.SubmitChanges(); var labconfig = new LabClass.GetLabConfigCls().GetByPaientLab(tpr_id); trn_patient tpt = dbc.trn_patients.Where(x => x.tpt_id == tpr.tpt_id).FirstOrDefault(); var ages = new LabClass.InterpretLabCls().calAge(tpt.tpt_dob.Value.Date, visitdate); var sex = Convert.ToChar(tpt.tpt_gender.ToString()); mst_lab lab = dbc.mst_labs.Where(x => x.mlb_type == 'C' && x.mlb_status == 'A' && x.mlb_code == "VS001").FirstOrDefault(); var maplabspecial = new LabClass.MapLab { code = lab.mlb_code, id = lab.mlb_id, nameen = lab.mlb_ename, nameth = lab.mlb_tname, seq = lab.mlb_chart_seq, setcode = lab.mlb_lab_set, usechart = false, valuetype = lab.mlb_value_type, status = 'E' }; var rs = new LabClass.InterpretLabCls().GetResult(maplabspecial, labconfig, ages, sex); var rslab = new LabClass.InterpretLab { setcode = lab.mlb_lab_set, code = lab.mlb_code, name_en = lab.mlb_ename, name_th = lab.mlb_tname, seq = lab.mlb_chart_seq, mlr_id = rs.mlr_id, summary = rs.summary, result_en = rs.result_en, result_th = rs.result_th, result_jp = rs.result_jp, normalrange = rs.normalrange, unit = rs.unit, status = rs.status }; var labvs = tpr.trn_patient_lab_vitalsigns.Where(x => x.tplv_lab_code == maplabspecial.code && x.tpr_id == tpr_id).FirstOrDefault(); if (labvs != null) { labvs.tplv_summary = rslab.summary == null ? null : rslab.summary.ToString(); labvs.tplv_lab_name_th = rslab.name_th; labvs.tplv_lab_name_en = rslab.name_en; labvs.tplv_lab_result_th = rslab.result_th; labvs.tplv_lab_result_en = rslab.result_en; labvs.tplv_lab_result_jp = rslab.result_jp; labvs.tplv_normal_range = rslab.normalrange; labvs.tplv_update_by = username; labvs.tplv_update_date = dateNow; } } try { dbc.SubmitChanges(); } catch (Exception ex) { Class.globalCls.MessageError("GetVitalSignCls", "GetEyeExam", ex.Message); throw ex; } // } } } }
private void BasicBS_BindingComplete(object sender, BindingCompleteEventArgs e) { BindingSource source = sender as BindingSource; if (source != null) { trn_basic_measure_hdr hdr = source.OfType <trn_basic_measure_hdr>().FirstOrDefault(); if (hdr != null) { if (hdr.tbm_color_blind == null) { radioButton1.Checked = true; } List <trn_basic_measure_dtl> listDtl = hdr.trn_basic_measure_dtls.OrderByDescending(x => x.tbd_date).ToList(); if (listDtl.Count() > 0) { var basic_dtl = listDtl[0]; if (basic_dtl.tbd_date == null) { lbDate1.Text = "1st"; } else { lbDate1.Text = basic_dtl.tbd_date.Value.ToString("dd/MM/yyyy"); } txtWeight1.Text = (basic_dtl.tbd_weight == null) ? "" : basic_dtl.tbd_weight.ToString(); txtHieght1.Text = (basic_dtl.tbd_height == null) ? "" : basic_dtl.tbd_height.ToString(); txtBMI1.Text = (basic_dtl.tbd_bmi == null) ? "" : basic_dtl.tbd_bmi.ToString(); string txtBP_dia = (basic_dtl.tbd_diastolic == null) ? "" : basic_dtl.tbd_diastolic.ToString(); string txtBP_sys = (basic_dtl.tbd_systolic == null) ? "" : basic_dtl.tbd_systolic.ToString(); txtBP1.Text = txtBP_sys + '/' + txtBP_dia; txtPulseRate1.Text = (basic_dtl.tbd_pulse == null) ? "" : basic_dtl.tbd_pulse.ToString(); txtRespirationRate1.Text = (basic_dtl.tbd_rr == null) ? "" : basic_dtl.tbd_rr.ToString(); txtTemperature1.Text = (basic_dtl.tbd_temp == null) ? "" : basic_dtl.tbd_temp.ToString(); } if (listDtl.Count() > 1) { var basic_dtl = listDtl[1]; if (basic_dtl.tbd_date == null) { lbDate2.Text = "2nd"; } else { lbDate2.Text = basic_dtl.tbd_date.Value.ToString("dd/MM/yyyy"); } txtWeight2.Text = (basic_dtl.tbd_weight == null) ? "" : basic_dtl.tbd_weight.ToString(); txtHieght2.Text = (basic_dtl.tbd_height == null) ? "" : basic_dtl.tbd_height.ToString(); txtBMI2.Text = (basic_dtl.tbd_bmi == null) ? "" : basic_dtl.tbd_bmi.ToString(); string txtBP_dia = (basic_dtl.tbd_diastolic == null) ? "" : basic_dtl.tbd_diastolic.ToString(); string txtBP_sys = (basic_dtl.tbd_systolic == null) ? "" : basic_dtl.tbd_systolic.ToString(); txtBP2.Text = txtBP_sys + '/' + txtBP_dia; txtPulseRate2.Text = (basic_dtl.tbd_pulse == null) ? "" : basic_dtl.tbd_pulse.ToString(); txtRespirationRate2.Text = (basic_dtl.tbd_rr == null) ? "" : basic_dtl.tbd_rr.ToString(); txtTemperature2.Text = (basic_dtl.tbd_temp == null) ? "" : basic_dtl.tbd_temp.ToString(); } if (listDtl.Count() > 2) { var basic_dtl = listDtl[2]; if (basic_dtl.tbd_date == null) { lbDate3.Text = "3rd"; } else { lbDate3.Text = basic_dtl.tbd_date.Value.ToString("dd/MM/yyyy"); } txtWeight3.Text = (basic_dtl.tbd_weight == null) ? "" : basic_dtl.tbd_weight.ToString(); txtHieght3.Text = (basic_dtl.tbd_height == null) ? "" : basic_dtl.tbd_height.ToString(); txtBMI3.Text = (basic_dtl.tbd_bmi == null) ? "" : basic_dtl.tbd_bmi.ToString(); string txtBP_dia = (basic_dtl.tbd_diastolic == null) ? "" : basic_dtl.tbd_diastolic.ToString(); string txtBP_sys = (basic_dtl.tbd_systolic == null) ? "" : basic_dtl.tbd_systolic.ToString(); txtBP3.Text = txtBP_sys + '/' + txtBP_dia; txtPulseRate3.Text = (basic_dtl.tbd_pulse == null) ? "" : basic_dtl.tbd_pulse.ToString(); txtRespirationRate3.Text = (basic_dtl.tbd_rr == null) ? "" : basic_dtl.tbd_rr.ToString(); txtTemperature3.Text = (basic_dtl.tbd_temp == null) ? "" : basic_dtl.tbd_temp.ToString(); } } } }