private void btnSendToCheckB_Click(object sender, EventArgs e) { DisableBtnAll(); this.AutoScrollPosition = new Point(0, 0); frmBGScreen frmbg = new frmBGScreen(); frmbg.Show(); Application.DoEvents(); if (saveData()) { int tps_id = Program.CurrentPatient_queue.tps_id; int mrm_id = Program.CurrentRoom.mrm_id; string messege = ""; StatusTransaction sendToB = new Class.SendQueue().SendToCheckB((int)tpr_id, mrm_id, ref messege); if (sendToB == StatusTransaction.True) { new Class.logPatientFlowCls(Class.logPatientFlowCls.sendType.SendCheckB, (int)tpr_id, tps_id, Program.CurrentSite.mhs_id, Program.CurrentRoom.mrd_ename, Program.CurrentUser.mut_username); new ClsTCPClient().sendClearUnitDisplay(); lbAlertMsg.Text = messege; StatusEmptyRoom(); this.tpr_id = null; } else if (sendToB == StatusTransaction.Error) { lbAlertMsg.Text = "ระบบเกิดความผิดพลาดไม่สามารถส่งไปยัง Checkpoint B ได้ กรุณา กดปุ่ม go to Checkpoint B อีกครั้ง"; StatusWK(); } } else { lbAlertMsg.Text = "Save Data Incomplete. Please Try Again."; StatusWK(); } frmbg.Close(); }
public StatusTransaction pendingOnStationSendAuto(int tpr_id, int mvt_id, int mrm_id, int mhs_id, int tps_id) { try { using (InhCheckupDataContext cdc = new InhCheckupDataContext()) { Class.clsLogSendAuto logCls = new Class.clsLogSendAuto(); List <log_send_auto> log_auto = null; try { List <vw_patient_room> vw_pa_room = logCls.getLogSendAuto(tpr_id); if (vw_pa_room != null) { log_auto = vw_pa_room.Select(x => new log_send_auto { tpr_id = x.tpr_id, process_type = "P", process_tps_id = tps_id, login_flag = x.login_flag, mhs_code = x.mhs_code, mhs_ename = x.mhs_ename, mrm_ename = x.mrm_ename, mrm_id = x.mrm_id, mrm_seq_room = x.mrm_seq_room, mvt_code = x.mvt_code, mvt_id = x.mvt_id, mvt_type_cate = x.mvt_type_cate.ToString(), mze_code = x.mze_code, mze_ename = x.mze_ename, mze_id = x.mze_id, patient_vip = x.patient_vip, send_type = x.send_type, site_rm = x.site_rm, skip_seq = x.skip_seq, skip_type = x.skip_type, waiting_person = x.waiting_person, waiting_time = x.waiting_time }).ToList(); } } catch (Exception ex) { Program.MessageError("log_send_auto", "", ex, false); } List <int> list_mvt_id = new Class.FunctionDataCls().get_mvt_id(mrm_id); StatusTransaction result = CallQueue.PSendAutoAllRoom(Class.SendType.Pending, mrm_id, list_mvt_id, tps_id); if (result == StatusTransaction.SendCheckB) { if (Program.CurrentSite.mhs_extra_pe_type == true && Program.CurrentRegis.tpr_pe_site2 == 'N' && (Program.CurrentRegis.tpr_pd_pe_site2 == null || Program.CurrentRegis.tpr_pd_pe_site2 == false)) { return(StatusTransaction.ReSendManualSite2); } else { string messege = ""; StatusTransaction returnB = new Class.SendQueue().ReturnToCheckB(Class.SendType.Pending, tpr_id, mrm_id, tps_id, list_mvt_id, ref messege); if (returnB == StatusTransaction.True) { //new ClsTCPClient().sendClearUnitDisplay(); //new Class.FunctionDataCls().SendToCheckPointB(tpr_id, tps_id); } System.Windows.Forms.MessageBox.Show("ระบบไม่สามารถส่งห้องที่เหลือแบบอัตโนมัติได้ ผู้รับบริการจะถูกส่งไป Check point B", "Send Queue Alert", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Information); return(returnB); } } else if (result == StatusTransaction.True) { try { if (log_auto != null) { string queue_no = cdc.trn_patient_regis.Where(x => x.tpr_id == tpr_id).Select(x => x.tpr_queue_no).FirstOrDefault(); int? log_tps_id = logCls.get_tps_id(tpr_id); int index = 1; log_auto.ForEach(x => { x.tps_id = log_tps_id; x.seq_id = index++; x.tpr_queue_no = queue_no; }); cdc.log_send_autos.InsertAllOnSubmit(log_auto); cdc.SubmitChanges(); } } catch (Exception ex) { Program.MessageError("log_send_auto", "", ex, false); } return(result); } else { return(result); } } //InhCheckupDataContext cdc = new InhCheckupDataContext(); //trn_patient_regi tpr = cdc.trn_patient_regis.Where(x => x.tpr_id == tpr_id).FirstOrDefault(); //tpr.tpr_pending = true; //updatePendingPatientPlan(ref tpr, mvt_id, mrm_id, mhs_id); //cdc.SubmitChanges(); //updatePendingPatientQueue(ref cdc, ref tpr, mrm_id); //insertPatientPending(ref tpr, mrm_id); //CallQueue.PSendAutoAllRoom(true); //// alert //try //{ // cdc.SubmitChanges(); //} //catch (System.Data.Linq.ChangeConflictException) //{ // foreach (ObjectChangeConflict occ in cdc.ChangeConflicts) // { // cdc.Refresh(System.Data.Linq.RefreshMode.KeepChanges, occ.Object); // } // cdc.SubmitChanges(); //} //return true; } catch (Exception ex) { Program.MessageError("ClsPendingOnStation", "pendingOnStationSendAuto", ex, false); return(StatusTransaction.Error); } }
private void btnSendToCheckB_Click(object sender, EventArgs e) { DisableBtnAll(); this.AutoScrollPosition = new Point(0, 0); frmBGScreen frmbg = new frmBGScreen(); frmbg.Show(); Application.DoEvents(); int mrm_id = Program.CurrentRoom.mrm_id; string messege = ""; List <int> mvt_id = new List <int>(); if (uu.enable && uu.visible && uu.check) { mvt_id.Add(uu.mvt_id); } if (ul.enable && ul.visible && ul.check) { mvt_id.Add(ul.mvt_id); } if (ub.enable && ub.visible && ub.check) { mvt_id.Add(ub.mvt_id); } if (uw.enable && uw.visible && uw.check) { mvt_id.Add(uw.mvt_id); } if (mvt_id.Count() == 0) { lbAlertMsg.Text = "กรุณาเลือก Order ที่ต้องการตรวจเพิ่มอย่างน้อย 1 รายการ"; StatusWK(); } else { StatusTransaction sendToB = new Class.SendQueue().SendToCheckB((int)tpr_id, mvt_id, (int)this.tps_id, ref messege); if (sendToB == StatusTransaction.True) { new Class.logPatientFlowCls(Class.logPatientFlowCls.sendType.SendCheckB, (int)tpr_id, (int)tps_id, Program.CurrentSite.mhs_id, Program.CurrentRoom.mrd_ename, Program.CurrentUser.mut_username); new ClsTCPClient().sendClearUnitDisplay(); lbAlertMsg.Text = messege; StatusEmptyRoom(); this.tpr_id = null; } else if (sendToB == StatusTransaction.Error) { lbAlertMsg.Text = "ระบบเกิดความผิดพลาดไม่สามารถส่งไปยัง Checkpoint B ได้ กรุณา กดปุ่ม go to Checkpoint B อีกครั้ง"; StatusWK(); } } frmbg.Close(); }