public HttpResponseMessage Post([FromBody] ChangeQueueModel param) { List <InsFlowGenQueueComModel> inscom = SelectComKiosk(param.com_name); QueueNineModel qnine = GenQNine(param, inscom); return(Request.CreateResponse(HttpStatusCode.OK, "qid:" + qnine.q_id + " qno:" + qnine.q_no + " channel:" + qnine.channel_group_name)); }
private QueueNineModel GenQNine(ChangeQueueModel param, List <InsFlowGenQueueComModel> inscom) { /* Generate Q express from service Chula*/ QueueNineModel queue = new QueueNineModel(); //QChulaService.WS_KioskQSoapClient ws = new QChulaService.WS_KioskQSoapClient(); CUKioskService.WS_KioskQSoapClient ws = new CUKioskService.WS_KioskQSoapClient(); DataSet ds = ws.CreateQ_NoHN(param.slip_type_detail, param.slip_type_flag, inscom[0].locat_name, param.slip_no, param.crtd_by); if (ds != null && ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0) { queue.channel_group_name = ds.Tables[0].Rows[0]["channel_group_id"].ToString(); queue.q_no = ds.Tables[0].Rows[0]["q_no"].ToString(); queue.q_id = ds.Tables[0].Rows[0]["q_id"].ToString(); queue.ws_result = ds.Tables[0].Rows[0]["ws_result"].ToString(); } return(queue); }
private bool UpdateMapQueue(ChangeQueueModel param, List <PatientTransheadModel> patient, List <kiosk_transhead> tranheadresult, QueueNineModel q9) { try { using (var context = new KioskChulaiPadEntities()) { if (param != null && patient != null && tranheadresult != null) { /* insert */ int slip_seq_express = tranheadresult[0].slip_seq; string queue_no_express = q9.q_no; int slip_seq_old = param.slip_seq; string queue_no_old = patient[0].queue_no; string activeflag = "Y"; string crdby = param.crtd_by; context.q_expr_ins_kiosk_map_qexpress_ipad(slip_seq_express, queue_no_express, slip_seq_old, queue_no_old, activeflag, crdby); /*update queue_id to service chula*/ //bool updateslipseq = UpdateQ_SlipSeq(q9.q_id, slip_seq_express.ToString()); return(UpdateQ_SlipSeq(q9.q_id, slip_seq_express.ToString())); } else { return(false); } } } catch { return(false); } }
public HttpResponseMessage GenQFlowExpress([FromBody] ChangeQueueModel param) { try { /*====get location ipad for insert======*/ //select db.q_expr_sel_kiosk_com_cat_ipad //========param computer_name = 'IPAD001' List <InsFlowGenQueueComModel> inscom = SelectComKiosk(param.com_name); //List<QueueExpressResultModel> expressresult = new List<QueueExpressResultModel>(); List <PatientTransheadModel> patient = SelectPatientTranshead(param.slip_seq); //QueueExpressResultModel expressResultModel = new QueueExpressResultModel(); List <q_express_Result> resultq9 = new List <q_express_Result>(); q_express_Result qresultmodel = new q_express_Result(); /*====update queue status======*/ //update db.q_expr_upd_kiosk_transhead_queue_status_ipad //========param queue_status = 'C' ,slip_seq ,last_chg_by string updateresult = UpdateQueueStatus(param); if (updateresult == "true") { /*====select patient info transhead ======*/ //gen queue 9 if (inscom.Count > 0 && patient.Count > 0) { QueueNineModel qnine = GenQNine(param, inscom); string q9 = ""; if (qnine.ws_result != null && qnine.ws_result == "S") { q9 = qnine.q_no; } else { return(Request.CreateResponse(HttpStatusCode.BadRequest, "problem when call express queue service !!")); } //q9 = q9 != "" ? q9 : "9" + patient[0].queue_no; /*====insert transhead ======*/ //insert db.q_expr_ins_kiosk_transhead_ipad //========param queue_status = 'C' ,slip_seq ,last_chg_by if (InsertTranshead(param, patient, inscom, q9)) { List <kiosk_transhead> tranheadresult = GetLastTransHead(param, patient, q9); if (tranheadresult.Count > 0) { if (UpdateMapQueue(param, patient, tranheadresult, qnine)) { //insert db.q_expr_ins_kiosk_qExpress_log_ipad if (InsertLogQueue(param, patient, inscom, q9)) { //expressResultModel.queue_no = patient[0].queue_no; //expressResultModel.queue_no_express = q9; //expressResultModel.patient_name = patient[0].pateint_name; //expressResultModel.hn_no = patient[0].hn_no; //expressresult.Add(expressResultModel); //add to list //call service q string slip_seq_new = tranheadresult[0].slip_seq.ToString(); bool updateqstatus = UpdateQ_ClickStatusQ_Nurse(param, slip_seq_new); if (updateqstatus) { if (this.UpdateQShowQAll2_Check(slip_seq_new, "N")) { qresultmodel.qexpress = q9; resultq9.Add(qresultmodel); return(Request.CreateResponse(HttpStatusCode.OK, resultq9.ToList())); } else { qresultmodel.qexpress = "problem when call service UpdateQShowQAll2_Check !!"; resultq9.Add(qresultmodel); return(Request.CreateResponse(HttpStatusCode.BadRequest, resultq9.ToList())); } } else { qresultmodel.qexpress = "problem when call service UpdateQ_ClickStatusQ_Nurse !!"; resultq9.Add(qresultmodel); return(Request.CreateResponse(HttpStatusCode.BadRequest, resultq9.ToList())); } } else { qresultmodel.qexpress = "problem when insert log queue !!"; resultq9.Add(qresultmodel); return(Request.CreateResponse(HttpStatusCode.BadRequest, resultq9.ToList())); } } else { qresultmodel.qexpress = "problem when update map queue !!"; resultq9.Add(qresultmodel); return(Request.CreateResponse(HttpStatusCode.BadRequest, resultq9.ToList())); } } else { qresultmodel.qexpress = "problem when select old transhead !!"; resultq9.Add(qresultmodel); return(Request.CreateResponse(HttpStatusCode.BadRequest, resultq9.ToList())); } } else { qresultmodel.qexpress = "problem when insert transhead !!"; resultq9.Add(qresultmodel); return(Request.CreateResponse(HttpStatusCode.BadRequest, resultq9.ToList())); } } else { qresultmodel.qexpress = "problem when select computer or device name !!"; resultq9.Add(qresultmodel); return(Request.CreateResponse(HttpStatusCode.BadRequest, resultq9.ToList())); } } else { qresultmodel.qexpress = "problem when update queue status !!" + updateresult; resultq9.Add(qresultmodel); return(Request.CreateResponse(HttpStatusCode.BadRequest, resultq9.ToList())); } } catch (Exception ex) { return(Request.CreateResponse(HttpStatusCode.InternalServerError, ex.Message + ex.InnerException.Message)); } }