public void LoadData(CheckupDataContext dbc) { if (Program.CurrentRoom != null) { try { var objwaitlist = new Class.WaitingListCls().getWaitingRoomDtl(Program.CurrentRoom.mrd_id, Program.CurrentUser.mut_id); GridWaitingList.DataSource = new SortableBindingList <waitinglist>(objwaitlist.OrderBy(x => x.index).Select((item, index) => new waitinglist { NO = index + 1, Callstatus = item.holded == true ? "HD" : "", QueueNo = item.tpr_queue_no, HN = item.tpt_hn_no, FullName = item.tpt_othername, tpr_id = item.tpr_id, hilight = item.reserve }).ToList()); lbTitle.Text = string.Format("Waiting List (Total {0} คน)", objwaitlist.Count()); timer1.Start();// Stat Timer } catch (Exception ex) { Program.MessageError("UIWaitList", "LoadData", ex, false); timer1.Start(); } } }
public PatientCallQueue CallQueue(int mrd_id, int mut_id, string username) { try { DateTime dateNow = Program.GetServerDateTime(); List <Class.WaitingListCls.WaitingListDtl> result = new Class.WaitingListCls().getWaitingRoomDtl(mrd_id, mut_id); foreach (Class.WaitingListCls.WaitingListDtl row in result) { using (InhCheckupDataContext cdc = new InhCheckupDataContext()) { try { cdc.Connection.Open(); DbTransaction trans = cdc.Connection.BeginTransaction(); cdc.Transaction = trans; trn_patient_queue PatientQueue = cdc.trn_patient_queues .Where(x => x.tps_id == row.tps_id) .FirstOrDefault(); if (PatientQueue.tps_ns_status == "QL") { PatientQueue.mrd_id = mrd_id; PatientQueue.tps_ns_status = "WR"; PatientQueue.tps_update_by = username; PatientQueue.tps_update_date = dateNow; try { cdc.SubmitChanges(); cdc.Transaction.Commit(); Program.CurrentRegis = PatientQueue.trn_patient_regi; Program.CurrentPatient_queue = PatientQueue; return(new PatientCallQueue { Status = PatientCallQueue.StatusCallQueue.GotPatient, tpr_id = PatientQueue.tpr_id, tps_id = PatientQueue.tps_id }); } catch (System.Data.Linq.ChangeConflictException) //Win32Exception { Program.CurrentRegis = null; Program.CurrentPatient_queue = null; } } } catch (Exception ex) { cdc.Transaction.Rollback(); Program.MessageError("TransactionQueueCls", "CallQueue(int mrd_id, int mut_id, string username)", ex, false); Program.CurrentRegis = null; Program.CurrentPatient_queue = null; return(new PatientCallQueue { Status = PatientCallQueue.StatusCallQueue.Error, tpr_id = null, tps_id = null }); } finally { cdc.Connection.Close(); } } } return(null); } catch (Exception ex) { Program.MessageError("TransactionQueueCls", "CallQueue(int mrd_id, int mut_id, string username)", ex, false); Program.CurrentRegis = null; Program.CurrentPatient_queue = null; return(null); } }