/// <summary> /// ดึงรายชื่อพนักงานตามเงื่อนไขที่กำหนด เพื่อนำไปแสดงบนหน้า ConvertByPayor /// </summary> /// <param name="doeFrom"></param> /// <param name="doeTo"></param> /// <param name="payor"></param> /// <returns></returns> public DataTable getPatient(DateTime doeFrom,DateTime doeTo,string payor,string mobileStatus) { System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en-US"); #region Variable var dt = new DataTable(); var strSQL = new StringBuilder(); var clsSQL = new clsSQLNative(); #endregion #region Procedure #region SQLQuery strSQL.Append("SELECT "); strSQL.Append("No,HN,PreName,Name,LastName,DOE,Payor,SyncWhen,'0' IsConvertPreOrder "); strSQL.Append("FROM "); strSQL.Append("Patient P "); strSQL.Append("WHERE "); strSQL.Append("(DOE BETWEEN '" + doeFrom.ToString("yyyy-MM-dd HH:mm") + "' AND '" + doeTo.ToString("yyyy-MM-dd HH:mm") + "') "); if(payor!="" && payor.ToLower() != "null") { strSQL.Append("AND Payor='"+payor+"' "); } if (mobileStatus == "NotRegister") { strSQL.Append("AND SyncStatus!='1' "); } else if (mobileStatus == "Register") { strSQL.Append("AND SyncStatus='1' "); } strSQL.Append("ORDER BY "); strSQL.Append("No;"); #endregion dt = clsSQL.Bind(strSQL.ToString(), clsSQLNative.DBType.SQLServer, "MobieConnect"); #endregion return dt; }
private void btDOESubmit_Click(object sender, EventArgs e) { System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en-US"); if (_massConvertPayorMapUID != 0) { var clsSQL = new clsSQLNative(); var strSQL = new StringBuilder(); strSQL.Append("UPDATE MassConvertPayorMap SET DOEFrom='"+dtDOEFrom.Value.ToString("yyyy-MM-dd HH:mm")+ "',DOETo='" + dtDOETo.Value.ToString("yyyy-MM-dd HH:mm") + "' WHERE StatusFlag='A' AND UID=" + _massConvertPayorMapUID); if(clsSQL.Execute(strSQL.ToString(), clsSQLNative.DBType.SQLServer, "MobieConnect")) { MessageBox.Show("บันทึกข้อมูลเสร็จสิ้น","Success",MessageBoxButtons.OK,MessageBoxIcon.Information); this.DialogResult = DialogResult.OK; this.Close(); } else { MessageBox.Show("เกิดข้อผิดพลาดขณะบันทึกข้อมูล", "Fail", MessageBoxButtons.OK, MessageBoxIcon.Error); } } else { MessageBox.Show("โปรดเลือกช่วงวันที่ออกตรวจก่อน"); } }
private void btDOESubmit_Click(object sender, EventArgs e) { System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en-US"); #region Variable var strSQL = new StringBuilder(); var clsSQL = new clsSQLNative(); var payor = ""; #endregion #region Procedure #region Validate if (dtDOEFrom.Value >= dtDOETo.Value) { MessageBox.Show("โปรดเลือกช่วงวันที่เริ่มต้นให้น้อยกว่าวันที่สิ้นสุด", "Error on DatePicker", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } if (lvPayor.SelectedItems.Count == 0) { MessageBox.Show("โปรดเลือกชื่อ Payor ด้านซ้ายก่อน", "Please choose payor first", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } else { foreach (ListViewItem item in lvPayor.SelectedItems) { payor = item.Text.Trim(); } } if (payor.Trim() == "") { MessageBox.Show("ไม่พบชื่อ Payor ที่เลือก", "Please choose payor first", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } #endregion #region SQLQuery strSQL.Append("INSERT INTO "); strSQL.Append("MassConvertPayorMap"); strSQL.Append("(Payor,DOEFrom,DOETo,CUser,MUser)"); strSQL.Append("VALUES("); strSQL.Append("'"+payor.SQLQueryFilter()+"',"); strSQL.Append("'" + dtDOEFrom.Value.ToString("yyyy-MM-dd HH:mm") + "',"); strSQL.Append("'" + dtDOETo.Value.ToString("yyyy-MM-dd HH:mm") + "',"); strSQL.Append("'" + clsTempData.Username + "',"); strSQL.Append("'" + clsTempData.Username + "'"); strSQL.Append(");"); #endregion if (clsSQL.Execute(strSQL.ToString(), clsSQLNative.DBType.SQLServer, "MobieConnect")) { setDOE(payor); MessageBox.Show("เพิ่มช่วงวันที่ออกตรวจเสร็จสมบูรณ์", "Success", MessageBoxButtons.OK, MessageBoxIcon.Information); } else { MessageBox.Show("เพิ่มช่วงวันที่ออกตรวจล้มเหลว", "Fail", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion }
private void btDelete_Click(object sender, EventArgs e) { DialogResult dr = MessageBox.Show("ยืนยันการลบข้อมูล", "Confirm", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (dr == DialogResult.Yes) { var strSQL = ""; var clsSQL = new clsSQLNative(); strSQL = "UPDATE MassConvertPayorMap SET StatusFlag='D' WHERE UID="+_massConvertPayorMapUID+";"; if (clsSQL.Execute(strSQL, clsSQLNative.DBType.SQLServer, "MobieConnect")) { MessageBox.Show("ลบข้อมูลเสร็จสิ้น", "Success", MessageBoxButtons.OK, MessageBoxIcon.Information); this.DialogResult = DialogResult.OK; this.Close(); } else { MessageBox.Show("เกิดข้อผิดพลาดขณะลบข้อมูล", "Fail", MessageBoxButtons.OK, MessageBoxIcon.Error); } } }
public DataTable getDOE(string payorName = "") { #region Variable var dt = new DataTable(); var clsSQL = new clsSQLNative(); var strSQL = new StringBuilder(); #endregion #region Procedure #region SQLQuery strSQL.Append("SELECT "); strSQL.Append("UID,Payor,DOEFrom,DOETo "); strSQL.Append("FROM "); strSQL.Append("MassConvertPayorMap "); strSQL.Append("WHERE "); strSQL.Append("StatusFlag='A' "); strSQL.Append("AND Payor='"+payorName+"' "); strSQL.Append("ORDER BY "); strSQL.Append("DOEFrom ASC;"); #endregion dt = clsSQL.Bind(strSQL.ToString(), clsSQLNative.DBType.SQLServer, "MobieConnect"); #endregion return dt; }
public DataTable getPatientAutoMassConvert(string doeFrom = "", string doeTo = "", string registerFrom = "", string registerTo = "", string payor = "") { #region Variable var dt = new DataTable(); var clsSQL = new clsSQLNative(); var strSQL = new StringBuilder(); var linkServer = System.Configuration.ConfigurationManager.AppSettings["LinkServer"]; #endregion #region Procedure #region SQLQuery strSQL.Append("SELECT "); strSQL.Append("P.rowguid PatientUID, P.HN,LTRIM(REPLACE(P.Name, P.PreName, ''))Name,P.LastName,P.Payor,P.DOE,CL.RegDate RegisterDate, P.SyncWhen,M.InsuranceCompanyUID,BC_IC.CompanyName InsuranceCompanyName, M.PayorAgreementUID,BC_PA.Name PayorAgreementName, M.PayorDetailUID,BC_PD.PayorName PayorDetailName, M.PolicyMasterUID,BC_PM.PolicyName PolicyMasterName "); strSQL.Append("FROM Patient P "); strSQL.Append("INNER JOIN tblCheckList CL ON P.rowguid = CL.PatientUID AND WFID = 1 "); strSQL.Append("INNER JOIN " + linkServer + ".Patient BC_P ON BC_P.Forename = LTRIM(REPLACE(P.Name, P.PreName, '')) COLLATE Latin1_General_CI_AS AND BC_P.Surname = P.LastName COLLATE Latin1_General_CI_AS AND BC_P.StatusFlag = 'A' "); strSQL.Append("INNER JOIN " + linkServer + ".PatientScheduleOrder BC_PS ON BC_P.UID = BC_PS.PatientUID AND BC_PS.ScheduledDttm = P.DOE AND BC_PS.StatusFlag = 'A' AND(BC_PS.PatientVisitUID = 0 OR BC_PS.PatientVisitUID IS NULL) "); strSQL.Append("LEFT JOIN MassConvertPayorMap M ON P.Payor = M.Payor AND(P.DOE BETWEEN M.DOEFrom AND M.DOETo) AND M.StatusFlag = 'A' "); strSQL.Append("LEFT JOIN " + linkServer + ".InsuranceCompany BC_IC ON M.InsuranceCompanyUID = BC_IC.UID AND BC_IC.StatusFlag = 'A' "); strSQL.Append("LEFT JOIN " + linkServer + ".PayorAgreement BC_PA ON M.PayorAgreementUID = BC_PA.UID AND BC_PA.StatusFlag = 'A' "); strSQL.Append("LEFT JOIN " + linkServer + ".PayorDetail BC_PD ON M.PayorDetailUID = BC_PD.UID AND BC_PD.StatusFlag = 'A' "); strSQL.Append("LEFT JOIN " + linkServer + ".PolicyMaster BC_PM ON M.PolicyMasterUID = BC_PM.UID AND BC_PM.StatusFlag = 'A' "); //หาเพิ่มว่าในเทเบิ้ล Log การ Convert ยังไม่ถูก Convert มาก่อน strSQL.Append("LEFT JOIN MassConvertLog ML ON P.rowguid=ML.PatientUID "); strSQL.Append("WHERE "); strSQL.Append("StatusOnMobile='R' "); strSQL.Append("AND ML.UID IS NULL ");//หาเพิ่มว่าในเทเบิ้ล Log การ Convert ยังไม่ถูก Convert มาก่อน if (payor.Trim() != "") { strSQL.Append("AND P.Payor='" + payor + "' "); } if (registerFrom.Trim() != "") { strSQL.Append("AND CL.RegDate>='"+registerFrom+"' "); } if (registerTo.Trim() != "") { strSQL.Append("AND CL.RegDate<='" + registerTo + "' "); } if (doeFrom.Trim() != "") { strSQL.Append("AND P.DOE>='" + doeFrom + "' "); } if (doeTo.Trim() != "") { strSQL.Append("AND P.DOE<='" + doeTo + "' "); } #endregion dt = clsSQL.Bind(strSQL.ToString(), clsSQLNative.DBType.SQLServer, "MobieConnect"); strSQL.Length = 0; strSQL.Capacity = 0; #endregion return dt; }
private void setPayor() { System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en-US"); #region Variable var strSQL = new StringBuilder(); var clsSQL = new clsSQLNative(); var dt = new DataTable(); #endregion #region Procedure #region SQLQuery strSQL.Append("SELECT "); strSQL.Append("DISTINCT Payor "); strSQL.Append("FROM "); strSQL.Append("Patient "); strSQL.Append("LEFT JOIN tblCheckList ON Patient.rowguid=tblCheckList.PatientUID AND tblCheckList.WFID=1 "); strSQL.Append("WHERE "); strSQL.Append("1=1 "); if (dtDOEFrom.Checked) { strSQL.Append("AND Patient.DOE>='"+dtDOEFrom.Value.ToString("yyyy-MM-dd HH:mm")+"' "); } if (dtDOETo.Checked) { strSQL.Append("AND Patient.DOE<='" + dtDOETo.Value.ToString("yyyy-MM-dd HH:mm") + "' "); } if (dtREGFrom.Checked) { strSQL.Append("AND tblCheckList.RegDate>='" + dtREGFrom.Value.ToString("yyyy-MM-dd HH:mm") + "' "); } if (dtREGTo.Checked) { strSQL.Append("AND tblCheckList.RegDate<='" + dtREGTo.Value.ToString("yyyy-MM-dd HH:mm") + "' "); } strSQL.Append("ORDER BY Payor ASC;"); #endregion if (ddlPayor.Items.Count > 0) { ddlPayor.Items.Clear(); } dt = clsSQL.Bind(strSQL.ToString(), clsSQLNative.DBType.SQLServer, "MobieConnect"); if (dt != null && dt.Rows.Count > 0) { for (int i = 0; i < dt.Rows.Count; i++) { ddlPayor.Items.Add(dt.Rows[i]["Payor"].ToString().Trim()); } } ddlPayor.Items.Insert(0,"- ทั้งหมด -"); ddlPayor.SelectedIndex = 0; #endregion }
private void ConvertPreOrder(string OrderNo) { System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en-US"); string careUID = "2283"; var outMessage = ""; var clsTempData = new clsTempData(); var clsSQL = new clsSQLNative(); //หาข้อมูลใน tb PatientScheduleOrder ของ OrderNumber ที่ถูกส่งมา DataTable Schdt = new DataTable(); Schdt = db.Select_PatientScheduleOrder(OrderNo); if (Schdt != null && Schdt.Rows.Count > 0) { if (!clsTempData.setConvertResult(out outMessage, "", "", "Select_PatientScheduleOrder", "Success", "OrderNo:"+OrderNo)) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } for (int x = 0; x < Schdt.Rows.Count; x++) { MassConvertLogUID = ""; var outMessage2 = ""; var PatientVisitUID = ""; PatientVisitUID = Schdt.Rows[x]["PatientVisitUID"].ToString(); //เช็คว่ามีการ Convert แล้วหรือยัง if (string.IsNullOrEmpty(PatientVisitUID) || PatientVisitUID == "0") { #region MassConvertLog if (MassConvertLogEnable == "true") { MassConvertLogUID = clsSQL.Return("INSERT INTO MassConvertLog(HN,StartWhen,Username,Detail,PatientUID) OUTPUT INSERTED.UID VALUES('" + MassConvertLogHN + "',GETDATE(),'"+clsTempData.Username+"','PayorByRegisterDate','"+ MassConvertLogPatientUID + "');",clsSQLNative.DBType.SQLServer, "MobieConnect"); } #endregion #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "เช็คว่ามีการ Convert แล้วหรือยัง", "No", "PatientVisitUID:" + Schdt.Rows[x]["PatientVisitUID"].ToString())) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion //Update Booking ของคนไข้คนนี้ให้ Status Flag = 'U' (แสดงว่าคนไข้ได้มาตามนัด หรือ ได้ตรวจแล้ว) if (db.Update_Booking_Status(Schdt.Rows[x]["PatientUID"].ToString(), Schdt.Rows[x]["ScheduledDttm"].ToString(),out outMessage) == false) { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "Update Booking ของคนไข้คนนี้ให้ Status Flag = 'U' (แสดงว่าคนไข้ได้มาตามนัด หรือ ได้ตรวจแล้ว)", "Fail", "")) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion MessageBox.Show("Cannot update booking status\n\n"+outMessage); } else { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "Update Booking ของคนไข้คนนี้ให้ Status Flag = 'U' (แสดงว่าคนไข้ได้มาตามนัด หรือ ได้ตรวจแล้ว)", "Success", "")) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion } //หา BillPackageItem ทั้งหมดของคนไข้คนนี้ DataTable SchDetdt = db.Select_OrderCategory_By_ScheduleOrderNumber_Filter_Package_AllItem(Schdt.Rows[x]["UID"].ToString()); //dgv.DataSource = SchDetdt; if (SchDetdt != null && SchDetdt.Rows.Count > 0) { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "หา BillPackageItem ทั้งหมดของคนไข้คนนี้", "Found", "UID:"+ Schdt.Rows[x]["UID"].ToString())) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion //หา BillableItem ของ Order ของคนไข้คนนี้ตาม BSMDD DataTable bsmdt = db.Select_BillableItem_By_ScheduleOrderNumber_GroupBy_BSMDDUID(Schdt.Rows[x]["UID"].ToString()); //new check by BSMDDUID //หา Order Category ของ Order ของคนไข้คนนี้ DataTable catdt = db.Select_OrderCategory_By_ScheduleOrderNumber_GroupBy_OrderCategoryUID(Schdt.Rows[x]["UID"].ToString()); //old if (bsmdt != null && bsmdt.Rows.Count > 0) { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "หา BillableItem ของ Order ของคนไข้คนนี้ตาม BSMDD", "Found", "UID:" + Schdt.Rows[x]["UID"].ToString())) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion //หาว่า Billable Type นี้มี Medicin , Supply อยู่ด้วยหรือไม่ //if (CheckBillableMedicineItemTypeInsidePackage(bsmdt) == true) //New concept check by BSMDDUID //{ //MessageBox.Show("This version not support Medicine Item inside Package"); //return; //} //================================================== //GENERATE PATIENT VISIT AND CREATE VISIT NO SECTION. //================================================== string visitno = db.SEQID("SEQVisitID");//StoreProcedure if (Encounter_Desc.ToUpper().StartsWith("H")) visitno = "H" + BU + "-" + DateTime.Today.ToString("yy") + "-" + visitno.PadLeft(6, '0').ToString(); else visitno = "O" + BU + "-" + DateTime.Today.ToString("yy") + "-" + visitno.PadLeft(6, '0').ToString(); //Insert ข้อมูลเข้า table PatientVisit แล้ว return ค่า PatientVisitUID ออกมา string patvisituid = db.Insert_PatientVisit(Schdt.Rows[x]["PatientUID"].ToString(), Encounter_UID , careUID, "0", Location_UID, "0", OwnerOrganization, "mass convert", Cuser , OwnerOrganization, "0"); #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "Insert ข้อมูลเข้า table PatientVisit แล้ว return ค่า PatientVisitUID ออกมา", "Success", "PatientVisitUID:" + patvisituid)) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion //Update PatientVisitUID ใน table PatientScheduleOrder ให้เป็น PatientVisitUID จริง ๆ if(db.Update_PatientScheduleOrder_By_UID(Schdt.Rows[x]["UID"].ToString(), patvisituid, Cuser)) { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "Update PatientVisitUID ใน table PatientScheduleOrder ให้เป็น PatientVisitUID จริง ๆ", "Success", "PatientVisitUID:" + patvisituid)) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion } else { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "Update PatientVisitUID ใน table PatientScheduleOrder ให้เป็น PatientVisitUID จริง ๆ", "Fail", "PatientVisitUID:" + patvisituid)) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion } countSuccess += 1; //Insert ข้อมูลเข้า table PatientVisitPayor แล้ว return ค่า PatientVisitPayorUID ออกมา //string patientVisitPayorUID = db.Insert_PatientVisitPayor(patvisituid, Schdt.Rows[x]["PatientUID"].ToString() // , ((DataRowView)cboPayorOffice.SelectedItem).Row.ItemArray[0].ToString(), ((DataRowView)cboPolicy.SelectedItem).Row.ItemArray[0].ToString(), //((DataRowView)cboPolicy.SelectedItem).Row.ItemArray[1].ToString(), "", "MassCovert", Cuser, "A", OwnerOrganization, ((DataRowView)cboPayor.SelectedItem).Row.ItemArray[0].ToString(), //((DataRowView)cboAgreement.SelectedItem).Row.ItemArray[0].ToString(), "", "", ((DataRowView)cboAgreement.SelectedItem).Row.ItemArray[2].ToString(), "0"); string patientVisitPayorUID = db.Insert_PatientVisitPayor(patvisituid, Schdt.Rows[x]["PatientUID"].ToString() , cboPayorOffice.SelectedItem.Value.ToString(), cboPolicy.SelectedItem.Value.ToString(), cboPolicy.SelectedItem.Text.ToString(), "", "MassCovert", Cuser, "A", OwnerOrganization, cboPayor.SelectedItem.Value.ToString(), cboAgreement.SelectedItem.Value.ToString(), "", "", FindAgreementPercentTag(cboAgreement.SelectedItem.Value.ToString()), "0"); #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "Insert ข้อมูลเข้า table PatientVisitPayor แล้ว return ค่า PatientVisitPayorUID ออกมา", "Success", "PatientVisitPayorUID:" + patientVisitPayorUID)) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion //Insert ข้อมูลเข้า table PatientVisiID if(db.Insert_PatientVisitID(visitno, "Y", patvisituid, Cuser, OwnerOrganization)) { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "Insert ข้อมูลเข้า table PatientVisiID", "Success", "PatientVisitUID:" + patvisituid)) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion } else { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "Insert ข้อมูลเข้า table PatientVisiID", "Fail", "PatientVisitUID:" + patvisituid)) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion } countSuccess += 1; //============================================== //INSERT PATIENT PACKAGE & PACKAGE ITEM SECTION. //============================================== //หา Package ย่อย ของ ScheduleOrderNumber นี้ string packuid = string.Empty; DataTable dtBDMSScheduleOrder = db.Select_BDMSPatientScheduleOrderDetail_By_ScheduleOrderUID(Schdt.Rows[x]["UID"].ToString()); if (dtBDMSScheduleOrder != null && dtBDMSScheduleOrder.Rows.Count > 0) { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "หา Package ย่อย ของ ScheduleOrderNumber นี้", "Found", "")) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion for (int m = 0; m < dtBDMSScheduleOrder.Rows.Count; m++) { //Insert ข้อมูลเข้า table PatientPackage ตาม ScheduleOrderNumber ที่ส่งเข้ามา แล้ว return ค่า PackageUID ออกมา packuid = db.Insert_PatientPackage_by_ScheduleOrderNumber(Schdt.Rows[x]["UID"].ToString(), OwnerOrganization, dtBDMSScheduleOrder.Rows[m]["BillPackageUID"].ToString(), patvisituid); #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "Insert ข้อมูลเข้า table PatientPackage ตาม ScheduleOrderNumber ที่ส่งเข้ามา แล้ว return ค่า PackageUID ออกมา", "Success", "PackageUID:"+ packuid)) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion //Insert ข้อมูลเข้า table PatientPackageItem if(db.Insert_PatientPackageItem_by_ScheduleOrderNumber_BillPackage("", packuid, OwnerOrganization)) { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "Insert ข้อมูลเข้า table PatientPackageItem", "Success", "PackageUID:" + packuid)) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion } else { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "Insert ข้อมูลเข้า table PatientPackageItem", "Fail", "PackageUID:" + packuid)) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion } countSuccess += 1; } } else { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "หา Package ย่อย ของ ScheduleOrderNumber นี้", "Not Found", "")) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion } //วนลูป add หัว package ทั้ง program หลัก และ Option เข้า table PatientBillableItem DataTable dtPktBdmsSch = db.Select_PatientPackage_By_VisitUID(patvisituid); if (dtPktBdmsSch != null && dtPktBdmsSch.Rows.Count > 0) { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "วนลูป add หัว package ทั้ง program หลัก และ Option เข้า table PatientBillableItem", "Found", "PatientVisitUID:" + patvisituid)) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion for (int n = 0; n < dtPktBdmsSch.Rows.Count; n++) { //INSERT PATIENT BILLABLE FOR BILL PACKAGE IDENTIFIER TYPE //Insert ข้อมูลเข้า table PatientBillableItem if(db.Insert_PatientBillableItem_For_PackageHeader(OrderNo, dtPktBdmsSch.Rows[n]["UID"].ToString(), OwnerOrganization, Cuser, patvisituid, Schdt.Rows[x]["PatientUID"].ToString(), dtPktBdmsSch.Rows[n]["BillPackageUID"].ToString())) { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "Insert ข้อมูลเข้า table PatientBillableItem", "Success", "")) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion } else { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "Insert ข้อมูลเข้า table PatientBillableItem", "Fail", "")) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion } countSuccess += 1; } } else { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "วนลูป add หัว package ทั้ง program หลัก และ Option เข้า table PatientBillableItem", "Not Found", "PatientVisitUID:" + patvisituid)) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion } //วนลูปตาม Order Category for (int i = 0; i < catdt.Rows.Count; i++) { string SEQ = db.SEQID("SEQpatientorder"); string SpecialSEQ = GenerateSequenEachType(catdt.Rows[i]["Description"].ToString().ToLower()); string OrderCateType = catdt.Rows[i]["Description"].ToString().ToLower(); string Identype = string.Empty; //ถ้าเป็น Order ทั่วไป if (SpecialSEQ == "nodata") Identype = "PATIENTORDER"; else //ถ้าเป็น Order Lab ,Xray Identype = "REQUEST"; //วนลูปทีละ BillPackageItem for (int j = 0; j < SchDetdt.Rows.Count; j++) { //เช็คว่าเป็น OrderCategory เดียวกันหรือไม่ if (catdt.Rows[i]["Value"].ToString().ToLower() == SchDetdt.Rows[j]["Value"].ToString()) //Check OrderCategory must match for assign each item to specific table { string ordcat = "NULL"; string ordtsubcat = "NULL"; string ordtoval = "0"; //Order To Location Value //เซ๊ตค่า OrderCat if (SchDetdt.Rows[j]["ORDCTUID"].ToString() != "") ordcat = SchDetdt.Rows[j]["ORDCTUID"].ToString(); //เซ็ตค่า OrderSubCat if (SchDetdt.Rows[j]["OrderSubCategoryUID"].ToString() != "") ordtsubcat = SchDetdt.Rows[j]["OrderSubCategoryUID"].ToString(); //เซ็ตค่า Order To Location DataTable ordto = db.Select_OrderToLocationUID(Location_UID, SchDetdt.Rows[j]["BillableItemUID"].ToString(), "", true); if (ordto != null && ordto.Rows.Count > 0) ordtoval = (ordto.Rows[0][0].ToString() == "" ? "0" : ordto.Rows[0][0].ToString()); string patorderuid = string.Empty; //Insert ข้อมูลเข้า table PatientOrder แล้ว return PatientOrderUID ออกมา bool flaginsertPatientOrder = db.insert_PatientOrder(SEQ, Schdt.Rows[x]["PatientUID"].ToString() , patvisituid, Cuser, "mass convert" , SchDetdt.Rows[j]["ORDCTUID"].ToString() , Identype, Location_UID, ordtoval, OwnerOrganization, out patorderuid); if (flaginsertPatientOrder) { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "Insert ข้อมูลเข้า table PatientOrder แล้ว return PatientOrderUID ออกมา", "Success", "PatientOrderUID:"+ patorderuid)) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion } else { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "Insert ข้อมูลเข้า table PatientOrder แล้ว return PatientOrderUID ออกมา", "Fail", "PatientOrderUID:" + patorderuid)) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion } countSuccess += 1; //หา PatientPackageUID ของ Order และ Visit นี้ DataTable dtPTPck = db.Select_PatientPackageUID_By_BillPackageItemUID(patvisituid, SchDetdt.Rows[j]["UID"].ToString()); //ถ้า Insert ข้อมูลเข้า table PatientOrder ได้ if (flaginsertPatientOrder) { //ถ้าเป็น Order ทั่วไปให้ set status = Raised string orddetstatus = "Raised"; //ถ้าเป็น Order Lab set status = Specimen Collected if (OrderCateType.ToString().ToLower() == "lab") orddetstatus = "Specimen Collected"; //ถ้าเป็น Order Xray set status = Executed else if (OrderCateType.ToString().ToLower() == "xray") orddetstatus = "Executed"; // กลับมาเช็คต่อ หาในส่วนของ PatientOrderDetail ต่อใน Package //INSERT DATA IN PATIENT ORDER DETAIL //IdentifyingType //------------------------------------------------------------------------------------------------- //MEDICATION , REQUESTDETAIL ,SERVICECHARGE, BILLABLEEVENT, ORDERITEM, DRUGCATALOGITEM, REQUESTITEM //------------------------------------------------------------------------------------------------- string IdentTypeforOrderDetail = ""; if (Identype == "PATIENTORDER") IdentTypeforOrderDetail = "ORDERITEM"; if (Identype == "REQUEST") IdentTypeforOrderDetail = "REQUESTDETAIL"; //Calculate NetAmout string NetAmount = "0"; try { int quantity = int.Parse(SchDetdt.Rows[j]["Quantity"].ToString()); int amount = int.Parse(SchDetdt.Rows[j]["Amount"].ToString()); NetAmount = (quantity * amount).ToString(); } catch (Exception) { NetAmount = "0"; } string patorddetails = "0"; //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ string requid = string.Empty; if (Identype == "REQUEST") { //1827 SPECIMEN COLLECTED //ถ้า Order Category เป็น Lab if (OrderCateType.ToString().ToLower() == "lab") { //เช็คว่ามีการ Generate LabNo โดยโปรแกรม Pre GenLab แล้วหรือยัง DataTable mssdt = db.Select_BDMSASTMassConvert_Between(OrderNo, OrderNo); if (mssdt != null && mssdt.Rows.Count > 0) { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "เช็คว่ามีการ Generate LabNo โดยโปรแกรม Pre GenLab แล้วหรือยัง", "Yes", "LabNo:"+ SpecialSEQ)) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion //ถ้ามีแล้วให้ดึง LabNo ที่ถูก Generate แล้วมา เพื่อที่จะได้ไม่ต้อง Genrate LabNo ใหม่ SpecialSEQ = mssdt.Rows[0]["LabNo"].ToString(); } else { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "เช็คว่ามีการ Generate LabNo โดยโปรแกรม Pre GenLab แล้วหรือยัง", "No", "LabNo:" + SpecialSEQ)) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion } //นำ Lab No ที่ Generate มาแล้วไปเช็คใน table request ว่ามีแล้วหรือยัง DataTable labnodt = db.Select_Request_By_LabNo(SpecialSEQ); if (labnodt != null && labnodt.Rows.Count > 0) //found lab no in database { //ถ้ามีแล้วให้คืนค่า RequestUID กลับมา requid = labnodt.Rows[0]["UID"].ToString(); #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "นำ Lab No ที่ Generate มาแล้วไปเช็คใน table request ว่ามีแล้วหรือยัง", "Yes", "RequestUID:" + requid)) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion } else //not found lab no in database { //ถ้ายังไม่มี ให้ทำการ Insert ข้อมูลใหม่เข้าไปใน table request แล้ว return RequestUID ออกมา requid = db.Insert_Request(patvisituid,Schdt.Rows[x]["PatientUID"].ToString(),Cuser,SpecialSEQ,"Specimen Collected" ,Location_UID, ordtoval, OwnerOrganization); #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "นำ Lab No ที่ Generate มาแล้วไปเช็คใน table request ว่ามีแล้วหรือยัง", "No", "RequestUID:" + requid+ " (ทำการ Insert ข้อมูลใหม่เข้าไปใน table request แล้ว return RequestUID ออกมา)")) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion } // Update table PatientOrder db.Update_PatientOrder_By_UID(patorderuid, requid); #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "Update table PatientOrder", "Success", "PatientOrderUID:" + patorderuid)) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion //Insert ข้อมูลเข้า table RequestDetail แล้ว return UID กลับมา string retreqdet = db.Insert_RequestDetail(SchDetdt.Rows[j]["ItemUID"].ToString(), requid, Cuser, SchDetdt.Rows[j]["Comments"].ToString(), "Specimen Collected", OwnerOrganization); //ถ้า Insert สำเร็จ if (retreqdet != "") { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "Insert ข้อมูลเข้า table RequestDetail แล้ว return UID กลับมา", "Success", "RequestDetailUID:" + retreqdet)) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion //หาข้อมูลว่ามีการ PreOrder แล้วหรือยัง DataTable pschdt = db.Select_PatientScheduleOrder(OrderNo); if (pschdt != null && pschdt.Rows.Count > 0) { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "หาข้อมูลว่ามีการ PreOrder แล้วหรือยัง", "Yes", "OrderNo:" + OrderNo)) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion //เช็ค Specimen ที่เราได้ทำตอน Generate LabNo DataTable bspctsdt = db.Select_BDMSASTMAssSpecimenTestset_BY_PatientScheduleOrderUID_And_TestSet_HN( pschdt.Rows[0]["UID"].ToString(), SchDetdt.Rows[j]["RequestCode"].ToString() , Schdt.Rows[x]["HN"].ToString()); //ถ้ามี Specimen ตอน Generate LabNo แล้ว if (bspctsdt != null && bspctsdt.Rows.Count > 0) { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "เช็ค Specimen ที่เราได้ทำตอน Generate LabNo", "Found", "")) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion //เข้าไปดึง specimen ใน table master specimen โดยดึงตาม Code ที่กำหนด DataTable spdt = db.Select_Specimen_By_Name(bspctsdt.Rows[0]["Specimen"].ToString()); if (spdt != null && spdt.Rows.Count > 0) { //Insert ข้อมูล Specimen เข้า table RequestDetailSpecimen if(db.Insert_RequestDetailSpecimen(retreqdet, "NULL", "'Manual Entry'" , spdt.Rows[0]["UID"].ToString(), spdt.Rows[0]["Name"].ToString(), "0", "0" , "3", "0", "NULL", "0", "0", Cuser, "'Mass Convert'", Cuser , OwnerOrganization, "NULL", "NULL", "Specimen Collected", "''", "NULL", "NULL")) { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "Insert ข้อมูล Specimen เข้า table RequestDetailSpecimen", "Success", "")) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion } else { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "Insert ข้อมูล Specimen เข้า table RequestDetailSpecimen", "Fail", "")) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion } } } else { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "เช็ค Specimen ที่เราได้ทำตอน Generate LabNo", "Not Found", "")) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion //RequestItemUID = SchDetdt.Rows[j]["ItemUID"].ToString() //LabCode = SchDetdt.Rows[j]["RequestCode"].ToString() //ใช้ RequestItemUID ไปหาว่าใช้ Specimen code อะไร string speceminitem = string.Empty; DataTable spedt = db.Select_RequestItemSpecimen_By_RequestItemUID(SchDetdt.Rows[j]["ItemUID"].ToString(), "Y"); if (spedt != null && spedt.Rows.Count > 0) { speceminitem = spedt.Rows[0]["SpecimenCode"].ToString(); } else { spedt = db.Select_RequestItemSpecimen_By_RequestItemUID(SchDetdt.Rows[j]["ItemUID"].ToString(), "N"); if (spedt != null && spedt.Rows.Count > 0) speceminitem = spedt.Rows[0]["SpecimenCode"].ToString(); } //เข้าไปดึง specimen ใน table master specimen โดยดึงตาม Code ที่กำหนด DataTable spMasterdt = db.Select_Specimen_By_Name(spedt.Rows[0]["SpecimenCode"].ToString()); if (spMasterdt != null && spMasterdt.Rows.Count > 0) { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "เข้าไปดึง specimen ใน table master specimen โดยดึงตาม Code ที่กำหนด", "Found", "")) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion //Insert ข้อมูล Specimen เข้า table RequestDetailSpecimen if(db.Insert_RequestDetailSpecimen(retreqdet, "NULL", "'Manual Entry'" , spMasterdt.Rows[0]["UID"].ToString(), spMasterdt.Rows[0]["Name"].ToString(), "0", "0" , "3", "0", "NULL", "0", "0", Cuser, "'Mass Convert'", Cuser , OwnerOrganization, "NULL", "NULL", "Specimen Collected", "''", "NULL", "NULL")) { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "Insert ข้อมูล Specimen เข้า table RequestDetailSpecimen", "Success", "")) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion } else { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "Insert ข้อมูล Specimen เข้า table RequestDetailSpecimen", "Fail", "")) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion } } else { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "เข้าไปดึง specimen ใน table master specimen โดยดึงตาม Code ที่กำหนด", "Not Found", "")) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion } } } else { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "หาข้อมูลว่ามีการ PreOrder แล้วหรือยัง", "No", "OrderNo:" + OrderNo)) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion } patorddetails = db.insert_PatientOrderDetail(SEQ, retreqdet , IdentTypeforOrderDetail, Cuser, SchDetdt.Rows[j]["BillableItemUID"].ToString(), "mass convert" , orddetstatus, SchDetdt.Rows[j]["Quantity"].ToString() , SchDetdt.Rows[j]["OrderSubCategoryUID"].ToString() , SchDetdt.Rows[j]["ORDCTUID"].ToString() , SchDetdt.Rows[j]["Amount"].ToString() , (NetAmount == "0" ? SchDetdt.Rows[j]["Amount"].ToString() : NetAmount) , SchDetdt.Rows[j]["Amount"].ToString() , dtPTPck.Rows[0]["PatientPackageUID"].ToString(), OwnerOrganization, patientVisitPayorUID); #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "insert_PatientOrderDetail", "Success", "PatientOrderDetailUID:"+ patorddetails)) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion //Packuid } //if (retreqdt !="") else { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "Insert ข้อมูลเข้า table RequestDetail แล้ว return UID กลับมา", "Fail", "")) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion } DataTable lsdt = db.GetRequestDetail_Status(SpecialSEQ); if (lsdt != null && lsdt.Rows.Count > 0) { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "GetRequestDetail_Status", "Found", "SpecialSEQ:" + SpecialSEQ)) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion var cstat = CheckStatus(lsdt).Split('|'); if (cstat.Count() == 2) { db.Update_Request_By_LabNumber(SpecialSEQ, cstat[0].ToString()); #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "Update_Request_By_LabNumber", "Success", "")) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion } else { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "Update_Request_By_LabNumber", "Fail", "")) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion } }// if (lsdt != null && lsdt.Rows.Count > 0) else { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "GetRequestDetail_Status", "Not Found", "SpecialSEQ:" + SpecialSEQ)) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion } }//if (OrderCateType.ToString().ToLower()=="lab") else if (OrderCateType.ToString().ToLower() == "xray") { //requid = db.Insert_Request(patvisituid // , Schdt.Rows[x]["PatientUID"].ToString(), Cuser, SpecialSEQ, "Executed" // , cbLocationOrder.SelectedValue.ToString(), ordtoval, OwnerOrganization); requid = db.Insert_Request(patvisituid , Schdt.Rows[x]["PatientUID"].ToString(), Cuser, SpecialSEQ, "Executed" , Location_UID, ordtoval, OwnerOrganization); #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "Insert_Request", "Success", "requid:"+ requid)) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion db.Update_PatientOrder_By_UID(patorderuid, requid); #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "Update_PatientOrder_By_UID", "Success", "PatientOrderUID:" + patorderuid)) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion string retreqdet = db.Insert_RequestDetail(SchDetdt.Rows[j]["itemUID"].ToString(), requid, Cuser, SchDetdt.Rows[j]["Comments"].ToString(), "Executed", OwnerOrganization); if (retreqdet != "") { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "Insert_RequestDetail", "Success", "retreqdet:" + retreqdet)) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion patorddetails = db.insert_PatientOrderDetail(SEQ, retreqdet , IdentTypeforOrderDetail, Cuser, SchDetdt.Rows[j]["BillableItemUID"].ToString(), "mass convert" , orddetstatus, SchDetdt.Rows[j]["Quantity"].ToString() , SchDetdt.Rows[j]["OrderSubCategoryUID"].ToString() , SchDetdt.Rows[j]["ORDCTUID"].ToString() , SchDetdt.Rows[j]["Amount"].ToString() , (NetAmount == "0" ? SchDetdt.Rows[j]["Amount"].ToString() : NetAmount) , SchDetdt.Rows[j]["Amount"].ToString() , dtPTPck.Rows[0]["PatientPackageUID"].ToString(), OwnerOrganization, patientVisitPayorUID); #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "insert_PatientOrderDetail", "Success", "patorddetails:" + patorddetails)) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion //packuid }//if (retreqdet != "") else { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "Insert_RequestDetail", "Fail", "")) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion } }//if (OrderCateType.ToString().ToLower()=="xray") }//if (Identype=="REQUEST") else// for Identype = "ORDER" { patorddetails = db.insert_PatientOrderDetail(SEQ, SchDetdt.Rows[j]["ItemUID"].ToString() , IdentTypeforOrderDetail, Cuser, SchDetdt.Rows[j]["BillableItemUID"].ToString(), "mass convert" , orddetstatus, SchDetdt.Rows[j]["Quantity"].ToString() , SchDetdt.Rows[j]["OrderSubCategoryUID"].ToString() , SchDetdt.Rows[j]["ORDCTUID"].ToString() , SchDetdt.Rows[j]["Amount"].ToString() , (NetAmount == "0" ? SchDetdt.Rows[j]["Amount"].ToString() : NetAmount) , SchDetdt.Rows[j]["Amount"].ToString() , dtPTPck.Rows[0]["PatientPackageUID"].ToString(), OwnerOrganization, patientVisitPayorUID); #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "insert_PatientOrderDetail", "Success", "patorddetails:" + patorddetails)) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion //packuid }//================================================================================= //********************************************************** //INSERT PATIENTBILLABLEITEM SECTION //IdentifyingUID = SchDetdt.Rows[j]["ItemUID"].ToString() //********************************************************** //IdentifyingType = REQUESTITEM , OrderType = REQUEST //IdentifyingType = ORDITEM , OrderType = PATIENTORDER if (Identype == "REQUEST")//ถ้าเป็น Order Lab , Xray { if (OrderCateType.ToString().ToLower() == "lab") { //error if(db.Insert_BillableItem(Schdt.Rows[x]["PatientUID"].ToString() , patvisituid, SchDetdt.Rows[j]["ItemUID"].ToString(), "'REQUESTITEM'", Cuser, OwnerOrganization , SchDetdt.Rows[j]["BSMDDUID"].ToString(), SchDetdt.Rows[j]["Amount"].ToString() , (NetAmount == "0" ? SchDetdt.Rows[j]["Amount"].ToString() : NetAmount), SchDetdt.Rows[j]["BillableItemUID"].ToString() , SchDetdt.Rows[j]["Quantity"].ToString(), "null", "null", SchDetdt.Rows[j]["Comments"].ToString() , "null", "null", dtPTPck.Rows[0]["PatientPackageUID"].ToString(), "'REQUEST'", requid, patorddetails, "Specimen Collected")) { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "Insert_BillableItem", "Success", "")) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion } else { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "Insert_BillableItem", "Fail", "")) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion } //packuid countSuccess += 1; } else//(OrderCateType.ToString().ToLower() == "xray") { if(db.Insert_BillableItem(Schdt.Rows[x]["PatientUID"].ToString() , patvisituid, SchDetdt.Rows[j]["ItemUID"].ToString(), "'REQUESTITEM'", Cuser, OwnerOrganization , SchDetdt.Rows[j]["BSMDDUID"].ToString(), SchDetdt.Rows[j]["Amount"].ToString() , (NetAmount == "0" ? SchDetdt.Rows[j]["Amount"].ToString() : NetAmount), SchDetdt.Rows[j]["BillableItemUID"].ToString() , SchDetdt.Rows[j]["Quantity"].ToString(), "null", "null", SchDetdt.Rows[j]["Comments"].ToString() , "null", "null", dtPTPck.Rows[0]["PatientPackageUID"].ToString(), "'REQUEST'", requid, patorddetails, "Executed")) { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "Insert_BillableItem", "Success", "")) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion } else { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "Insert_BillableItem", "Fail", "")) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion } //packuid countSuccess += 1; } } else //ถ้าเป็น Order อื่น ๆ { if(db.Insert_BillableItem(Schdt.Rows[x]["PatientUID"].ToString() , patvisituid, SchDetdt.Rows[j]["ItemUID"].ToString(), "'ORDITEM'", Cuser, OwnerOrganization , SchDetdt.Rows[j]["BSMDDUID"].ToString(), SchDetdt.Rows[j]["Amount"].ToString() , (NetAmount == "0" ? SchDetdt.Rows[j]["Amount"].ToString() : NetAmount), SchDetdt.Rows[j]["BillableItemUID"].ToString() , SchDetdt.Rows[j]["Quantity"].ToString(), "null", "null", SchDetdt.Rows[j]["Comments"].ToString() , "null", "null", dtPTPck.Rows[0]["PatientPackageUID"].ToString(), "'PATIENTORDER'", patorderuid, patorddetails, "Raised")) { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "Insert_BillableItem", "Success", "")) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion } else { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "Insert_BillableItem", "Fail", "")) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion } //packuid countSuccess += 1; //db.Insert_PatientBillableItem(SchDetdt.Rows[j]["UID"].ToString() // , packuid, patorddetails, "ORDITEM", patorderuid, "Raised", OwnerOrganization); } }//if (flaginsertPatientOrder) }//if (catdt.Rows[i]["Value"].ToString().ToLower() == SchDetdt.Rows[j][""].ToString()) }//for (int j = 0; j < SchDetdt.Rows.Count; j++) }//for (int i = 0; i < catdt.Rows.Count; i++) ลูปตาม OrderCat //=================== ส่ง EN ไป update ใน table Patient ของโปรแกรม Contact Checkup string strPayor = db.Select_Payor(patvisituid); db.Update_EN_IN_ContactCheckup(Schdt.Rows[x]["ScheduleOrderNumber"].ToString(), visitno, strPayor); #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "ส่ง EN ไป update ใน table Patient ของโปรแกรม Contact Checkup", "Success", "ScheduleOrderNumber:"+ Schdt.Rows[x]["ScheduleOrderNumber"].ToString() + " EN:"+ visitno)) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion //==================== Update ใน table tblPatientList ว่าคนไข้คนนี้ได้ทำการ Convert แล้ว Update_Status_In_TblPatientList(Schdt.Rows[x]["ScheduleOrderNumber"].ToString()); #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "Update ใน table tblPatientList ว่าคนไข้คนนี้ได้ทำการ Convert แล้ว", "Success", "ScheduleOrderNumber:" + Schdt.Rows[x]["ScheduleOrderNumber"].ToString())) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion //========= Insert table PatientServiceEvent เพื่อให้สามารถค้นหาหน้า Patient List ได้ db.Insert_PatientServiceEvent(patvisituid); #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "Insert table PatientServiceEvent เพื่อให้สามารถค้นหาหน้า Patient List ได้", "Success", "PatientVisitUID:" + patvisituid)) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion } else { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "หา BillableItem ของ Order ของคนไข้คนนี้ตาม BSMDD", "Not Found", "UID:" + Schdt.Rows[x]["UID"].ToString())) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion } } else { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "หา BillPackageItem ทั้งหมดของคนไข้คนนี้", "Not Found", "UID:" + Schdt.Rows[x]["UID"].ToString())) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion } } else { countExist += 1; #region setConvertResult if (!clsTempData.setConvertResult(out outMessage2, "", "", "เช็คว่ามีการ Convert แล้วหรือยัง", "Yes", "PatientVisitUID:" + Schdt.Rows[x]["PatientVisitUID"].ToString())) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage2, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion } #region MassConvertLog if (MassConvertLogEnable == "true") { if (MassConvertLogUID != "") { clsSQL.Execute("UPDATE MassConvertLog SET EndWhen=GETDATE() WHERE UID="+MassConvertLogUID+";", clsSQLNative.DBType.SQLServer, "MobieConnect"); } } #endregion }// }//if (Schdt != null && Schdt.Rows.Count > 0) else { if (!clsTempData.setConvertResult(out outMessage, "", "", "Select_PatientScheduleOrder", "Not found", "OrderNo:" + OrderNo)) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } countFail += 1; } }
private void UpdateCheckListStatus(string HN, string DOE) { #region Variable System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en-US"); var strSQL = new StringBuilder(); var dt = new DataTable(); var clsSQL = new clsSQLNative(); #endregion #region Procedure try { #region หาข้อมูลอ้างอิงกับเทเบิ้ล tblCheckList DOE = DateTime.Parse(DOE).ToString("yyyy-MM-dd HH:mm"); #region SQLQuery strSQL.Append("SELECT TOP 1 "); strSQL.Append("rowguid PatientUID,Episode EN,ProChkList,Name,LastName "); strSQL.Append("FROM "); strSQL.Append("Patient "); strSQL.Append("WHERE "); strSQL.Append("HN='" + HN + "' "); strSQL.Append("AND DOE='" + DOE + "';"); #endregion dt = clsSQL.Bind(strSQL.ToString(), clsSQLNative.DBType.SQLServer, "MobieConnect"); if (dt == null || dt.Rows.Count == 0) { return; } strSQL.Length = 0; strSQL.Capacity = 0; #endregion #region อัพเดทสถานะในเทเบิ้ล tblCheckList strSQL.Append("UPDATE tblCheckList SET "); strSQL.Append("ProStatus=2,ModifyDate=GETDATE() "); strSQL.Append("WHERE "); strSQL.Append("(PatientUID='" + dt.Rows[0]["PatientUID"].ToString().Trim() + "' OR EN='" + dt.Rows[0]["EN"].ToString().Trim() + "') "); strSQL.Append("AND ProStatus=1;"); #endregion clsSQL.Execute(strSQL.ToString(), clsSQLNative.DBType.SQLServer, "MobieConnect"); } catch (Exception) { } #endregion }
private void setPayor() { System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en-US"); #region Variable var strSQL = "SELECT DISTINCT Payor "+ "FROM Patient "+ "INNER JOIN tblCheckList ON Patient.rowguid=tblCheckList.PatientUID AND tblCheckList.WFID=1 "+ "WHERE tblCheckList.RegDate BETWEEN '" + dtpDateFrom.Value.ToString("yyyy-MM-dd")+" "+dtpTimeFrom.Value.ToString("HH:mm") + "' AND '" + dtpDateTo.Value.ToString("yyyy-MM-dd")+" "+dtpTimeTo.Value.ToString("HH:mm") + "' ORDER BY Payor ASC;"; var clsSQL = new clsSQLNative(); var dt = new DataTable(); #endregion #region Procedure if (ddlPayor.Items.Count > 0) { ddlPayor.Items.Clear(); } dt = clsSQL.Bind(strSQL, clsSQLNative.DBType.SQLServer, "MobieConnect"); if(dt!=null && dt.Rows.Count > 0) { for (int i = 0; i < dt.Rows.Count; i++) { ddlPayor.Items.Add(dt.Rows[i]["Payor"].ToString().Trim()); } ddlPayor.SelectedIndex = 0; } ddlPayor.Items.Insert(0, new RadListDataItem("- ทั้งหมด -", "NULL")); ddlPayor.SelectedIndex = 0; #endregion }
public DataTable Select_OrderNo(string strSQL) { DataTable dt = new DataTable(); clsSQLNative clsSQL = new clsSQLNative(); dt = clsSQL.Bind(strSQL, clsSQLNative.DBType.SQLServer, "csBConnect"); return dt; }
public bool IsConverted(string forename,string surname,string doe,string doeFrom,string doeTo) { System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en-US"); #region Variable var result = false; var clsSQL = new clsSQLNative(); var strSQL = new StringBuilder(); var dt = new DataTable(); var dtPatientScheduleOrder = new DataTable(); #endregion #region Procedure if(_dtIsConverted== null || _dtIsConverted.Rows.Count == 0) { #region SQLQuery strSQL.Append("SELECT PatientVisitUID,ScheduleOrderNumber,p.Forename,p.Surname,ps.ScheduledDttm DOE FROM [PatientScheduleOrder] ps "); strSQL.Append("INNER JOIN Patient p on p.UID = ps.PatientUID "); strSQL.Append("AND ps.ScheduledDttm BETWEEN '" + Convert.ToDateTime(doeFrom).ToString("yyyy-MM-dd HH:mm:ss") + "' AND '" + Convert.ToDateTime(doeTo).ToString("yyyy-MM-dd HH:mm:ss") + "' "); strSQL.Append("AND ps.StatusFlag = 'A';"); #endregion _dtIsConverted = new DataTable(); _dtIsConverted = clsSQL.Bind(strSQL.ToString(), clsSQLNative.DBType.SQLServer, "csBConnect"); } if(_dtIsConverted!=null && _dtIsConverted.Rows.Count > 0) { DataRow[] drs = _dtIsConverted.Select("Forename='"+forename.Trim()+"' AND Surname='"+surname.Trim()+"' AND DOE='"+DateTime.Parse(doe).ToString("yyyy-MM-dd HH:mm")+ "'"); if (drs.Length > 0) { for(int i = 0; i < drs.Length; i++) { if (string.IsNullOrEmpty(drs[i]["PatientVisitUID"].ToString()) || drs[i]["PatientVisitUID"].ToString() == "0") { //result = false; } else { result = true; } } } } /* #region PatientScheduleOrder #region SQLQuery strSQL.Append("SELECT TOP 1 ScheduleOrderNumber FROM [PatientScheduleOrder] ps "); strSQL.Append("INNER JOIN Patient p on p.UID = ps.PatientUID "); strSQL.Append("AND p.Forename = N'" + forename.Trim() + "' "); strSQL.Append("AND Surname = N'" + surname.Trim() + "' "); strSQL.Append("AND ps.ScheduledDttm BETWEEN '" + Convert.ToDateTime(doeFrom).ToString("yyyy-MM-dd HH:mm:ss") + "' AND '" + Convert.ToDateTime(doeTo).ToString("yyyy-MM-dd HH:mm:ss") + "' "); strSQL.Append("AND ps.StatusFlag = 'A';"); #endregion dt = clsSQL.Bind(strSQL.ToString(), clsSQLNative.DBType.SQLServer, "csBConnect"); if(dt!=null && dt.Rows.Count > 0) { strSQL.Length = 0;strSQL.Capacity = 0; strSQL.Append("SELECT *,(SELECT PASID FROM Patient WHERE Patient.UID = PatientScheduleOrder.PatientUID AND Patient.StatusFlag='A') HN FROM PatientScheduleOrder WHERE ScheduleOrderNumber = '" + dt.Rows[0]["ScheduleOrderNumber"].ToString() + "' AND StatusFlag='A';"); dtPatientScheduleOrder = clsSQL.Bind(strSQL.ToString(), clsSQLNative.DBType.SQLServer, "csBConnect"); if(dtPatientScheduleOrder!=null && dtPatientScheduleOrder.Rows.Count > 0) { for(int i = 0; i < dtPatientScheduleOrder.Rows.Count; i++) { if (string.IsNullOrEmpty(dtPatientScheduleOrder.Rows[i]["PatientVisitUID"].ToString()) || dtPatientScheduleOrder.Rows[i]["PatientVisitUID"].ToString() == "0") { //result = false; } else { result = true; } } } } #endregion */ #endregion return result; }
/// <summary> /// ใช้ในหน้า MapPayor /// </summary> /// <param name="searchName"></param> /// <returns></returns> public DataTable getPayor(string searchName="") { #region Variable var clsSQL = new clsSQLNative(); var strSQL = new StringBuilder(); #endregion #region Procedure if(_dtPayor==null || _dtPayor.Rows.Count==0) { _dtPayor = new DataTable(); strSQL.Append("SELECT P.Payor,COUNT(MP.UID) CountMap "); strSQL.Append("FROM Patient P WITH(NOLOCK) "); strSQL.Append("LEFT JOIN MassConvertPayorMap MP WITH(NOLOCK) ON P.Payor = MP.Payor AND MP.StatusFlag = 'A' "); strSQL.Append("WHERE P.Payor <> '' AND NOT P.Payor IS NULL "); strSQL.Append("GROUP BY P.Payor "); strSQL.Append("ORDER BY P.Payor;"); _dtPayor = clsSQL.Bind(strSQL.ToString(), clsSQLNative.DBType.SQLServer, "MobieConnect"); } dtPayorSearch = new DataTable(); dtPayorSearch = _dtPayor.Copy(); if (searchName.Trim() != "") { if (dtPayorSearch != null && dtPayorSearch.Rows.Count > 0) { DataView dv = dtPayorSearch.DefaultView; dv.RowFilter = "Payor LIKE '%" + searchName + "%'"; dtPayorSearch = dv.ToTable(); } } #endregion return dtPayorSearch; }
private void setPayorDetail(int MassConvertPayorMapUID) { #region Variable var dt = new DataTable(); var strSQL = new StringBuilder(); var clsSQL = new clsSQLNative(); #endregion #region Procedure #region Payor try { #region SQLQuery strSQL.Append("SELECT InsuranceCompanyUID,PayorAgreementUID,PayorDetailUID,PolicyMasterUID FROM MassConvertPayorMap WHERE UID="+ MassConvertPayorMapUID.ToString() + " AND StatusFlag='A';"); #endregion dt = clsSQL.Bind(strSQL.ToString(), clsSQLNative.DBType.SQLServer, "MobieConnect"); if(dt!=null && dt.Rows.Count > 0) { if (dt.Rows[0]["InsuranceCompanyUID"].ToString() != "") { ddlPayor.SelectedValue = dt.Rows[0]["InsuranceCompanyUID"].ToString(); } if (dt.Rows[0]["PayorAgreementUID"].ToString() != "") { ddlAgreement.SelectedValue = dt.Rows[0]["PayorAgreementUID"].ToString(); } if (dt.Rows[0]["PayorDetailUID"].ToString() != "") { ddlPayorOffice.SelectedValue = dt.Rows[0]["PayorDetailUID"].ToString(); } if (dt.Rows[0]["PolicyMasterUID"].ToString() != "") { ddlPolicy.SelectedValue = dt.Rows[0]["PolicyMasterUID"].ToString(); } } } catch (Exception ex) { MessageBox.Show(ex.Message, "setPayorDetail(UID)", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion #endregion }
private void btSave_Click(object sender, EventArgs e) { #region Variable var clsSQL = new clsSQLNative(); var clsTempData = new clsTempData(); var strSQL = new StringBuilder(); var MassConvertPayorMapUID = ""; var PayorUID = ""; var AgreementUID = ""; var PayorOfficeUID = ""; var PolicyUID = ""; #endregion #region Procedure foreach (ListViewItem lvi in lvDOE.SelectedItems) { MassConvertPayorMapUID = lvi.SubItems[0].Text; } #region Validation if (MassConvertPayorMapUID.Trim()=="") { MessageBox.Show("โปรดเลือกช่วงวันที่ออกตรวจก่อน", "Please choose", MessageBoxButtons.OK, MessageBoxIcon.Warning); lvDOE.Focus(); return; } if (lvPayor.SelectedItems.Count == 0) { MessageBox.Show("โปรดเลือกรายชื่อบริษัทก่อน", "Please choose", MessageBoxButtons.OK, MessageBoxIcon.Warning); lvPayor.Focus(); return; } if (lvDOE.SelectedItems.Count == 0) { MessageBox.Show("โปรดเลือกช่วงวันที่ออกตรวจก่อน", "Please choose", MessageBoxButtons.OK, MessageBoxIcon.Warning); lvDOE.Focus(); return; } PayorUID = getDropDownListValue(ddlPayor, "UID"); if (PayorUID == "0") { MessageBox.Show("โปรดระบุชื่อ Payor ก่อน", "Please choose", MessageBoxButtons.OK, MessageBoxIcon.Warning); ddlPayor.Focus(); return; } AgreementUID = getDropDownListValue(ddlAgreement, "UID"); if (AgreementUID.Trim() == "") { MessageBox.Show("โปรดระบุชื่อ Agreement ก่อน", "Please choose", MessageBoxButtons.OK, MessageBoxIcon.Warning); ddlAgreement.Focus(); return; } PayorOfficeUID = getDropDownListValue(ddlPayorOffice, "UID"); if (PayorOfficeUID.Trim() == "") { MessageBox.Show("โปรดระบุชื่อ PayorOffice ก่อน", "Please choose", MessageBoxButtons.OK, MessageBoxIcon.Warning); ddlPayorOffice.Focus(); return; } PolicyUID = getDropDownListValue(ddlPolicy, "UID"); if (PolicyUID.Trim() == "") { MessageBox.Show("โปรดระบุชื่อ Policy ก่อน", "Please choose", MessageBoxButtons.OK, MessageBoxIcon.Warning); ddlPolicy.Focus(); return; } #endregion #region SQLQuery strSQL.Append("UPDATE "); strSQL.Append("MassConvertPayorMap "); strSQL.Append("SET "); strSQL.Append("InsuranceCompanyUID=" + getDropDownListValue(ddlPayor, "UID") + ","); strSQL.Append("PayorAgreementUID=" + getDropDownListValue(ddlAgreement, "UID") + ","); strSQL.Append("PayorDetailUID=" + getDropDownListValue(ddlPayorOffice, "UID") + ","); strSQL.Append("PolicyMasterUID=" + getDropDownListValue(ddlPolicy, "UID") + ","); strSQL.Append("MWhen=GETDATE(),"); strSQL.Append("MUser='******' "); strSQL.Append("WHERE "); strSQL.Append("UID="+ MassConvertPayorMapUID + ";"); #endregion if (clsSQL.Execute(strSQL.ToString(), clsSQLNative.DBType.SQLServer, "MobieConnect")) { clsTempData.dtPayor = null; setPayor(txtPayorSearch.Text.Trim()); MessageBox.Show("บันทึกข้อมูลเสร็จสิ้น", "Success", MessageBoxButtons.OK, MessageBoxIcon.Information); } else { MessageBox.Show("เกิดข้อผิดพลาดขณะบันทึกข้อมูล"+Environment.NewLine+Environment.NewLine+strSQL.ToString(), "Fail", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion }
private void setDOE() { System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en-US"); if (_massConvertPayorMapUID != 0) { var dt = new DataTable(); var clsSQL = new clsSQLNative(); var strSQL = new StringBuilder(); strSQL.Append("SELECT Payor,DOEFrom,DOETo FROM MassConvertPayorMap WHERE StatusFlag='A' AND UID="+_massConvertPayorMapUID); dt = clsSQL.Bind(strSQL.ToString(), clsSQLNative.DBType.SQLServer, "MobieConnect"); if(dt!=null && dt.Rows.Count > 0) { btDOESubmit.Enabled = true; btDelete.Enabled = true; lblPayor.Text = dt.Rows[0]["Payor"].ToString(); dtDOEFrom.Value = DateTime.Parse(dt.Rows[0]["DOEFrom"].ToString()); dtDOETo.Value = DateTime.Parse(dt.Rows[0]["DOETo"].ToString()); } else { MessageBox.Show("ไม่พบข้อมูลช่วงวันที่ออกตรวจที่คุณเลือก"); } } else { MessageBox.Show("โปรดเลือกช่วงวันที่ออกตรวจก่อน"); } }
public DataTable Select_PatientScheduleOrder(string ScheduleOrderNumber) { DataTable dt = new DataTable(); clsSQLNative clsSQL = new clsSQLNative(); dt = clsSQL.Bind("Select *,(select pasid from Patient where Patient.UID = PatientScheduleOrder.PatientUID and Patient.StatusFlag = 'A') HN from PatientScheduleOrder where ScheduleOrderNumber = '" + ScheduleOrderNumber + "' and statusflag = 'A'", clsSQLNative.DBType.SQLServer, "csBConnect"); return dt; }
private void txtHN_TextChanged(object sender, EventArgs e) { if (txtHN.Text.Length == 12) { System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en-US"); var clsSQL = new clsSQLNative(); var strSQL = ""; db = new SQL(); DataTable dtPatient = new DataTable(); dtPatient = db.Select_Patient_By_HN(txtHN.Text.Trim()); if (dtPatient.Rows.Count > 0 && dtPatient != null) { MassConvertLogHN = dtPatient.Rows[0]["PASID"].ToString(); strSQL = "SELECT TOP 1 rowguid FROM Patient WHERE HN='" + MassConvertLogHN + "' /*AND DOE BETWEEN '" + dtpDateFrom.Value.ToString("yyyy-MM-dd HH:mm") + "' AND '" + dtpDateTo.Value.ToString("yyyy-MM-dd HH:mm") + "'*/ ORDER BY DOE DESC;"; MassConvertLogPatientUID = clsSQL.Return(strSQL, clsSQLNative.DBType.SQLServer, "MobieConnect"); txtPTName.Text = dtPatient.Rows[0]["Forename"] + " " + dtPatient.Rows[0]["Surname"] + ""; } } }
public DataTable getPayorMapSummary() { #region Variable var strSQL = new StringBuilder(); var dt = new DataTable(); var clsSQL = new clsSQLNative(); #endregion #region Procedure #region SQLQuery strSQL.Append("SELECT "); strSQL.Append("MP.Payor Company, MP.DOEFrom,MP.DOETo,IC.CompanyName Payor, PA.Name Agreement, PD.PayorName PayorOffice, PM.PolicyName Policy "); strSQL.Append("FROM "); strSQL.Append("MassConvertPayorMap MP "); strSQL.Append("LEFT JOIN " + System.Configuration.ConfigurationManager.AppSettings["LinkServer"] + ".InsuranceCompany IC ON MP.InsuranceCompanyUID = IC.UID "); strSQL.Append("LEFT JOIN " + System.Configuration.ConfigurationManager.AppSettings["LinkServer"] + ".PayorAgreement PA ON MP.PayorAgreementUID = PA.UID "); strSQL.Append("LEFT JOIN " + System.Configuration.ConfigurationManager.AppSettings["LinkServer"] + ".PayorDetail PD ON MP.PayorDetailUID = PD.UID "); strSQL.Append("LEFT JOIN " + System.Configuration.ConfigurationManager.AppSettings["LinkServer"] + ".PolicyMaster PM ON MP.PolicyMasterUID = PM.UID "); strSQL.Append("WHERE "); strSQL.Append("MP.StatusFlag = 'A' "); strSQL.Append("ORDER BY "); strSQL.Append("MP.Payor,MP.DOEFrom;"); #endregion dt = clsSQL.Bind(strSQL.ToString(), clsSQLNative.DBType.SQLServer, "MobieConnect"); #endregion return dt; }
private void setPayor() { #region Variable var strSQL = "SELECT DISTINCT Payor FROM Patient WHERE DOE BETWEEN '" + dtDOEFrom.Value.ToString("yyyy-MM-dd HH:mm") + "' AND '" + dtDOETo.Value.ToString("yyyy-MM-dd HH:mm") + "' ORDER BY Payor ASC;"; var clsSQL = new clsSQLNative(); var dt = new DataTable(); #endregion #region Procedure if (cbPayor.Items.Count > 0) cbPayor.Items.Clear(); dt = clsSQL.Bind(strSQL, clsSQLNative.DBType.SQLServer, "MobieConnect"); var item = new ComboboxItem(); item.Text = "- ทั้งหมด -"; item.Value = "ALL"; cbPayor.Items.Add(item); if(dt!=null && dt.Rows.Count > 0) { for(int i = 0; i < dt.Rows.Count; i++) { item = new ComboboxItem(); item.Text = dt.Rows[i]["Payor"].ToString().Trim(); item.Value = dt.Rows[i]["Payor"].ToString().Trim(); cbPayor.Items.Add(item); } } cbPayor.SelectedIndex = 0; #endregion }
/// <summary> /// เช็ค MassConvertLog ว่ามีการ Convert ไปหรือยัง หรือ กำลัง Convert อยู่รึปล่าว /// </summary> /// <param name="patientGUID"></param> /// <returns></returns> public bool IsConverted(string patientGUID) { #region Variable var result = false; var clsSQL = new clsSQLNative(); var strSQL = ""; #endregion #region Procedure strSQL = "SELECT COUNT(UID) FROM MassConvertLog WHERE PatientUID='"+patientGUID+"';"; if (clsSQL.Return(strSQL, clsSQLNative.DBType.SQLServer, "MobieConnect") !="0") { result = true; } #endregion return result; }
private void btFind_Click(object sender, EventArgs e) { System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en-US"); ExcData exc = new ExcData(); if (gvPatient.Rows.Count > 0) { gvPatient.DataSource = null; gvPatient.Rows.Clear(); } string DateFrom = dtpDateFrom.Value.ToString("yyyy-MM-dd") + " " + dtpTimeFrom.Value.ToString("HH:mm"); string DateTo = dtpDateTo.Value.ToString("yyyy-MM-dd") + " " + dtpTimeTo.Value.ToString("HH:mm"); string SQL = string.Empty; var strSQL = new StringBuilder(); var clsSQL = new clsSQLNative(); var clsTempData = new clsTempData(); /* SQL = "SELECT [NO] ,HN,Forename as Name , Surname as LastName , DOE , [ChildCompany],[STS],[SyncWhen],'0' IsConvertPreOrder FROM [tblPatientList] WHERE DOE BETWEEN '" + DateFrom + "' AND '" + DateTo + "' "; if (rbAll.Checked) { SQL += "AND STS in ('A','R') "; } else if (rbNotRegister.Checked) { SQL += "AND STS='A' "; } else if (rbRegister.Checked) { SQL += "AND STS='R' "; } if (ddlPayor.SelectedItem.Value.ToString() != "") { SQL += "AND Payor='"+ddlPayor.SelectedItem.Value.ToString()+"' "; } SQL += "ORDER BY SyncWhen,NO"; */ #region SQLQuery strSQL.Append("SELECT "); strSQL.Append("P.NO,"); strSQL.Append("P.HN,"); strSQL.Append("LTRIM(REPLACE(P.Name, P.PreName, ''))Name,"); strSQL.Append("P.LastName,"); strSQL.Append("P.DOE,"); strSQL.Append("PL.ChildCompany,"); strSQL.Append("P.StatusOnMobile STS,"); strSQL.Append("P.SyncWhen,'0' IsConvertPreOrder,"); strSQL.Append("P.rowguid PatientUID "); strSQL.Append("FROM "); strSQL.Append("Patient P "); strSQL.Append("LEFT JOIN tblPatientList PL ON P.rowguid = PL.PatientUID "); if (rbRegister.Checked) { strSQL.Append("INNER JOIN tblCheckList CL ON P.rowguid = CL.PatientUID AND CL.WFID=1 AND (CL.ProStatus='3' OR CL.ProStatus='2') "); } strSQL.Append("WHERE "); strSQL.Append("(P.DOE BETWEEN '"+DateFrom+"' AND '"+DateTo+"') "); strSQL.Append("AND PL.HNStatus='A' "); if (rbAll.Checked) { //SQL += "AND StatusOnMobile in ('A','R') "; } else if (rbNotRegister.Checked) { strSQL.Append("AND StatusOnMobile IS NULL "); } else if (rbRegister.Checked) { strSQL.Append("AND StatusOnMobile='R' "); } if (ddlPayor.SelectedItem.ToString() != "- ทั้งหมด -") { strSQL.Append("AND Payor='" + ddlPayor.SelectedItem.ToString() + "' "); } strSQL.Append("ORDER BY SyncWhen,NO;"); #endregion dtPatient = clsSQL.Bind(strSQL.ToString(), clsSQLNative.DBType.SQLServer, "MobieConnect"); strSQL.Length = 0;strSQL.Capacity = 0; clsTempData.dtIsConverted = null; if(dtPatient!=null && dtPatient.Rows.Count > 0) { try { ddlIsConverted.SelectedIndex = 0; } catch (Exception) { } #region Check IsConvertPreOrder for(int i = 0; i < dtPatient.Rows.Count; i++) { if (clsTempData.IsConverted( dtPatient.Rows[i]["Name"].ToString(), dtPatient.Rows[i]["LastName"].ToString(), dtPatient.Rows[i]["DOE"].ToString(), DateFrom,DateTo)) { dtPatient.Rows[i]["IsConvertPreOrder"] = "1"; } } dtPatient.AcceptChanges(); #endregion bs.DataSource = dtPatient; gvPatient.DataSource = bs; gvPatient.Columns["No"].Width = 20; gvPatient.Columns["HN"].Width = 100; gvPatient.Columns["Name"].Width = 100; gvPatient.Columns["LastName"].Width = 100; gvPatient.Columns["DOE"].Width = 130; gvPatient.Columns["NO"].Width = 40; gvPatient.Columns["ChildCompany"].Width = 170; gvPatient.Columns["STS"].Width = 40; gvPatient.Columns["SyncWhen"].Width = 130; gvPatient.Columns["IsConvertPreOrder"].IsVisible = false; gvPatient.Columns["PatientUID"].IsVisible = false; gvPatient.Refresh(); lblCountPT.Text = dtPatient.Rows.Count.ToString() + " Record."; lblIsConvertCount.Text = dtPatient.Rows.Count.ToString(); CheckAll(); } else { MessageBox.Show("ไม่พบข้อมูลตามเงื่อนไขที่ต้องการ", "No data.", MessageBoxButtons.OK, MessageBoxIcon.Information); lblCountPT.Text = "0 Record."; bs.DataSource = null; gvPatient.DataSource = bs; gvPatient.Refresh(); } }
private void Find() { //if (ddlIsConverted.InvokeRequired) //{ // ddlIsConverted.Invoke(new MethodInvoker(delegate // { // ddlIsConverted.SelectedIndex = 0; // })); //} //else //{ // ddlIsConverted.SelectedIndex = 0; //} setRadButton(btFind, false); setPictureBox(pbCountPT, true); setLabel(lblCountPT, ""); System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en-US"); ExcData exc = new ExcData(); if (gvPatient.InvokeRequired) { gvPatient.Invoke(new MethodInvoker(delegate { if (gvPatient.Rows.Count > 0) { gvPatient.DataSource = null; gvPatient.Rows.Clear(); } })); } else { if (gvPatient.Rows.Count > 0) { gvPatient.DataSource = null; gvPatient.Rows.Clear(); } } string DateFrom = dtpDateFrom.Value.ToString("yyyy-MM-dd") + " " + dtpTimeFrom.Value.ToString("HH:mm"); string DateTo = dtpDateTo.Value.ToString("yyyy-MM-dd") + " " + dtpTimeTo.Value.ToString("HH:mm"); string SQL = string.Empty; var strSQL = new StringBuilder(); var clsSQL = new clsSQLNative(); var clsTempData = new clsTempData(); var payor = ""; #region SQLQuery strSQL.Append("SELECT "); strSQL.Append("P.NO,"); strSQL.Append("P.HN,"); strSQL.Append("LTRIM(REPLACE(P.Name, P.PreName, ''))Name,"); strSQL.Append("P.LastName,"); strSQL.Append("P.DOE,"); strSQL.Append("P.Payor,"); strSQL.Append("PL.ChildCompany,"); strSQL.Append("P.StatusOnMobile STS,"); strSQL.Append("CL.RegDate RegisterDate,"); strSQL.Append("P.rowguid PatientUID,"); strSQL.Append("P.SyncWhen,'0' IsConvertPreOrder "); strSQL.Append("FROM "); strSQL.Append("Patient P "); strSQL.Append("INNER JOIN tblCheckList CL ON P.rowguid = CL.PatientUID AND WFID = 1 "); if (rbRegister.Checked) { strSQL.Append("AND (CL.ProStatus='2' OR CL.ProStatus='3') "); } strSQL.Append("LEFT JOIN tblPatientList PL ON P.rowguid = PL.PatientUID "); strSQL.Append("WHERE "); strSQL.Append("(CL.RegDate BETWEEN '" + DateFrom + "' AND '" + DateTo + "') "); if (rbAll.Checked) { //SQL += "AND StatusOnMobile in ('A','R') "; } else if (rbNotRegister.Checked) { strSQL.Append("AND StatusOnMobile IS NULL "); } else if (rbRegister.Checked) { strSQL.Append("AND StatusOnMobile='R' "); } if (ddlPayor.InvokeRequired) { ddlPayor.Invoke(new MethodInvoker(delegate { if (ddlPayor.SelectedItem.ToString() != "- ทั้งหมด -") { payor = ddlPayor.SelectedItem.ToString(); payorChoose = payor; strSQL.Append("AND Payor='" + payor + "' "); } })); } else { if (ddlPayor.SelectedItem.ToString() != "- ทั้งหมด -") { payor = ddlPayor.SelectedItem.ToString(); payorChoose = payor; strSQL.Append("AND Payor='" + payor + "' "); } } strSQL.Append("ORDER BY "); //strSQL.Append("CL.RegDate ASC;"); strSQL.Append("DOE DESC;"); #endregion dtPatient = clsSQL.Bind(strSQL.ToString(), clsSQLNative.DBType.SQLServer, "MobieConnect"); strSQL.Length = 0; strSQL.Capacity = 0; clsTempData.dtIsConverted = null; if (dtPatient != null && dtPatient.Rows.Count > 0) { #region Find Min&Max DOE var col = dtPatient.Columns["DOE"]; var minDOE = dtPatient.AsEnumerable() .Select(cols => cols.Field<DateTime>(col.ColumnName)) .OrderBy(p => p.Ticks) .FirstOrDefault(); var maxDOE = dtPatient.AsEnumerable() .Select(cols => cols.Field<DateTime>(col.ColumnName)) .OrderByDescending(p => p.Ticks) .FirstOrDefault(); #endregion try { //setComboBox(ddlIsConverted, 0); } catch (Exception) { } #region Check IsConvertPreOrder for (int i = 0; i < dtPatient.Rows.Count; i++) { if (clsTempData.IsConverted( dtPatient.Rows[i]["Name"].ToString(), dtPatient.Rows[i]["LastName"].ToString(), dtPatient.Rows[i]["DOE"].ToString(), minDOE.ToString("yyyy-MM-dd HH:mm"), maxDOE.ToString("yyyy-MM-dd HH:mm"))) { dtPatient.Rows[i]["IsConvertPreOrder"] = "1"; } } dtPatient.AcceptChanges(); #endregion #region SearchIsConvertFilter /* if (ddlIsConverted.InvokeRequired) { ddlIsConverted.Invoke(new MethodInvoker(delegate { if (ddlIsConverted.SelectedIndex > 0) { DataView dv = dtPatient.DefaultView; if (ddlIsConverted.SelectedItem.ToString() == "เฉพาะที่ยังไม่ Convert") { dv.RowFilter = "IsConvertPreOrder=0"; } else if(ddlIsConverted.SelectedItem.ToString() == "เฉพาะที่ Convert แล้ว") { dv.RowFilter = "IsConvertPreOrder=1"; } dtPatient = dv.ToTable(); } })); } */ #endregion if (gvPatient.InvokeRequired) { gvPatient.Invoke(new MethodInvoker(delegate { bs.DataSource = dtPatient; gvPatient.DataSource = bs; gvPatient.Columns["No"].Width = 20; gvPatient.Columns["HN"].Width = 100; gvPatient.Columns["Name"].Width = 100; gvPatient.Columns["LastName"].Width = 100; gvPatient.Columns["DOE"].Width = 130; gvPatient.Columns["NO"].Width = 40; gvPatient.Columns["Payor"].Width = 170; gvPatient.Columns["ChildCompany"].Width = 170; gvPatient.Columns["STS"].Width = 40; gvPatient.Columns["RegisterDate"].Width = 130; gvPatient.Columns["SyncWhen"].Width = 130; gvPatient.Columns["IsConvertPreOrder"].IsVisible = false; gvPatient.Columns["PatientUID"].IsVisible = false; gvPatient.Refresh(); })); } else { bs.DataSource = dtPatient; gvPatient.DataSource = bs; gvPatient.Columns["No"].Width = 20; gvPatient.Columns["HN"].Width = 100; gvPatient.Columns["Name"].Width = 100; gvPatient.Columns["LastName"].Width = 100; gvPatient.Columns["DOE"].Width = 130; gvPatient.Columns["NO"].Width = 40; gvPatient.Columns["Payor"].Width = 170; gvPatient.Columns["ChildCompany"].Width = 170; gvPatient.Columns["STS"].Width = 40; gvPatient.Columns["RegisterDate"].Width = 130; gvPatient.Columns["SyncWhen"].Width = 130; gvPatient.Columns["IsConvertPreOrder"].IsVisible = false; gvPatient.Columns["PatientUID"].IsVisible = false; gvPatient.Refresh(); } setLabel(lblCountPT, dtPatient.Rows.Count.ToString() + " Record."); setLabel(lblIsConvertCount, string.Format("พบข้อมูลตรงเงื่อนไข {0} รายการ", dtPatient.Rows.Count.ToString())); CheckAll(); IsConvertFilter(); } else { MessageBox.Show("ไม่พบข้อมูลตามเงื่อนไขที่ต้องการ", "No data.", MessageBoxButtons.OK, MessageBoxIcon.Information); setLabel(lblCountPT, "0 Record."); bs.DataSource = null; if (gvPatient.InvokeRequired) { gvPatient.Invoke(new MethodInvoker(delegate { gvPatient.DataSource = bs; gvPatient.Refresh(); })); } else { gvPatient.DataSource = bs; gvPatient.Refresh(); } } setPictureBox(pbCountPT, false); setRadButton(btFind, true); }
private void Start() { #region Checker if (rbSQL.Checked) { if (txtIPServer.Text.Trim().Length == 0 || txtDatabase.Text.Trim().Length == 0 || txtUsername.Text.Trim().Length == 0 || txtSQLQuery.Text.Trim().Length == 0) { MessageBox.Show("โปรดกรอกข้อมูลการเชื่อมต่อฐานข้อมูลให้ครบ", "Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } } else if (rbODBC.Checked) { if (txtDNS.Text.Trim().Length == 0 || txtUsername.Text.Trim().Length == 0 || txtSQLQuery.Text.Trim().Length == 0) { MessageBox.Show("โปรดกรอกข้อมูลการเชื่อมต่อฐานข้อมูลให้ครบ", "Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } } #endregion #region Variable var dbType = clsSQLNative.DBType.SQLServer; var clsSQL = new clsSQLNative(); var dt = new DataTable(); var cs = ""; var strSQL=""; if (rbSQL.Checked) { dbType = clsSQLNative.DBType.SQLServer; cs = System.Configuration.ConfigurationManager.AppSettings["csSQL"]; cs = string.Format(cs, txtIPServer.Text.Trim(), txtDatabase.Text.Trim(), txtUsername.Text.Trim(), txtPassword.Text.Trim()); } else if (rbODBC.Checked) { dbType = clsSQLNative.DBType.ODBC; cs = System.Configuration.ConfigurationManager.AppSettings["csODBC"]; cs = string.Format(cs, txtDNS.Text.Trim(), txtUsername.Text.Trim(), txtPassword.Text.Trim()); } #endregion #region Procedure #region LastUpdate if (lblLastUpdate.InvokeRequired) { lblLastUpdate.Invoke(new MethodInvoker(delegate { lblLastUpdate.Text = DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss"); })); } else { lblLastUpdate.Text = DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss"); } #endregion strSQL = txtSQLQuery.Text.Replace(Environment.NewLine," "); dt = clsSQL.Bind(strSQL, dbType, cs); if (dt != null && dt.Rows.Count > 0) { if (lblDataCount.InvokeRequired) { lblDataCount.Invoke(new MethodInvoker(delegate { lblDataCount.Text = dt.Rows.Count.ToString(); })); } else { lblDataCount.Text = dt.Rows.Count.ToString(); } if (gvDefault.InvokeRequired) { gvDefault.Invoke(new MethodInvoker(delegate { gvDefault.Visible = true; gvDefault.DataSource = dt; gvDefault.Columns[gvDefault.Columns.Count - 1].AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill; #region HighlightValue if (txtHighlightValue.Text.Trim().Length > 0) { for (int r = 0; r < gvDefault.Rows.Count; r++) { for (int c = 0; c < gvDefault.Columns.Count; c++) { if (gvDefault.Rows[r].Cells[c].Value.ToString().Trim() == txtHighlightValue.Text.Trim()) { gvDefault.Rows[r].Cells[c].Style.BackColor = Color.Red; } } } } #endregion gvDefault.Refresh(); gvDefault.ClearSelection(); })); } } else { if (lblDataCount.InvokeRequired) { lblDataCount.Invoke(new MethodInvoker(delegate { lblDataCount.Text = "0"; })); } else { lblDataCount.Text = "0"; } if (gvDefault.InvokeRequired) { gvDefault.Invoke(new MethodInvoker(delegate { gvDefault.Visible = false; gvDefault.DataSource = null; gvDefault.Refresh(); })); } } #endregion }