static void Main(string[] args) { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); //Application.Run(new Form1()); var isAutoMassConvert = false; if (args.Length > 0) { for(int i = 0; i < args.Length; i++) { if (args[i].ToLower().Trim() == "auto") { isAutoMassConvert = true; } else { var clsTempData = new clsTempData(); clsTempData.Username = args[i]; } } } if (isAutoMassConvert) { Application.Run(new AutoMassConvert()); } else { Application.Run(new MDIMassConvert()); } }
private void setDefault() { #region Variable var clsTempData = new clsTempData(); var dt = new DataTable(); #endregion #region Procedure dt = clsTempData.getPayorMapSummary(); if(dt!=null && dt.Rows.Count > 0) { gvDefault.DataSource = dt; } else { gvDefault.DataSource = null; } #endregion }
private void ConvertResult_Load(object sender, EventArgs e) { #region Variable var clsTempData = new clsTempData(); var dt = new DataTable(); #endregion #region Procedure dt = clsTempData.dtConvertResult; if(dt!=null && dt.Rows.Count > 0) { lblDefault.Text = "พบข้อมูลทั้งหมด " + dt.Rows.Count.ToString() + ""; gvDefault.DataSource = dt; } else { lblDefault.Text = "ไม่พบข้อมูล"; } #endregion }
private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e) { #region Variable var countLoop = 0; var SQLPT = new StringBuilder(); var clsTempData = new clsTempData(); var outMessage = ""; countSuccess = 0; countExist = 0; countFail = 0; #endregion setRadButton(btConvert, false); setRadButton(btCancel, true); setPictureBox(anWaiting, true); #region FindMaxLoop int CountCheckBox = 0; for (int r = 0; r <= gvPatient.Rows.Count - 1; r++) { //Loop ทำงานเฉพาะคนที่ Check Box if (Convert.ToBoolean(gvPatient.Rows[r].Cells["Check"].Value) == true) { CountCheckBox++; } } #endregion setProgressBar(progressBar1, CountCheckBox, 0); clsTempData.dtConvertResult = null; for (int i = 0; i <= gvPatient.Rows.Count - 1; i++) { if (backgroundWorker1.CancellationPending) { setProgressBar(progressBar1, CountCheckBox, 0); e.Cancel = true; setRadButton(btCancel, false); MessageBox.Show("ขั้นตอนถูกยกเลิกโดย User"+Environment.NewLine+ "ดำเนินการไปแล้วทั้งสิ้น "+countLoop.ToString()+" จากทั้งหมด "+CountCheckBox.ToString()+" รายการ", "Cancel by User.", MessageBoxButtons.OK, MessageBoxIcon.Stop); return; } //Loop ทำงานเฉพาะคนที่ Check Box if (Convert.ToBoolean(gvPatient.Rows[i].Cells["Check"].Value) == true) { MassConvertLogHN = gvPatient.Rows[i].Cells["HN"].Value.ToString().Trim(); MassConvertLogPatientUID = gvPatient.Rows[i].Cells["PatientUID"].Value.ToString().Trim(); var forename = gvPatient.Rows[i].Cells["Name"].Value.ToString().Trim(); var surname = gvPatient.Rows[i].Cells["LastName"].Value.ToString().Trim(); var doe = gvPatient.Rows[i].Cells["DOE"].Value; countLoop += 1; setLabel(lblStatus, string.Format("Converting order of {0} {1}", gvPatient.Rows[i].Cells["Name"].Value.ToString().Trim(), gvPatient.Rows[i].Cells["LastName"].Value.ToString().Trim())); #region setConvertResult if (!clsTempData.setConvertResult(out outMessage, gvPatient.Rows[i].Cells["HN"].Value.ToString(), gvPatient.Rows[i].Cells["Name"].Value.ToString().Trim() + " " + gvPatient.Rows[i].Cells["LastName"].Value.ToString().Trim(), "Start", "", "")) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion #region SQLQuery SQLPT.Append("SELECT * FROM [PatientScheduleOrder] ps"); SQLPT.Append(" inner join Patient p on p.UID = ps.PatientUID "); SQLPT.Append(" and p.Forename = N'" + forename + "'"); SQLPT.Append(" and Surname = N'" + surname + "'"); SQLPT.Append(" and ps.ScheduledDttm between '" + Convert.ToDateTime(doe).ToString("yyyy-MM-dd HH:mm:ss") + "' and '" + Convert.ToDateTime(doe).ToString("yyyy-MM-dd HH:mm:ss") + "'"); SQLPT.Append(" and ps.StatusFlag = 'A'"); #endregion DataTable dt = new DataTable(); dt = db.Select_OrderNo(SQLPT.ToString()); SQLPT.Length = 0;SQLPT.Capacity = 0; if (dt!=null && dt.Rows.Count > 0) { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage, "", "", "Select_OrderNo", "Success", "")) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion ConvertPreOrder(dt.Rows[0]["ScheduleOrderNumber"].ToString()); } else { #region setConvertResult if (!clsTempData.setConvertResult(out outMessage, "", "", "Select_OrderNo", "No Row", "")) { MessageBox.Show("เกิดข้อผิดพลาดขณะสร้างหน้าสรุปการ Convert" + Environment.NewLine + outMessage, "setConvertResult", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion } //System.Threading.Thread.Sleep(5000); } setProgressBar(progressBar1, CountCheckBox, countLoop); setLabel(lblProgressDetail, string.Format("{0}/{1}", countLoop, CountCheckBox)); //setLabel(lblStatus, string.Format("Converting order ","")); } setLabel(lblProgressDetail, ""); setPictureBox(anWaiting, false); setRadButton(btConvert, true); setRadButton(btCancel, false); setLabel(lblStatus, string.Format("Waiting", "")); setProgressBar(progressBar1, CountCheckBox, 0); DialogResult dr= MessageBox.Show(string.Format("Convert order successful {0} from {1}"+Environment.NewLine+"(Success : {2} Exist : {3} Fail : {4}"+Environment.NewLine+Environment.NewLine+"ต้องการดูรายละเอียดการ Convert คลิก Yes", countLoop.ToString(), CountCheckBox.ToString(), countSuccess.ToString(), countExist.ToString(), countFail.ToString()), "Success", MessageBoxButtons.YesNo, MessageBoxIcon.Information); if (dr == DialogResult.Yes) { ConvertResult cr = new ConvertResult(); cr.ShowDialog(); } }
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 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 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(); } }
public string setPatientChecklistToMobile(string PatientGUID, string Episode, string HN, out int countChecklistSuccess, out int countChecklistExist, out int countChecklistFail, out int countChecklistUpdate) { System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en-US"); #region Variable var result = "F";//F=False , S=Success , E=Exist , U=Update var dt = new DataTable(); var outSQL = ""; var clsSQLMain = new clsSQL(clsGlobal.dbTypeMain, clsGlobal.csMain); var clsSQLMobile = new clsSQL(clsGlobal.dbType, clsGlobal.cs); var clsTempData = new clsTempData(); var strSQL = ""; countChecklistSuccess = 0; countChecklistFail = 0; countChecklistExist = 0; countChecklistUpdate = 0; #endregion #region Procedure dt = clsTempData.getPatientChecklist(PatientGUID, Episode, HN); if (dt != null && dt.Rows.Count > 0) { for (int i = 0; i < dt.Rows.Count; i++) { var proStatusMobile = ""; strSQL = "SELECT IFNULL(ProStatus,0)ProStatus FROM patientchecklist WHERE RowID=" + dt.Rows[i]["RowID"].ToString() + ";"; proStatusMobile = clsSQLMobile.Return(strSQL); if (proStatusMobile == "") { #region Insert if (!clsSQLMobile.Insert( "patientchecklist", new string[,] { {"RowID",dt.Rows[i]["RowID"].ToString() }, {"PatientGUID","'"+PatientGUID+"'" }, {"HN","'"+HN+"'" }, {"Episode","'"+Episode+"'" }, {"CheckListID",dt.Rows[i]["CheckListID"].ToString() }, {"ProChkList","'"+dt.Rows[i]["ProChkList"].ToString()+"'" }, {"ProID",dt.Rows[i]["ProID"].ToString() }, {"WorkFlow","'"+dt.Rows[i]["WorkFlow"].ToString()+"'" }, {"WFID",dt.Rows[i]["WFID"].ToString() }, {"WFSequen",dt.Rows[i]["WFSequen"].ToString() }, {"ProStatus",dt.Rows[i]["ProStatus"].ToString() }, {"RegDate","NULL" }, {"ModifyDate","NULL" }, {"SyncStatus",(dt.Rows[i]["SyncWhen"]!=DBNull.Value?"'1'":"'0'") }, {"SyncWhen",(dt.Rows[i]["SyncWhen"]!=DBNull.Value?"'"+DateTime.Parse(dt.Rows[i]["SyncWhen"].ToString()).ToString("yyyy-MM-dd HH:mm")+"'":"NULL") }, {"CUser","'"+clsGlobal.WindowsLogon()+"'" }, {"MWhen","NOW()" }, {"MUser","'"+clsGlobal.WindowsLogon()+"'" }, }, new string[,] { { } }, out outSQL, true )) { result = "F"; countChecklistFail += 1; } else { result = "S"; countChecklistSuccess += 1; } #endregion } else if (int.Parse(dt.Rows[i]["ProStatus"].ToString()) > int.Parse(proStatusMobile)) { #region Update if (!clsSQLMobile.Update( "patientchecklist", new string[,] { {"ProStatus",dt.Rows[i]["ProStatus"].ToString() }, {"RegDate",(dt.Rows[i]["RegDate"]!=DBNull.Value?"'"+DateTime.Parse(dt.Rows[i]["RegDate"].ToString()).ToString("yyyy-MM-dd HH:mm")+"'":"NULL") }, {"ModifyDate",(dt.Rows[i]["ModifyDate"]!=DBNull.Value?"'"+DateTime.Parse(dt.Rows[i]["ModifyDate"].ToString()).ToString("yyyy-MM-dd HH:mm")+"'":"NULL") }, {"SyncStatus","'0'" }, {"SyncWhen","NOW()" }, {"CUser","'"+clsGlobal.WindowsLogon()+"'" }, {"MWhen","NOW()" }, {"MUser","'"+clsGlobal.WindowsLogon()+"'" }, }, new string[,] { { } }, "RowID="+ dt.Rows[i]["RowID"].ToString(), out outSQL, true )) { result = "F"; countChecklistFail += 1; } else { result = "U"; countChecklistUpdate += 1; } #endregion } else { result = "E"; countChecklistExist += 1; } } } #endregion return result; }
private void ExportLab() { try { #region ReportType var type = getDropDownListValue(ddlType, "Name"); var reportType = ""; switch (type) { case "All": reportType = "ALL"; break; case "Payor": reportType = "PAYOR"; if (getDropDownListValue(ddlCompany, "Payor") != "- ทั้งหมด -") { reportType += " - " + getDropDownListValue(ddlCompany, "Payor"); } break; case "Book": reportType = "BOOK"; if (getDropDownListValue(ddlCompany, "BookCreate") != "- ทั้งหมด -") { reportType += " - " + getDropDownListValue(ddlCompany, "BookCreate"); } break; default: break; } #endregion var clsTempData = new clsTempData(); var FileName = clsGlobal.ExecutePathBuilder() + @"Export\" + "LAB-"+ reportType + "_" + DateTime.Now.ToString("dd-MM-yyyy-HH-mm") + ".xlsx"; var dt = new DataTable(); FileInfo newFile = new FileInfo(FileName); if (newFile.Exists) { newFile.Delete(); newFile = new FileInfo(FileName); } using (ExcelPackage package = new ExcelPackage(newFile)) { var rows = 1; #region LabDetail try { dt = null; rows = 1; dt = clsTempData.getLabDetail(dtDOEFrom.Value, dtDOETo.Value); #region CreateGroupSheet var dtSheet = new DataTable(); if (type == "All") { dtSheet.Columns.Add("All"); dtSheet.Rows.Add("All"); } else if (type == "Payor") { dtSheet = dt.DefaultView.ToTable(true, "Payor"); } else if (type == "Book") { dtSheet = dt.DefaultView.ToTable(true, "BookCreate"); } #endregion if (dt != null && dt.Rows.Count > 0) { for(int ii = 0; ii < dtSheet.Rows.Count; ii++) { #region DataFilter var sheetName = ""; var dtDetail = new DataTable(); var dvDetail = new DataView(dt); if (type == "All") { dtDetail = dt; sheetName = "All"; } else if (type == "Payor") { sheetName = dtSheet.Rows[ii][0].ToString(); dvDetail.RowFilter = "Payor='" + dtSheet.Rows[ii][0].ToString() + "'"; dtDetail = dvDetail.ToTable(); } else if (type == "Book") { sheetName = dtSheet.Rows[ii][0].ToString(); dvDetail.RowFilter = "BookCreate='" + dtSheet.Rows[ii][0].ToString() + "'"; dtDetail = dvDetail.ToTable(); } #endregion ExcelWorksheet worksheetLabDetail = package.Workbook.Worksheets.Add(sheetName); worksheetLabDetail.TabColor = ColorTranslator.FromHtml("#B5E61D"); #region HeaderBuilder int c; for (c = 0; c <= dtDetail.Columns.Count - 1; c++) { worksheetLabDetail.Cells[rows, c + 1].Value = dtDetail.Columns[c].ColumnName; worksheetLabDetail.Cells[rows, c + 1].Style.Font.Bold = true; worksheetLabDetail.Cells[rows, c + 1].Style.Font.Name = "Angsana New"; worksheetLabDetail.Cells[rows, c + 1].Style.Font.Size = 14; worksheetLabDetail.Cells[rows, c + 1].Style.Fill.PatternType = OfficeOpenXml.Style.ExcelFillStyle.Solid; worksheetLabDetail.Cells[rows, c + 1].Style.Font.Color.SetColor(Color.White); worksheetLabDetail.Cells[rows, c + 1].Style.Fill.BackgroundColor.SetColor(System.Drawing.ColorTranslator.FromHtml("#31b0d3")); worksheetLabDetail.Cells[rows, c + 1].Style.VerticalAlignment = OfficeOpenXml.Style.ExcelVerticalAlignment.Center; worksheetLabDetail.Cells[rows, c + 1].Style.HorizontalAlignment = OfficeOpenXml.Style.ExcelHorizontalAlignment.Center; } #endregion #region RowsBuilder DateTime outDateTime; for (int r = 0; r < dtDetail.Rows.Count; r++) { for (c = 0; c < dtDetail.Columns.Count; c++) { if(DateTime.TryParse(dtDetail.Rows[r][c].ToString(),out outDateTime)) { worksheetLabDetail.Cells[rows + r + 1, c + 1].Style.Numberformat.Format = "dd/MM/yyyy HH:mm"; } worksheetLabDetail.Cells[rows + r + 1, c + 1].Value = dtDetail.Rows[r][c]; worksheetLabDetail.Cells[rows + r + 1, c + 1].Style.Font.Name = "Angsana New"; worksheetLabDetail.Cells[rows + r + 1, c + 1].Style.Font.Size = 14; } } #endregion #region ResizeColumn for (c = 0; c < dtDetail.Columns.Count; c++) { worksheetLabDetail.Column(c + 1).AutoFit(); } #endregion } } } catch (Exception exDetail) { MessageBox.Show(exDetail.Message, "LabDetail", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion package.Save(); DialogResult dr = MessageBox.Show("Export Seccessful!" + Environment.NewLine + Environment.NewLine + FileName + Environment.NewLine + Environment.NewLine + "ต้องการดูไฟล์คลิก Yes", "Success", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (dr == DialogResult.Yes) { try { System.Diagnostics.Process.Start(Path.GetDirectoryName(FileName)); } catch (Exception) { } } } } catch (Exception ex) { MessageBox.Show(ex.Message, "ExportLab Click", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
private void setCompany() { #region Variable var dt = new DataTable(); var clsTempData = new clsTempData(); #endregion #region Procedure dt = clsTempData.getCompanyMobile(dtDOEFrom.Value, dtDOETo.Value); if (dt != null && dt.Rows.Count > 0) { var dr = dt.NewRow(); dr[0] = "- ทั้งหมด -"; dt.Rows.InsertAt(dr, 0); ddlCompany.DataSource = dt; ddlCompany.DisplayMember = "Company"; ddlCompany.ValueMember = "Company"; } else { ddlCompany.DataSource = null; } #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 bwDefault_DoWork(object sender, DoWorkEventArgs e) { #region Control if (btStart.InvokeRequired) { btStart.Invoke(new MethodInvoker(delegate { btStart.Enabled = false; })); } else { btStart.Enabled = false; } if (btStop.InvokeRequired) { btStop.Invoke(new MethodInvoker(delegate { btStop.Enabled = true; })); } else { btStop.Enabled = true; } if (anLoading.InvokeRequired) { anLoading.Invoke(new MethodInvoker(delegate { anLoading.Visible = true; })); } #endregion System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en-US"); #region Variable var clsTempData = new clsTempData(); var clsSQLMain = new clsSQL(clsGlobal.dbTypeMain, clsGlobal.csMain); var clsSQLMobile = new clsSQL(clsGlobal.dbType, clsGlobal.cs); var dtMobile = new DataTable(); var dtMain = new DataTable(); var tblPatientListSTS = ""; var tblPatientStatusOnMobile = ""; var outSQL = ""; var outMessage = ""; var countSuccess = 0; var countFail = 0; var countDuplicate = 0; var clsInvoker = new clsInvoker(); var fileName = "SYNC_"+clsGlobal.ComputerName().Replace(".","")+"_"+DateTime.Now.ToString("yyyyMMddHHmmss")+".xml"; #endregion #region Procedure try { clsGlobal.AddHours = txtAddHours.Text.Trim(); countSuccess = 0; countFail = 0; countDuplicate = 0; dtMobile = clsTempData.getPatientChecklistMobile(); clsInvoker.setListView( lvDefault, Color.Green, 99, new string[] { DateTime.Now.ToString("dd/MM/yyyy HH:mm"), "Start", "", "เริ่มขั้นตอนการ Sync" } ); if (dtMobile != null && dtMobile.Rows.Count > 0) { clsInvoker.setListView( lvDefault, Color.Green, 99, new string[] { DateTime.Now.ToString("dd/MM/yyyy HH:mm"), "Syncing", "", "เตรียมดำเนินการสร้างไฟล์ทั้งหมด "+dtMobile.Rows.Count.ToString()+" รายการ" } ); DirectoryInfo di = new DirectoryInfo(pathSyncLocal); if (!di.Exists) { clsInvoker.setListView( lvDefault, Color.Red, 99, new string[] { DateTime.Now.ToString("dd/MM/yyyy HH:mm"), "Fail", "", "Folder's not exist. : "+di.FullName } ); di.Create(); clsInvoker.setListView( lvDefault, Color.Green, 99, new string[] { DateTime.Now.ToString("dd/MM/yyyy HH:mm"), "Success", "", "สร้างโฟล์เดอร์เรียบร้อย : "+di.FullName } ); } FileInfo fi = new FileInfo(string.Format("{0}{1}", di.FullName, fileName)); if (fi.Exists) { fi.Delete(); } if (XMLCreator(dtMobile, fi.FullName)) { clsInvoker.setListView( lvDefault, Color.Green, 99, new string[] { DateTime.Now.ToString("dd/MM/yyyy HH:mm"), "Success", "", "Export File Success "+dtMobile.Rows.Count.ToString()+" records. : "+fi.FullName } ); try { #region CopyToServer FileInfo fiServer = new FileInfo(string.Format("{0}{1}", pathSync, fileName)); if (fiServer.Exists) { clsInvoker.setListView( lvDefault, Color.Orange, 99, new string[] { DateTime.Now.ToString("dd/MM/yyyy HH:mm"), "Exist", "", "File Exist : "+fiServer.FullName } ); try { fiServer.Delete(); clsInvoker.setListView( lvDefault, Color.Green, 99, new string[] { DateTime.Now.ToString("dd/MM/yyyy HH:mm"), "Success", "", "Delete Exist" } ); } catch (Exception exDelete) { clsInvoker.setListView( lvDefault, Color.Red, 99, new string[] { DateTime.Now.ToString("dd/MM/yyyy HH:mm"), "Fail", "", "Delete Exist : "+exDelete.Message } ); } } try { clsInvoker.setListView( lvDefault, Color.Orange, 99, new string[] { DateTime.Now.ToString("dd/MM/yyyy HH:mm"), "Processing...", "", "Copy file to server : "+fiServer.FullName } ); fi.CopyTo(fiServer.FullName); clsInvoker.setListView( lvDefault, Color.Green, 99, new string[] { DateTime.Now.ToString("dd/MM/yyyy HH:mm"), "Success", "", "Copy file to server" } ); fi.Delete(); } catch (Exception exCopy) { clsInvoker.setListView( lvDefault, Color.Red, 99, new string[] { DateTime.Now.ToString("dd/MM/yyyy HH:mm"), "Fail", "", "Copy file to server : "+exCopy.Message } ); //fi.Delete(); } #endregion } catch(Exception exCopyFile) { clsInvoker.setListView( lvDefault, Color.Red, 99, new string[] { DateTime.Now.ToString("dd/MM/yyyy HH:mm"), "Fail", "", "Copy file to server : "+pathSync + fileName+" : "+exCopyFile.Message } ); } } else { clsInvoker.setListView( lvDefault, Color.Red, 99, new string[] { DateTime.Now.ToString("dd/MM/yyyy HH:mm"), "Fail", "", "Export File Fail. : "+fi.FullName } ); } return; //clsInvoker.setProgressBar(pbDefault, dtMobile.Rows.Count, 0); //for (int i = 0; i < dtMobile.Rows.Count; i++) //{ // if (bwDefault.CancellationPending) // { // clsInvoker.setListView( // lvDefault, // Color.Green, // 99, // new string[] { // DateTime.Now.ToString("dd/MM/yyyy HH:mm"), "Cancel", "", "Cancel by user." } // ); // e.Cancel = true; // syncTimerSecondCount = 0; // clsInvoker.setProgressBar(pbDefault, dtMobile.Rows.Count, 0); // return; // } // if (!clsSQLMain.IsConnected() || !clsSQLMobile.IsConnected()) // { // ListViewBuilder(lvDefault, Color.Red, 99, // new string[] { DateTime.Now.ToString("dd/MM/yyyy HH:mm"), "Fail", "", "Cannot connect database." }); // continue; // } // #region Update tblPatientListSTS & tblPatientStatusOnMobile // if (dtMobile.Rows[i]["WFID"].ToString().Trim() == "1" && float.Parse(dtMobile.Rows[i]["ProStatus"].ToString().Trim()) >= 2) // { // tblPatientListSTS = clsSQLMain.Return("SELECT STS FROM tblPatientList WHERE PatientUID='" + dtMobile.Rows[i]["PatientGUID"].ToString().Trim() + "';"); // tblPatientStatusOnMobile = clsSQLMain.Return("SELECT StatusOnMobile FROM Patient WHERE rowguid='" + dtMobile.Rows[i]["PatientGUID"].ToString().Trim() + "';"); // if (tblPatientListSTS != "R" || tblPatientStatusOnMobile != "R") // { // if (clsSQLMain.Execute("UPDATE tblPatientList SET STS='R',SyncWhen=GETDATE() WHERE PatientUID='" + dtMobile.Rows[i]["PatientGUID"].ToString().Trim() + "';UPDATE Patient SET SyncStatus='1',SyncWhen=GETDATE(),StatusOnMobile='R' WHERE rowguid='" + dtMobile.Rows[i]["PatientGUID"].ToString().Trim() + "';")) // { // countSuccess += 1; // ListViewBuilder(lvDefault, Color.Green, 99, // new string[] { DateTime.Now.ToString("dd/MM/yyyy HH:mm"), "Success", dtMobile.Rows[i]["HN"].ToString(), "Update tblPatientList.STS,Patient.StatusOnMobile Complete." }); // #region UpdateSyncStatus // if (clsSQLMobile.Update( // "patient", // new string[,] // { // {"SyncStatus","'1'" }, // {"SyncWhen","SYSDATE()" } // }, // new string[,] { { } }, // "PatientGUID='" + dtMobile.Rows[i]["PatientGUID"].ToString() + "'", // out outSQL, true // )) // { // ListViewBuilder(lvDefault, Color.Green, 99, // new string[] { DateTime.Now.ToString("dd/MM/yyyy HH:mm"), "Success", dtMobile.Rows[i]["HN"].ToString(), "Update SyncStatus Complete." }); // } // else // { // ListViewBuilder(lvDefault, Color.Red, 99, // new string[] { DateTime.Now.ToString("dd/MM/yyyy HH:mm"), "Fail", dtMobile.Rows[i]["HN"].ToString(), "Update SyncStatus Fail." }); // } // #endregion // } // else // { // countFail += 1; // ListViewBuilder(lvDefault, Color.Red, 99, // new string[] { DateTime.Now.ToString("dd/MM/yyyy HH:mm"), "Fail", dtMobile.Rows[i]["HN"].ToString(), "Update tblPatientList.STS Fail." }); // } // } // } // #endregion // dtMain = clsTempData.getPatientChecklistMain(dtMobile.Rows[i]["RowID"].ToString()); // if (dtMain != null && dtMain.Rows.Count > 0) // { // if (dtMobile.Rows[i]["ProStatus"].ToString().Trim() != dtMain.Rows[0]["ProStatus"].ToString().Trim() || // dtMobile.Rows[i]["ProStatusRemark"].ToString().Trim() != dtMain.Rows[0]["ProStatusRemark"].ToString().Trim()/* || // dtMobile.Rows[i]["RegDate"].ToString().Trim() != dtMain.Rows[0]["RegDate"].ToString().Trim() || // dtMobile.Rows[i]["ModifyDate"].ToString().Trim() != dtMain.Rows[0]["ModifyDate"].ToString().Trim()*/) // { // #region Update // if (!clsSQLMain.Update( // "tblCheckList", // new string[,] // { // {"ProStatus",dtMobile.Rows[i]["ProStatus"].ToString().Trim() }, // {"ProStatusRemark","'"+dtMobile.Rows[i]["ProStatusRemark"].ToString().SQLQueryFilter()+"'" }, // {"RegDate",(dtMobile.Rows[i]["RegDate"].ToString()!=""?"'"+DateTime.Parse(dtMobile.Rows[i]["RegDate"].ToString()).ToString("yyyy-MM-dd HH:mm:ss")+"'":"NULL") }, // {"ModifyDate",(dtMobile.Rows[i]["ModifyDate"].ToString()!=""?"'"+DateTime.Parse(dtMobile.Rows[i]["ModifyDate"].ToString()).ToString("yyyy-MM-dd HH:mm:ss")+"'":"NULL") }, // {"SyncWhen","GETDATE()"} // }, // new string[,] { { } }, // "RowID=" + dtMobile.Rows[i]["RowID"].ToString(), out outSQL, out outMessage, true)) // { // #region LogUpdate // countFail += 1; // ListViewBuilder(lvDefault, Color.Red, 99, // new string[] { DateTime.Now.ToString("dd/MM/yyyy HH:mm"), "Fail", dtMobile.Rows[i]["HN"].ToString(), dtMobile.Rows[i]["WorkFlow"].ToString() + " : " + dtMobile.Rows[i]["ProStatus"].ToString().Trim() + "->" + dtMain.Rows[0]["ProStatus"].ToString().Trim() + Environment.NewLine + outMessage }); // #endregion // } // else // { // #region LogUpdate // countSuccess += 1; // ListViewBuilder(lvDefault, Color.Green, 99, // new string[] { DateTime.Now.ToString("dd/MM/yyyy HH:mm"), "Success", dtMobile.Rows[i]["HN"].ToString(), dtMobile.Rows[i]["WorkFlow"].ToString() + " : " + dtMobile.Rows[i]["ProStatus"].ToString().Trim() + "->" + dtMain.Rows[0]["ProStatus"].ToString().Trim() }); // #endregion // } // #endregion // } // } // else // { // #region LogUpdate // //countDuplicate += 1; // //ListViewBuilder(lvDefault, Color.Blue, 99, // // new string[] { DateTime.Now.ToString("dd/MM/yyyy HH:mm"), "NoChange", dtMobile.Rows[i]["HN"].ToString(), dtMobile.Rows[i]["WorkFlow"].ToString() + " : " + dtMobile.Rows[i]["ProStatus"].ToString().Trim() + "->" + dtMain.Rows[0]["ProStatus"].ToString().Trim() }); // #endregion // } // #region ProgressBar // if (pbDefault.InvokeRequired) // { // pbDefault.Invoke(new MethodInvoker(delegate // { // pbDefault.Value += 1; // })); // } // #endregion //} //#region ProgressBar //if (pbDefault.InvokeRequired) //{ // pbDefault.Invoke(new MethodInvoker(delegate // { // pbDefault.Visible = false; // })); //} //#endregion //#region LogUpdate //ListViewBuilder(lvDefault, Color.Green, 99, // new string[] { DateTime.Now.ToString("dd/MM/yyyy HH:mm"), "Summary", "", "SyncSuccess : " + countSuccess.ToString() + " | Fail : " + countFail.ToString() + " | NoChange : " + countDuplicate.ToString() + " " }); //#endregion } else { clsInvoker.setListView( lvDefault, Color.Orange, 99, new string[] { DateTime.Now.ToString("dd/MM/yyyy HH:mm"), "Warn", "", "ไม่พบข้อมูลสำหรับการ Sync" } ); } } catch (Exception exMain) { ListViewBuilder(lvDefault, Color.Red, 99, new string[] { DateTime.Now.ToString("dd/MM/yyyy HH:mm"), "Fail", "", exMain.Message }); ((Default)this.ParentForm).SyncToMainText = "SyncToMain (Syncing Fail)"; ((Default)this.ParentForm).SyncToMainTextColor = "#ED1C24"; } #endregion }
private void setSyncToMobile() { if (clsGlobal.dtPatient != null && clsGlobal.dtPatient.Rows.Count > 0) { setChecklistToMobile(clsGlobal.dtPatient); var countSuccess = 0; var countFail = 0; var countExist = 0; var countChecklistSuccess = 0; var countChecklistFail = 0; var countChecklistExist = 0;var countChecklistUpdate = 0; var outMessage = ""; if (setPatientToMobile(clsGlobal.dtPatient, out countSuccess, out countFail, out countExist, out countChecklistSuccess, out countChecklistFail, out countChecklistExist,out countChecklistUpdate, out outMessage)) { if (lblSyncToMobile.InvokeRequired) { lblSyncToMobile.Invoke(new MethodInvoker(delegate { lblSyncToMobile.Text = string.Format( "Sync ข้อมูลสู่ระบบ Mobile เสร็จสิ้น" + Environment.NewLine + Environment.NewLine + " @Patient Success : {0} , Exist : {1} , Fail : {2}" + Environment.NewLine + " @Checklist Success: {3} , Exist : {4} , Fail : {5} , Update : {6}", countSuccess.ToString(), countExist.ToString(), countFail.ToString(), countChecklistSuccess.ToString(), countChecklistExist.ToString(), countChecklistFail.ToString(), countChecklistUpdate.ToString() ); })); } //MessageBox.Show("Sync ข้อมูลสู่ระบบ Mobile เสร็จสิ้น" + Environment.NewLine + // "@Patient Success : " + countSuccess.ToString() + // " , Exist : " + countExist.ToString() + // " , Fail : " + countFail.ToString() + Environment.NewLine + // "@Checklist Success : " + countChecklistSuccess.ToString() + // " , Exist : " + countChecklistExist.ToString() + // " , Fail : " + countChecklistFail.ToString(), // "SyncComplete", MessageBoxButtons.OK, MessageBoxIcon.Information); } else { if (lblSyncToMobile.InvokeRequired) { lblSyncToMobile.Invoke(new MethodInvoker(delegate { lblSyncToMobile.Text = string.Format( "Sync ข้อมูลสู่ระบบ Mobile ผิดพลาด" + Environment.NewLine + Environment.NewLine + " @Patient Success : {0} , Exist : {1} , Fail : {2}" + Environment.NewLine + " @Checklist Success: {3} , Exist : {4} , Fail : {5}" + Environment.NewLine + "Message Error : {6}", countSuccess.ToString(), countExist.ToString(), countFail.ToString(), countChecklistSuccess.ToString(), countChecklistExist.ToString(), countChecklistFail.ToString(), outMessage ); })); } //MessageBox.Show("Sync ข้อมูลสู่ระบบ Mobile ผิดพลาด" + Environment.NewLine + // "@Patient Success : " + countSuccess.ToString() + // " , Exist : " + countExist.ToString() + // " , Fail : " + countFail.ToString() + Environment.NewLine + // "@Checklist Success : " + countChecklistSuccess.ToString() + // " , Exist : " + countChecklistExist.ToString() + // " , Fail : " + countChecklistFail.ToString() + Environment.NewLine + Environment.NewLine + // outMessage, // "SyncComplete", MessageBoxButtons.OK, MessageBoxIcon.Error); } if (lblSyncToMobile.InvokeRequired) { lblSyncToMobile.Invoke(new MethodInvoker(delegate { var clsTempData = new clsTempData(); lblSyncToMobile.Text += clsTempData.getPatientNotHadChecklist(); })); } } else { if (lblSyncToMobile.InvokeRequired) { lblSyncToMobile.Invoke(new MethodInvoker(delegate { lblSyncToMobile.Text = "ไม่พบข้อมูลที่ต้องการ Sync"; })); } //MessageBox.Show("ไม่พบข้อมูลที่ต้องการ Sync", "SyncFail", MessageBoxButtons.OK, MessageBoxIcon.Warning); } }
private void setCompany() { #region Variable var dt = new DataTable(); var clsTempData = new clsTempData(); #endregion #region Procedure dt = clsTempData.getCompany(dtDOEFrom.Value, dtDOETo.Value); if (dt != null && dt.Rows.Count > 0) { ddlCompany.DataSource = dt; ddlCompany.DisplayMember = "Company"; ddlCompany.ValueMember = "Company"; } else { ddlCompany.DataSource = null; } #endregion }
private void Search() { #region Variable var dt = new DataTable(); var clsTempData = new clsTempData(); var countNoChecklist = 0; #endregion #region Procedure dt = clsTempData.getPatient(dtDOEFrom.Value, dtDOETo.Value, getDropDownListValue(ddlCompany, "Company")); if (dt != null && dt.Rows.Count > 0) { clsGlobal.dtPatient = dt.Copy(); if (btSync.InvokeRequired) { btSync.Invoke(new MethodInvoker(delegate { btSync.Enabled = true; })); } //lblSyncToMobile.Text = ""; #region RemoveColumn string[] columns = { "PatientGUID", "LabEpisode", "Address", "Tel", "Email", "Physician", "RegType", "Programid", "DIVI", "DEP", "SEC", "POS", "LAN", "NAT", "CNT_TRY", "LOC", "Payor", "Epi_Rowid", "ORD_STS", "STS", "DR_CDE", "NTE", "Job", "BusUnit", "BusDiv", "Line", "Shift", "Location", "GrpBook", "HISExist" }; for (int i = 0; i < columns.Length; i++) { dt.Columns.Remove(columns[i]); } dt.AcceptChanges(); #endregion if (gvSyncToMobile.InvokeRequired) { gvSyncToMobile.Invoke(new MethodInvoker(delegate { #region SortDatatable if(dt!=null && dt.Rows.Count > 0) { for(int i = 0; i < dt.Rows.Count; i++) { if (int.Parse(dt.Rows[i]["ChecklistCount"].ToString()) > 0) { dt.Rows[i]["ChecklistCount"] = 1; } else { dt.Rows[i]["ChecklistCount"] = 0; } } dt.AcceptChanges(); } var dv = dt.DefaultView; dv.Sort = "ChecklistCount,No"; #endregion gvSyncToMobile.DataSource = dv.ToTable(); for(int i = 0; i < gvSyncToMobile.Rows.Count; i++) { var checklistCount = (gvSyncToMobile.Rows[i].Cells["ChecklistCount"].Value!=null?gvSyncToMobile.Rows[i].Cells["ChecklistCount"].Value.ToString():"0"); if (checklistCount == "0") { gvSyncToMobile.Rows[i].DefaultCellStyle.BackColor = ColorTranslator.FromHtml("#FF6262"); countNoChecklist += 1; } } gvSyncToMobile.Columns["ChecklistCount"].Visible = false; })); } if (lblSyncToMobile.InvokeRequired) { lblSyncToMobile.Invoke(new MethodInvoker(delegate { lblSyncToMobile.Text = string.Format("พบข้อมูลทั้งหมด {0} รายการ | ไม่มี Checklist {1} รายการ", dt.Rows.Count.ToString(), countNoChecklist.ToString()); })); } } else { clsGlobal.dtPatient = null; if (btSync.InvokeRequired) { btSync.Invoke(new MethodInvoker(delegate { btSync.Enabled = false; })); } if (lblSyncToMobile.InvokeRequired) { lblSyncToMobile.Invoke(new MethodInvoker(delegate { lblSyncToMobile.Text = "- ไม่พบข้อมูลที่ต้องการ -"; })); } } #endregion }
private void Search() { #region Variable var dt = new DataTable(); var clsTempData = new clsTempData(); var SyncStatus = ""; #endregion #region Procedure var type = getDropDownListValue(ddlType, "Name"); switch (type) { case "All": dt = clsTempData.getPatientMobileByAll(dtDOEFrom.Value, dtDOETo.Value,(cbHeavyMetal.Checked? false : true)); break; case "Payor": dt = clsTempData.getPatientMobile(dtDOEFrom.Value, dtDOETo.Value, (getDropDownListValue(ddlCompany, "Company")!="- ทั้งหมด -"? getDropDownListValue(ddlCompany, "Company"):""), (cbHeavyMetal.Checked ? false : true)); break; case "Book": dt = clsTempData.getPatientMobileByBookCreate(dtDOEFrom.Value, dtDOETo.Value, (getDropDownListValue(ddlCompany, "BookCreate")!="- ทั้งหมด -"? getDropDownListValue(ddlCompany, "BookCreate"):""), (cbHeavyMetal.Checked ? false : true)); break; default: break; } if (dt != null && dt.Rows.Count > 0) { #region DebugZone //var dv = new DataView(dt); //dv.RowFilter = "hn='15-12-010101' OR hn='15-07-015322'"; //dt = dv.ToTable(); #endregion dt.Columns.Remove("PatientGUID"); if (btExport.InvokeRequired) { btExport.Invoke(new MethodInvoker(delegate { btExport.Enabled = true; })); } if (lblDefault.InvokeRequired) { lblDefault.Invoke(new MethodInvoker(delegate { lblDefault.Text = ""; })); } #region AddColumns dt.Columns.Add("Summary", typeof(string)); dt.Columns.Add("Remark", typeof(string)); dt.Columns.Add("RemarkCancel", typeof(string)); #endregion #region FillData for (int i = 0; i < dt.Rows.Count; i++) { if (dt.Rows[i]["CountChecklistAll"].ToString() != "0" && dt.Rows[i]["CountChecklistAll"].ToString() == dt.Rows[i]["CountChecklistComplete"].ToString() && dt.Rows[i]["CountChecklistAll"].ToString() != dt.Rows[i]["CountChecklistCancel"].ToString()) { dt.Rows[i]["Summary"] = "ตรวจแล้ว"; dt.Rows[i]["Remark"] = "ตรวจครบทุกรายการ"; } else if (dt.Rows[i]["CountChecklistAll"].ToString() == dt.Rows[i]["CountChecklistCancel"].ToString()) { dt.Rows[i]["Summary"] = "ยกเลิกตรวจ"; dt.Rows[i]["Remark"] = ""; } else if (dt.Rows[i]["CountChecklistComplete"].ToString() != "0" && dt.Rows[i]["CountChecklistAll"].ToString() != dt.Rows[i]["CountChecklistComplete"].ToString()) { if(dt.Rows[i]["RegisStatus"].ToString()!="0") { dt.Rows[i]["Summary"] = "ตรวจแล้ว-มีค้างตรวจ"; dt.Rows[i]["Remark"] = dt.Rows[i]["ProgramPending"]; } else if (dt.Rows[i]["DateRegis"] != DBNull.Value) { dt.Rows[i]["Summary"] = "ค้างคืนเอกสาร"; dt.Rows[i]["Remark"] = ""; } else { dt.Rows[i]["Summary"] = "ตรวจแล้ว-มีค้างตรวจ"; dt.Rows[i]["Remark"] = dt.Rows[i]["ProgramPending"]; } } else if (dt.Rows[i]["CountChecklistComplete"].ToString() == "0" && dt.Rows[i]["CountChecklistAll"].ToString() != "0") { //มี DateRegis และ WFID1 = 2 ค้างคืนเอกสาร if (dt.Rows[i]["DateRegis"] != DBNull.Value && dt.Rows[i]["RegisProStatus2"].ToString()!="0") { dt.Rows[i]["Summary"] = "ค้างคืนเอกสาร"; dt.Rows[i]["Remark"] = ""; } else { dt.Rows[i]["Summary"] = "ยังไม่ได้เข้ารับการตรวจ"; dt.Rows[i]["Remark"] = ""; } } else { dt.Rows[i]["Summary"] = "ยังไม่ได้เข้ารับการตรวจ"; dt.Rows[i]["Remark"] = ""; } if (dt.Rows[i]["ProgramCancel"].ToString() != "") { dt.Rows[i]["RemarkCancel"] = dt.Rows[i]["ProgramCancel"].ToString(); } } dt.AcceptChanges(); #endregion #region RemoveColumn string[] columns = { "RegisProStatus2", "CountChecklistAll", "CountChecklistComplete", "CountChecklistCancel", "ProgramPending", "ProgramCancel", "RegisStatus" }; for (int i = 0; i < columns.Length; i++) { dt.Columns.Remove(columns[i]); } dt.AcceptChanges(); #endregion clsGlobal.dtPatient = dt.Copy(); clsGlobal.dtPatient.Columns.Remove("SyncWhen"); clsGlobal.dtPatient.Columns.Remove("SyncStatus"); if (gvDefault.InvokeRequired) { gvDefault.Invoke(new MethodInvoker(delegate { gvDefault.DataSource = dt; #region HighlightSync for (int i = 0; i < gvDefault.Rows.Count; i++) { if(gvDefault.Rows[i].Cells["SyncStatus"].Value!= null) { SyncStatus = gvDefault.Rows[i].Cells["SyncStatus"].Value.ToString().Trim(); } else { SyncStatus = "0"; } if (SyncStatus == "1") { gvDefault.Rows[i].DefaultCellStyle.BackColor = ColorTranslator.FromHtml("#FFDD68"); } } #endregion })); } if (lblDefault.InvokeRequired) { lblDefault.Invoke(new MethodInvoker(delegate { lblDefault.Text = string.Format("พบข้อมูลทั้งหมด {0} รายการ", dt.Rows.Count.ToString()); })); } } else { clsGlobal.dtPatient = null; if (gvDefault.InvokeRequired) { gvDefault.Invoke(new MethodInvoker(delegate { gvDefault.DataSource = null; })); } if (btExport.InvokeRequired) { btExport.Invoke(new MethodInvoker(delegate { btExport.Enabled = false; })); } if (lblDefault.InvokeRequired) { lblDefault.Invoke(new MethodInvoker(delegate { lblDefault.Text = "- ไม่พบข้อมูลที่ต้องการ -"; })); } } #endregion }
private void Export() { try { if (pbDefault.InvokeRequired) { pbDefault.Invoke(new MethodInvoker(delegate { pbDefault.Maximum = 6; pbDefault.Value = 1; })); } var clsTempData = new clsTempData(); var reportType = ""; #region ReportType var type = getDropDownListValue(ddlType, "Name"); switch (type) { case "All": reportType = "ALL"; break; case "Payor": reportType = "PAYOR"; if(getDropDownListValue(ddlCompany, "Payor")!="- ทั้งหมด -") { reportType += " - " + getDropDownListValue(ddlCompany, "Payor"); } break; case "Book": reportType = "BOOK"; if (getDropDownListValue(ddlCompany, "BookCreate") != "- ทั้งหมด -") { reportType += " - " + getDropDownListValue(ddlCompany, "BookCreate"); } break; default: break; } #endregion var FileName = clsGlobal.ExecutePathBuilder() + @"Export\" + reportType + "_" + DateTime.Now.ToString("dd-MM-yyyy-HH-mm") + ".xlsx"; var dt = new DataTable(); dt = clsGlobal.dtPatient; FileInfo newFile = new FileInfo(FileName); if (newFile.Exists) { newFile.Delete(); newFile = new FileInfo(FileName); } using (ExcelPackage package = new ExcelPackage(newFile)) { var rows = 1; #region Summary var columnSummaryComplete = 0; var columnSummaryInComplete = 0; List<int> summaryCompletes = new List<int>(); List<int> summaryInCompletes = new List<int>(); #region FindSummaryColumn columnSummaryComplete = clsTempData.getMaxDateRegis(dtDOEFrom.Value, dtDOETo.Value); //if (columnSummaryComplete > 0) //{ columnSummaryComplete += 3; columnSummaryInComplete = columnSummaryComplete + 1; //} #endregion var dtSummary = clsTempData.getPatientMobileByAll(dtDOEFrom.Value, dtDOETo.Value); if(dtSummary!=null && dtSummary.Rows.Count > 0) { #region Replace DateTime with Date for(int i = 0; i < dtSummary.Rows.Count; i++) { if(dtSummary.Rows[i]["DateRegis"]!=DBNull.Value && dtSummary.Rows[i]["DateRegis"].ToString() != "") { dtSummary.Rows[i]["DateRegis"] = DateTime.Parse(dtSummary.Rows[i]["DateRegis"].ToString()).ToString("yyyy-MM-dd"); } } dtSummary.AcceptChanges(); #endregion ExcelWorksheet worksheetSummary = package.Workbook.Worksheets.Add("Summary"); #region Header var headers = new string[] { "Payor", "จำนวนทั้งหมด"}; var iHeader = 0; for (iHeader = 0; iHeader < headers.Length; iHeader++) { worksheetSummary.Cells[rows, iHeader + 1].Value = headers[iHeader]; worksheetSummary.Cells[rows, iHeader + 1].Style.Font.Bold = true; worksheetSummary.Cells[rows, iHeader + 1].Style.Font.Name = "Angsana New"; worksheetSummary.Cells[rows, iHeader + 1].Style.Font.Size = 14; worksheetSummary.Cells[rows, iHeader + 1].Style.Fill.PatternType = OfficeOpenXml.Style.ExcelFillStyle.Solid; worksheetSummary.Cells[rows, iHeader + 1].Style.Font.Color.SetColor(Color.White); worksheetSummary.Cells[rows, iHeader + 1].Style.Fill.BackgroundColor.SetColor(System.Drawing.ColorTranslator.FromHtml("#31b0d3")); worksheetSummary.Cells[rows, iHeader + 1].Style.VerticalAlignment = OfficeOpenXml.Style.ExcelVerticalAlignment.Center; worksheetSummary.Cells[rows, iHeader + 1].Style.HorizontalAlignment = OfficeOpenXml.Style.ExcelHorizontalAlignment.Center; } #region HeaderSummary worksheetSummary.Cells[rows, columnSummaryComplete].Value = "รวมตรวจเสร็จ"; worksheetSummary.Cells[rows, columnSummaryComplete].Style.Font.Bold = true; worksheetSummary.Cells[rows, columnSummaryComplete].Style.Font.Name = "Angsana New"; worksheetSummary.Cells[rows, columnSummaryComplete].Style.Font.Size = 14; worksheetSummary.Cells[rows, columnSummaryComplete].Style.Fill.PatternType = OfficeOpenXml.Style.ExcelFillStyle.Solid; worksheetSummary.Cells[rows, columnSummaryComplete].Style.Font.Color.SetColor(Color.White); worksheetSummary.Cells[rows, columnSummaryComplete].Style.Fill.BackgroundColor.SetColor(System.Drawing.ColorTranslator.FromHtml("#31b0d3")); worksheetSummary.Cells[rows, columnSummaryComplete].Style.VerticalAlignment = OfficeOpenXml.Style.ExcelVerticalAlignment.Center; worksheetSummary.Cells[rows, columnSummaryComplete].Style.HorizontalAlignment = OfficeOpenXml.Style.ExcelHorizontalAlignment.Center; worksheetSummary.Cells[rows, columnSummaryInComplete].Value = "รวมค้างตรวจ"; worksheetSummary.Cells[rows, columnSummaryInComplete].Style.Font.Bold = true; worksheetSummary.Cells[rows, columnSummaryInComplete].Style.Font.Name = "Angsana New"; worksheetSummary.Cells[rows, columnSummaryInComplete].Style.Font.Size = 14; worksheetSummary.Cells[rows, columnSummaryInComplete].Style.Fill.PatternType = OfficeOpenXml.Style.ExcelFillStyle.Solid; worksheetSummary.Cells[rows, columnSummaryInComplete].Style.Font.Color.SetColor(Color.White); worksheetSummary.Cells[rows, columnSummaryInComplete].Style.Fill.BackgroundColor.SetColor(System.Drawing.ColorTranslator.FromHtml("#31b0d3")); worksheetSummary.Cells[rows, columnSummaryInComplete].Style.VerticalAlignment = OfficeOpenXml.Style.ExcelVerticalAlignment.Center; worksheetSummary.Cells[rows, columnSummaryInComplete].Style.HorizontalAlignment = OfficeOpenXml.Style.ExcelHorizontalAlignment.Center; #endregion #endregion var dtSummaryPayor = dtSummary.DefaultView.ToTable(true, "Payor"); #region LoopByPayor for (int i = 0; i < dtSummaryPayor.Rows.Count; i++) { var dvSummaryPayorDetail = new DataView(dtSummary); var dtSummaryPayorDetail = new DataTable(); dvSummaryPayorDetail.RowFilter = "Payor='"+dtSummaryPayor.Rows[i][0].ToString()+"'"; dvSummaryPayorDetail.Sort = "DateRegis"; dtSummaryPayorDetail = dvSummaryPayorDetail.ToTable(); if(dtSummaryPayorDetail != null && dtSummaryPayorDetail.Rows.Count > 0) { rows += 1; #region Payor worksheetSummary.Cells[rows, 1].Value = dtSummaryPayor.Rows[i]["Payor"].ToString(); worksheetSummary.Cells[rows, 1].Style.Font.Name = "Angsana New"; worksheetSummary.Cells[rows, 1].Style.Font.Size = 14; #endregion #region CountAll worksheetSummary.Cells[rows, 2].Value = dtSummaryPayorDetail.Rows.Count; worksheetSummary.Cells[rows, 2].Style.Font.Name = "Angsana New"; worksheetSummary.Cells[rows, 2].Style.Font.Size = 14; worksheetSummary.Cells[rows, 2].Style.HorizontalAlignment = OfficeOpenXml.Style.ExcelHorizontalAlignment.Center; #endregion #region DistinctDateRegis var dtSummaryDateRegis = dtSummaryPayorDetail.DefaultView.ToTable(true, "DateRegis"); var summaryComplete = 0; if(dtSummaryDateRegis != null && dtSummaryDateRegis.Rows.Count > 0) { #region LoopByRegisDateDetail var columnTemp = 3;//Start 3 for(int r = 0; r < dtSummaryDateRegis.Rows.Count; r++) { if (dtSummaryDateRegis.Rows[r]["DateRegis"].ToString() != "") { var dvSummaryDateRegisDetail = new DataView(dtSummaryPayorDetail); var dtSummaryDateRegisDetail = new DataTable(); var sumByDay = 0; dvSummaryDateRegisDetail.RowFilter = "DateRegis='"+ DateTime.Parse(dtSummaryDateRegis.Rows[r]["DateRegis"].ToString()).ToString("yyyy-MM-dd HH:mm") + "'"; dtSummaryDateRegisDetail = dvSummaryDateRegisDetail.ToTable(); #region CompleteSumByDay for(int s = 0; s < dtSummaryDateRegisDetail.Rows.Count; s++) { if (int.Parse(dtSummaryDateRegisDetail.Rows[s]["CountChecklistAll"].ToString()) == int.Parse(dtSummaryDateRegisDetail.Rows[s]["CountChecklistComplete"].ToString())) { sumByDay += 1; } } #endregion #region SetHeader worksheetSummary.Cells[1, columnTemp].Value = "Day "+(r).ToString(); worksheetSummary.Cells[1, columnTemp].Style.Font.Bold = true; worksheetSummary.Cells[1, columnTemp].Style.Font.Name = "Angsana New"; worksheetSummary.Cells[1, columnTemp].Style.Font.Size = 14; worksheetSummary.Cells[1, columnTemp].Style.Fill.PatternType = OfficeOpenXml.Style.ExcelFillStyle.Solid; worksheetSummary.Cells[1, columnTemp].Style.Font.Color.SetColor(Color.White); worksheetSummary.Cells[1, columnTemp].Style.Fill.BackgroundColor.SetColor(System.Drawing.ColorTranslator.FromHtml("#66C2DC")); worksheetSummary.Cells[1, columnTemp].Style.VerticalAlignment = OfficeOpenXml.Style.ExcelVerticalAlignment.Center; worksheetSummary.Cells[1, columnTemp].Style.HorizontalAlignment = OfficeOpenXml.Style.ExcelHorizontalAlignment.Center; #endregion #region SetValue summaryComplete += sumByDay; worksheetSummary.Cells[rows, columnTemp].Value = sumByDay; worksheetSummary.Cells[rows, columnTemp].AddComment(DateTime.Parse(dtSummaryDateRegis.Rows[r]["DateRegis"].ToString()).ToString("dd/MM/yyyy HH:mm"), "วันที่"); worksheetSummary.Cells[rows, columnTemp].Style.Font.Name = "Angsana New"; worksheetSummary.Cells[rows, columnTemp].Style.Font.Size = 14; worksheetSummary.Cells[rows, columnTemp].Style.WrapText = true; worksheetSummary.Cells[rows, columnTemp].Style.HorizontalAlignment = OfficeOpenXml.Style.ExcelHorizontalAlignment.Center; columnTemp += 1; #endregion } } #endregion } #region SummaryComplete worksheetSummary.Cells[rows, columnSummaryComplete].Value = summaryComplete; worksheetSummary.Cells[rows, columnSummaryComplete].Style.Font.Name = "Angsana New"; worksheetSummary.Cells[rows, columnSummaryComplete].Style.Font.Size = 14; worksheetSummary.Cells[rows, columnSummaryComplete].Style.WrapText = true; worksheetSummary.Cells[rows, columnSummaryComplete].Style.HorizontalAlignment = OfficeOpenXml.Style.ExcelHorizontalAlignment.Center; #endregion #region SummaryInComplete worksheetSummary.Cells[rows, columnSummaryInComplete].Value = dtSummaryPayorDetail.Rows.Count-summaryComplete; worksheetSummary.Cells[rows, columnSummaryInComplete].Style.Font.Name = "Angsana New"; worksheetSummary.Cells[rows, columnSummaryInComplete].Style.Font.Size = 14; worksheetSummary.Cells[rows, columnSummaryInComplete].Style.WrapText = true; worksheetSummary.Cells[rows, columnSummaryInComplete].Style.HorizontalAlignment = OfficeOpenXml.Style.ExcelHorizontalAlignment.Center; #endregion #endregion } } #endregion #region ResizeColumn for (int resizeC = 0; resizeC < 50; resizeC++) { worksheetSummary.Column(resizeC + 1).AutoFit(); } #endregion } #endregion rows = 1; if (pbDefault.InvokeRequired) { pbDefault.Invoke(new MethodInvoker(delegate { pbDefault.Value += 1; })); } #region LabSummary try { ExcelWorksheet worksheetLabSummary = package.Workbook.Worksheets.Add("LabSummary"); var dtLabSummary = new DataTable(); rows = 1; dtLabSummary = clsTempData.getLabSummary(); if (dtLabSummary != null && dtLabSummary.Rows.Count > 0) { #region HeaderBuilder worksheetLabSummary.Cells[rows, 1].Value = "Company"; worksheetLabSummary.Cells[rows, 2].Value = "DateAccept"; worksheetLabSummary.Cells[rows, 3].Value = "Blood"; worksheetLabSummary.Cells[rows, 4].Value = "Urine"; worksheetLabSummary.Cells[rows, 5].Value = "Stool"; worksheetLabSummary.Cells[rows, 6].Value = "HeavyMetal"; for (int c = 0; c < 6; c++) { worksheetLabSummary.Cells[rows, c + 1].Style.Font.Bold = true; worksheetLabSummary.Cells[rows, c + 1].Style.Font.Name = "Angsana New"; worksheetLabSummary.Cells[rows, c + 1].Style.Font.Size = 14; worksheetLabSummary.Cells[rows, c + 1].Style.Fill.PatternType = OfficeOpenXml.Style.ExcelFillStyle.Solid; worksheetLabSummary.Cells[rows, c + 1].Style.Font.Color.SetColor(Color.White); worksheetLabSummary.Cells[rows, c + 1].Style.Fill.BackgroundColor.SetColor(System.Drawing.ColorTranslator.FromHtml("#31b0d3")); worksheetLabSummary.Cells[rows, c + 1].Style.VerticalAlignment = OfficeOpenXml.Style.ExcelVerticalAlignment.Center; worksheetLabSummary.Cells[rows, c + 1].Style.HorizontalAlignment = OfficeOpenXml.Style.ExcelHorizontalAlignment.Center; } #endregion #region RowsBuilder for (int r = 0; r < dtLabSummary.Rows.Count; r++) { worksheetLabSummary.Cells[rows + r + 1, 1].Value = dtLabSummary.Rows[r]["Company"].ToString(); worksheetLabSummary.Cells[rows + r + 1, 1].Style.Font.Name = "Angsana New"; worksheetLabSummary.Cells[rows + r + 1, 1].Style.Font.Size = 14; worksheetLabSummary.Cells[rows + r + 1, 2].Value = DateTime.Parse(dtLabSummary.Rows[r]["DateAccept"].ToString()).ToString("dd/MM/yyyy"); worksheetLabSummary.Cells[rows + r + 1, 2].Style.Font.Name = "Angsana New"; worksheetLabSummary.Cells[rows + r + 1, 2].Style.Font.Size = 14; worksheetLabSummary.Cells[rows + r + 1, 2].Style.HorizontalAlignment = OfficeOpenXml.Style.ExcelHorizontalAlignment.Center; worksheetLabSummary.Cells[rows + r + 1, 3].Value = dtLabSummary.Rows[r]["CountBloodComplete"].ToString() + " of " + dtLabSummary.Rows[r]["CountBloodAll"].ToString(); worksheetLabSummary.Cells[rows + r + 1, 3].Style.Font.Name = "Angsana New"; worksheetLabSummary.Cells[rows + r + 1, 3].Style.Font.Size = 14; worksheetLabSummary.Cells[rows + r + 1, 3].Style.HorizontalAlignment = OfficeOpenXml.Style.ExcelHorizontalAlignment.Center; worksheetLabSummary.Cells[rows + r + 1, 4].Value = dtLabSummary.Rows[r]["CountUrineComplete"].ToString() + " of " + dtLabSummary.Rows[r]["CountUrineAll"].ToString(); worksheetLabSummary.Cells[rows + r + 1, 4].Style.Font.Name = "Angsana New"; worksheetLabSummary.Cells[rows + r + 1, 4].Style.Font.Size = 14; worksheetLabSummary.Cells[rows + r + 1, 4].Style.HorizontalAlignment = OfficeOpenXml.Style.ExcelHorizontalAlignment.Center; worksheetLabSummary.Cells[rows + r + 1, 5].Value = dtLabSummary.Rows[r]["CountStoolComplete"].ToString() + " of " + dtLabSummary.Rows[r]["CountStoolAll"].ToString(); worksheetLabSummary.Cells[rows + r + 1, 5].Style.Font.Name = "Angsana New"; worksheetLabSummary.Cells[rows + r + 1, 5].Style.Font.Size = 14; worksheetLabSummary.Cells[rows + r + 1, 5].Style.HorizontalAlignment = OfficeOpenXml.Style.ExcelHorizontalAlignment.Center; worksheetLabSummary.Cells[rows + r + 1, 6].Value = dtLabSummary.Rows[r]["CountHeavyMetalComplete"].ToString() + " of " + dtLabSummary.Rows[r]["CountHeavyMetalAll"].ToString(); worksheetLabSummary.Cells[rows + r + 1, 6].Style.Font.Name = "Angsana New"; worksheetLabSummary.Cells[rows + r + 1, 6].Style.Font.Size = 14; worksheetLabSummary.Cells[rows + r + 1, 6].Style.HorizontalAlignment = OfficeOpenXml.Style.ExcelHorizontalAlignment.Center; } #endregion #region ResizeColumn for (int c = 0; c < 6; c++) { worksheetLabSummary.Column(c + 1).AutoFit(); } #endregion } } catch (Exception exDetail) { MessageBox.Show(exDetail.Message, "LabSummary", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion if (pbDefault.InvokeRequired) { pbDefault.Invoke(new MethodInvoker(delegate { pbDefault.Value += 1; })); } #region Detail try { #region CreateGroupSheet var dtDetailHeader = new DataTable(); if (type == "All") { dtDetailHeader.Columns.Add("All"); dtDetailHeader.Rows.Add("All"); } else if (type == "Payor") { dtDetailHeader = dt.DefaultView.ToTable(true, "Payor"); } else if (type == "Book") { #region TrimValue //for(int t = 0; t < dt.Rows.Count; t++) //{ // dt.Rows[t]["BookCreate"] = dt.Rows[t]["BookCreate"].ToString().Trim(); //} //dt.AcceptChanges(); #endregion dtDetailHeader = dt.DefaultView.ToTable(true, "BookCreate"); } #endregion #region CreateSheetDetail for (int i = 0; i < dtDetailHeader.Rows.Count; i++) { #region DataFilter var sheetName = ""; var dtDetailDetail = new DataTable(); var dvDetailDetail = new DataView(dt); if (type == "All") { dtDetailDetail = dt; sheetName = "Detail - All"; } else if (type == "Payor") { sheetName = "Detail - " + dtDetailHeader.Rows[i][0].ToString(); dvDetailDetail.RowFilter = "Payor='" + dtDetailHeader.Rows[i][0].ToString() + "'"; dtDetailDetail = dvDetailDetail.ToTable(); } else if (type == "Book") { sheetName = "Detail - " + dtDetailHeader.Rows[i][0].ToString(); dvDetailDetail.RowFilter = "BookCreate='" + dtDetailHeader.Rows[i][0].ToString() + "'"; dtDetailDetail = dvDetailDetail.ToTable(); } #endregion ExcelWorksheet worksheet=null; try { worksheet = package.Workbook.Worksheets.Add(sheetName); } catch (Exception) { worksheet = package.Workbook.Worksheets.Add(sheetName+" ("+i.ToString()+")"); } worksheet.TabColor = ColorTranslator.FromHtml("#FFC90E"); //worksheet.Cells["A1"].Style.Fill.PatternType = OfficeOpenXml.Style.ExcelFillStyle.Solid; //worksheet.Cells["A1"].Style.Fill.BackgroundColor.SetColor(ColorTranslator.FromHtml("#FFC90E")); rows = 1; #region HeaderBuilder for (int c = 0; c <= dtDetailDetail.Columns.Count - 1; c++) { worksheet.Cells[rows, c + 1].Value = dtDetailDetail.Columns[c].ColumnName; worksheet.Cells[rows, c + 1].Style.Font.Bold = true; worksheet.Cells[rows, c + 1].Style.Font.Name = "Angsana New"; worksheet.Cells[rows, c + 1].Style.Font.Size = 14; worksheet.Cells[rows, c + 1].Style.Fill.PatternType = OfficeOpenXml.Style.ExcelFillStyle.Solid; worksheet.Cells[rows, c + 1].Style.Font.Color.SetColor(Color.White); worksheet.Cells[rows, c + 1].Style.Fill.BackgroundColor.SetColor(System.Drawing.ColorTranslator.FromHtml("#31b0d3")); worksheet.Cells[rows, c + 1].Style.VerticalAlignment = OfficeOpenXml.Style.ExcelVerticalAlignment.Center; worksheet.Cells[rows, c + 1].Style.HorizontalAlignment = OfficeOpenXml.Style.ExcelHorizontalAlignment.Center; } #endregion #region RowsBuilder for (int r = 0; r < dtDetailDetail.Rows.Count; r++) { for (int c = 0; c < dtDetailDetail.Columns.Count; c++) { //กรณีฟิลด์เป็นข้อมูลวันที่ ให้คงรูปแบบไว้เพื่อง่ายในการฟิลด์เตอร์ if (dtDetailDetail.Columns[c].ColumnName.Contains("Date") && dtDetailDetail.Rows[r][c].ToString()!="" && dtDetailDetail.Rows[r][c]!=DBNull.Value) { try { worksheet.Cells[rows + r + 1, c + 1].Value = DateTime.Parse(dtDetailDetail.Rows[r][c].ToString()); worksheet.Cells[rows + r + 1, c + 1].Style.Numberformat.Format = "dd/MM/yyyy HH:mm"; } catch (Exception) { worksheet.Cells[rows + r + 1, c + 1].Value = dtDetailDetail.Rows[r][c].ToString(); } } else { worksheet.Cells[rows + r + 1, c + 1].Value = dtDetailDetail.Rows[r][c].ToString(); } worksheet.Cells[rows + r + 1, c + 1].Style.Font.Name = "Angsana New"; worksheet.Cells[rows + r + 1, c + 1].Style.Font.Size = 14; } } #endregion #region ResizeColumn //for (int c = 0; c < dtDetailDetail.Columns.Count; c++) //{ // if (!dtDetailDetail.Columns[c+1].ColumnName.ToLower().Trim().Contains("remark")) // { // worksheet.Column(c + 1).AutoFit(); // } //} for(int c=1;c< 200; c++) { if(worksheet.Cells[1, c].Value!= null) { if (!worksheet.Cells[1, c].Value.ToString().Trim().ToLower().Contains("remark") && !worksheet.Cells[1, c].Value.ToString().Trim().ToLower().Contains("programdetail") && worksheet.Cells[1, c].Value.ToString().Trim() != "") { worksheet.Column(c).AutoFit(); } } } #endregion } #endregion } catch (Exception exDetail) { MessageBox.Show(exDetail.Message, "Detail", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion if (pbDefault.InvokeRequired) { pbDefault.Invoke(new MethodInvoker(delegate { pbDefault.Value += 1; })); } #region LabDetail try { dt = null; rows = 1; #region CreateGroupSheet var dtLabHeader = new DataTable(); if (type == "All") { dt = clsTempData.getLabDetailByAll(dtDOEFrom.Value, dtDOETo.Value); dtLabHeader.Columns.Add("All"); dtLabHeader.Rows.Add("All"); } else if (type == "Payor") { dt = clsTempData.getLabDetail(dtDOEFrom.Value, dtDOETo.Value, getDropDownListValue(ddlCompany, "Company")); dtLabHeader = dt.DefaultView.ToTable(true, "Payor"); } else if (type == "Book") { dt = clsTempData.getLabDetailByBook(dtDOEFrom.Value, dtDOETo.Value, getDropDownListValue(ddlCompany, "BookCreate")); #region TrimValue //for (int t = 0; t < dt.Rows.Count; t++) //{ // dt.Rows[t]["BookCreate"] = dt.Rows[t]["BookCreate"].ToString().Trim(); //} //dt.AcceptChanges(); #endregion dtLabHeader = dt.DefaultView.ToTable(true, "BookCreate"); } #endregion if (dt != null && dt.Rows.Count > 0) { for(int i = 0; i < dtLabHeader.Rows.Count; i++) { #region DataFilter var sheetName = ""; var dtLabDetail = new DataTable(); var dvLabDetail = new DataView(dt); if (type == "All") { dtLabDetail = dt; sheetName = "Lab - All"; } else if (type == "Payor") { sheetName = "Lab - " + dtLabHeader.Rows[i][0].ToString(); dvLabDetail.RowFilter = "Payor='" + dtLabHeader.Rows[i][0].ToString() + "'"; dtLabDetail = dvLabDetail.ToTable(); } else if (type == "Book") { sheetName = "Lab - " + dtLabHeader.Rows[i][0].ToString(); dvLabDetail.RowFilter = "BookCreate='" + dtLabHeader.Rows[i][0].ToString() + "'"; dtLabDetail = dvLabDetail.ToTable(); } #endregion ExcelWorksheet worksheetLabDetail = package.Workbook.Worksheets.Add(sheetName); worksheetLabDetail.TabColor = ColorTranslator.FromHtml("#FF7F27"); #region HeaderBuilder int c; for (c = 0; c <= dtLabDetail.Columns.Count - 1; c++) { if (dtLabDetail.Columns[c].ColumnName == "AcceptDateBlood" || dtLabDetail.Columns[c].ColumnName == "AcceptDateUrine" || dtLabDetail.Columns[c].ColumnName == "AcceptDateStool" || dtLabDetail.Columns[c].ColumnName == "AcceptDateHeavyMetal") { worksheetLabDetail.Cells[rows, c + 1].Value = dtLabDetail.Columns[c].ColumnName.Replace("AcceptDate", ""); } else if (dtLabDetail.Columns[c].ColumnName == "CountLabPending") { worksheetLabDetail.Cells[rows, c + 1].Value = "Remark"; } else { worksheetLabDetail.Cells[rows, c + 1].Value = dtLabDetail.Columns[c].ColumnName; } worksheetLabDetail.Cells[rows, c + 1].Style.Font.Bold = true; worksheetLabDetail.Cells[rows, c + 1].Style.Font.Name = "Angsana New"; worksheetLabDetail.Cells[rows, c + 1].Style.Font.Size = 14; worksheetLabDetail.Cells[rows, c + 1].Style.Fill.PatternType = OfficeOpenXml.Style.ExcelFillStyle.Solid; worksheetLabDetail.Cells[rows, c + 1].Style.Font.Color.SetColor(Color.White); worksheetLabDetail.Cells[rows, c + 1].Style.Fill.BackgroundColor.SetColor(System.Drawing.ColorTranslator.FromHtml("#31b0d3")); worksheetLabDetail.Cells[rows, c + 1].Style.VerticalAlignment = OfficeOpenXml.Style.ExcelVerticalAlignment.Center; worksheetLabDetail.Cells[rows, c + 1].Style.HorizontalAlignment = OfficeOpenXml.Style.ExcelHorizontalAlignment.Center; } #endregion #region RowsBuilder for (int r = 0; r < dtLabDetail.Rows.Count; r++) { for (c = 0; c < dtLabDetail.Columns.Count; c++) { if (dtLabDetail.Columns[c].ColumnName == "AcceptDateBlood" || dtLabDetail.Columns[c].ColumnName == "AcceptDateUrine" || dtLabDetail.Columns[c].ColumnName == "AcceptDateStool" || dtLabDetail.Columns[c].ColumnName == "AcceptDateHeavyMetal") { if (dtLabDetail.Columns[c].ColumnName == "AcceptDateBlood") { worksheetLabDetail.Cells[rows + r + 1, c + 1].Value = (dtLabDetail.Rows[r][c].ToString() == "" ? (dtLabDetail.Rows[r]["CountChecklistBlood"].ToString() == "0" ? "" : "ยังไม่เก็บ Specimen") : dtLabDetail.Rows[r][c].ToString()); } else if (dtLabDetail.Columns[c].ColumnName == "AcceptDateUrine") { worksheetLabDetail.Cells[rows + r + 1, c + 1].Value = (dtLabDetail.Rows[r][c].ToString() == "" ? (dtLabDetail.Rows[r]["CountChecklistUrine"].ToString() == "0" ? "" : "ยังไม่เก็บ Specimen") : dtLabDetail.Rows[r][c].ToString()); } else if (dtLabDetail.Columns[c].ColumnName == "AcceptDateStool") { worksheetLabDetail.Cells[rows + r + 1, c + 1].Value = (dtLabDetail.Rows[r][c].ToString() == "" ? (dtLabDetail.Rows[r]["CountChecklistStool"].ToString() == "0" ? "" : "ยังไม่เก็บ Specimen") : dtLabDetail.Rows[r][c].ToString()); } else if (dtLabDetail.Columns[c].ColumnName == "AcceptDateHeavyMetal") { worksheetLabDetail.Cells[rows + r + 1, c + 1].Value = (dtLabDetail.Rows[r][c].ToString() == "" ? (dtLabDetail.Rows[r]["CountChecklistHeavyMetal"].ToString() == "0" ? "" : "ยังไม่เก็บ Specimen") : dtLabDetail.Rows[r][c].ToString()); } worksheetLabDetail.Cells[rows + r + 1, c + 1].Style.Font.Name = "Angsana New"; worksheetLabDetail.Cells[rows + r + 1, c + 1].Style.Font.Size = 14; } else if (dtLabDetail.Columns[c].ColumnName == "CountLabPending") { var remark = ""; if (dtLabDetail.Rows[r]["CountLabPending"].ToString() != "0" && ( dtLabDetail.Rows[r]["AcceptDateBlood"].ToString() != "" || dtLabDetail.Rows[r]["AcceptDateUrine"].ToString() != "" || dtLabDetail.Rows[r]["AcceptDateStool"].ToString() != "" || dtLabDetail.Rows[r]["AcceptDateHeavyMetal"].ToString() != "" )) { remark = "Reg.Date:" + dtLabDetail.Rows[r]["RegisterDate"].ToString(); } else if (dtLabDetail.Rows[r]["CountLabPending"].ToString() != "0" && ( dtLabDetail.Rows[r]["AcceptDateBlood"].ToString() == "" && dtLabDetail.Rows[r]["AcceptDateUrine"].ToString() == "" && dtLabDetail.Rows[r]["AcceptDateStool"].ToString() == "" && dtLabDetail.Rows[r]["AcceptDateHeavyMetal"].ToString() == "" )) { remark = "ยังไม่ได้เข้ารับการตรวจ"; } worksheetLabDetail.Cells[rows + r + 1, c + 1].Value = remark; worksheetLabDetail.Cells[rows + r + 1, c + 1].Style.Font.Name = "Angsana New"; worksheetLabDetail.Cells[rows + r + 1, c + 1].Style.Font.Size = 14; } else { worksheetLabDetail.Cells[rows + r + 1, c + 1].Value = dtLabDetail.Rows[r][c].ToString(); worksheetLabDetail.Cells[rows + r + 1, c + 1].Style.Font.Name = "Angsana New"; worksheetLabDetail.Cells[rows + r + 1, c + 1].Style.Font.Size = 14; } } } #endregion #region ResizeColumn for (c = 0; c < dtLabDetail.Columns.Count; c++) { //if (!dtLabDetail.Columns[c + 1].ColumnName.ToLower().Trim().Contains("remark")) //{ worksheetLabDetail.Column(c + 1).AutoFit(); //} } #endregion #region HiddenColumn int totalRows = worksheetLabDetail.Dimension.End.Row; int totalCols = worksheetLabDetail.Dimension.End.Column; var range = worksheetLabDetail.Cells[1, 1, 1, totalCols]; for (int ii = 1; ii <= totalCols; ii++) { if (range[1, ii].Address != "" && range[1, ii].Value != null && range[1, ii].Value.ToString() == "RegisterDate") { worksheetLabDetail.Column(ii).Hidden = true; } else if (range[1, ii].Address != "" && range[1, ii].Value != null && range[1, ii].Value.ToString() == "CountChecklistBlood") { worksheetLabDetail.Column(ii).Hidden = true; } else if (range[1, ii].Address != "" && range[1, ii].Value != null && range[1, ii].Value.ToString() == "CountChecklistUrine") { worksheetLabDetail.Column(ii).Hidden = true; } else if (range[1, ii].Address != "" && range[1, ii].Value != null && range[1, ii].Value.ToString() == "CountChecklistStool") { worksheetLabDetail.Column(ii).Hidden = true; } else if (range[1, ii].Address != "" && range[1, ii].Value != null && range[1, ii].Value.ToString() == "CountChecklistHeavyMetal") { worksheetLabDetail.Column(ii).Hidden = true; } } #endregion } } } catch (Exception exDetail) { MessageBox.Show(exDetail.Message, "LabDetail", MessageBoxButtons.OK, MessageBoxIcon.Error); } #endregion if (pbDefault.InvokeRequired) { pbDefault.Invoke(new MethodInvoker(delegate { pbDefault.Value += 1; })); } package.Save(); if (pbDefault.InvokeRequired) { pbDefault.Invoke(new MethodInvoker(delegate { pbDefault.Value += 1; })); } DialogResult dr = MessageBox.Show("Export Seccessful!" + Environment.NewLine + Environment.NewLine + FileName + Environment.NewLine + Environment.NewLine + "ต้องการดูไฟล์คลิก Yes", "Success", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (dr == DialogResult.Yes) { try { System.Diagnostics.Process.Start(Path.GetDirectoryName(FileName)); } catch (Exception) { } } } } catch (Exception ex) { MessageBox.Show(ex.Message, "Export Click", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
private void setDOE(string searchPayor) { #region Variable var dt = new DataTable(); var clsTempData = new clsTempData(); #endregion #region Procedure lblPayor.Text = searchPayor; if (lvDOE.Items.Count > 0) { lvDOE.Items.Clear(); } dt = clsTempData.getDOE(searchPayor); if (dt != null && dt.Rows.Count > 0) { for (int i = 0; i < dt.Rows.Count; i++) { lvDOE.Items.Add(new ListViewItem(new string[] { dt.Rows[i]["UID"].ToString(), DateTime.Parse(dt.Rows[i]["DOEFrom"].ToString()).ToString("yyyy-MM-dd HH:mm"), DateTime.Parse(dt.Rows[i]["DOETo"].ToString()).ToString("yyyy-MM-dd HH:mm") } )); } lvDOE.Columns[0].Width = 0; lvDOE.Columns[1].Width = (lvDOE.Width / 2); //lvDOE.Columns[0].TextAlign = HorizontalAlignment.Center; lvDOE.Columns[2].Width = -2; //lvDOE.Columns[1].TextAlign = HorizontalAlignment.Center; lblDOEResult.Text = string.Format("พบข้อมูล {0} รายการ", dt.Rows.Count.ToString()); } else { lblDOEResult.Text = string.Format("พบข้อมูล {0} รายการ", "0"); } #endregion }
private void setType() { #region Variable var clsTempData = new clsTempData(); var dt = new DataTable(); #endregion #region Procedure dt = clsTempData.getReportType(); if(dt!=null && dt.Rows.Count > 0) { ddlType.DataSource = dt; ddlType.DisplayMember = "Name"; ddlType.ValueMember = "UID"; ddlType.SelectedIndex = 0; ddlCompany.Enabled = false; } #endregion }
private void setPayor(string searchName="") { #region Variable var clsTempData = new clsTempData(); var dt = new DataTable(); #endregion #region Procedure if (lvPayor.Items.Count > 0) { lvPayor.Items.Clear(); } dt = clsTempData.getPayor(searchName); if (dt != null && dt.Rows.Count > 0) { for (int i = 0; i < dt.Rows.Count; i++) { lvPayor.Items.Add(dt.Rows[i]["Payor"].ToString().Trim()); if (dt.Rows[i]["CountMap"].ToString() != "0") { lvPayor.Items[i].BackColor = ColorTranslator.FromHtml("#FFC90E"); } } lvPayor.Columns[0].Width = -2; lblPayorSearchResult.Text = string.Format("พบข้อมูล {0} รายการ", dt.Rows.Count.ToString()); } else { lblPayorSearchResult.Text = string.Format("พบข้อมูล {0} รายการ", "0"); } setClearPayorDetail(); #endregion }
private void bwDefault_DoWork(object sender, DoWorkEventArgs e) { #region Variable var clsTempData=new clsTempData(); var clsInvoker = new clsInvoker(); var dt = new DataTable(); var doeFrom = ""; var doeTo = ""; var registerFrom = ""; var registerTo = ""; var payor = ""; #endregion #region Procedure if (clsInvoker.getDateTimePickerChecked(dtDOEFrom)) doeFrom = clsInvoker.getDateTimePickerValue(dtDOEFrom).Value.ToString("yyyy-MM-dd HH:mm"); if (clsInvoker.getDateTimePickerChecked(dtDOETo)) doeTo = clsInvoker.getDateTimePickerValue(dtDOETo).Value.ToString("yyyy-MM-dd HH:mm"); if (clsInvoker.getDateTimePickerChecked(dtREGFrom)) registerFrom = clsInvoker.getDateTimePickerValue(dtREGFrom).Value.ToString("yyyy-MM-dd HH:mm"); if (clsInvoker.getDateTimePickerChecked(dtREGTo)) registerTo = clsInvoker.getDateTimePickerValue(dtREGTo).Value.ToString("yyyy-MM-dd HH:mm"); if (clsInvoker.getComboBox(ddlPayor)!="- ทั้งหมด -") payor = clsInvoker.getComboBox(ddlPayor); dt = clsTempData.getPatientAutoMassConvert(doeFrom, doeTo, registerFrom, registerTo, payor); if(dt!=null && dt.Rows.Count > 0) { for (int i = 0; i < dt.Rows.Count; i++) { if (!bwDefault.CancellationPending) { #region ListViewUpdate clsInvoker.setListView(lvDefault, new string[] { DateTime.Now.ToString("yyyy-MM-dd HH:mm"), dt.Rows[i]["HN"].ToString(), dt.Rows[i]["Name"].ToString()+" "+dt.Rows[i]["LastName"].ToString(), dt.Rows[i]["Payor"].ToString(), dt.Rows[i]["DOE"].ToString(), dt.Rows[i]["InsuranceCompanyName"].ToString(), dt.Rows[i]["PayorAgreementName"].ToString(), dt.Rows[i]["PayorDetailName"].ToString(), dt.Rows[i]["PolicyMasterName"].ToString() }); #endregion } else { #region ListViewUpdate clsInvoker.setListView(lvDefault, new string[] { DateTime.Now.ToString("yyyy-MM-dd HH:mm"), "", "Cancel by User", "", "", "", "", "", "" }); #endregion break; } } } else { #region ListViewUpdate clsInvoker.setListView(lvDefault, new string[] { DateTime.Now.ToString("yyyy-MM-dd HH:mm"), "", "Don't found data for convert", "", "", "", "", "", "" }); #endregion } #endregion }
private void getPatient() { System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en-US"); #region Variable var dt = new DataTable(); var clsTempData = new clsTempData(); var mobileStatus = ""; #endregion #region Procedure if (rbAll.Checked) { mobileStatus = "All"; } else if (rbNotRegister.Checked) { mobileStatus = "NotRegister"; } else if (rbRegister.Checked) { mobileStatus = "Register"; } dt = clsTempData.getPatient(dtDOEFrom.Value,dtDOETo.Value,getPayor(),mobileStatus); clsTempData.dtIsConverted = null; if (dt!=null && dt.Rows.Count > 0) { #region Check IsConvertPreOrder for (int i = 0; i < dt.Rows.Count; i++) { if (clsTempData.IsConverted( dt.Rows[i]["Name"].ToString().Replace(dt.Rows[i]["PreName"].ToString(),""), dt.Rows[i]["LastName"].ToString(), dt.Rows[i]["DOE"].ToString(), dtDOEFrom.Value.ToString("yyyy-MM-dd HH:mm"), dtDOETo.Value.ToString("yyyy-MM-dd HH:mm"))) { dt.Rows[i]["IsConvertPreOrder"] = "1"; } } dt.AcceptChanges(); #endregion lblSearchResult.Text = string.Format("พบข้อมูลทั้งหมด {0} รายการ",dt.Rows.Count.ToString()); gvPatient.DataSource = dt; gvPatient.Columns["PreName"].Visible = false; gvPatient.Columns["IsConvertPreOrder"].Visible = false; } else { lblSearchResult.Text = string.Format("ไม่พบข้อมูลที่ต้องการ"); gvPatient.DataSource = null; } #endregion }