private SendCarInfo getScFromPc(DispatchCarNotice pc) { SendCarInfo sc = new SendCarInfo(); try { int i; DateTime dt; sc.CASEID = pc.caseid; if (int.TryParse(pc.cccc,out i)) sc.CCCC = int.Parse(pc.cccc); if (DateTime.TryParse(pc.ccsj, out dt)) sc.CCSJ = DateTime.Parse(pc.ccsj); sc.CLID = pc.clid; sc.CPH = pc.cph; sc.DOCTORNAME = pc.doctorname; sc.DOCTORPHONE = pc.doctorphone; sc.DRIVERNAME = pc.drivername; sc.DRIVERPHONE = pc.driverphone; sc.LSH = pc.lsh; sc.SSDW = pc.ssdw; } catch(Exception ex) { LOG.LogHelper.WriteLog("", ex); } return sc; }
//处理派车消息 private void DealDispatchCarNotice(object obj) { try { DispatchCarNotice pc= (DispatchCarNotice)obj; SendCarInfo sc = getScFromPc(pc); CoreService.GetInstance().OtherMsgServer.SendCarInfo(sc); } catch (Exception ex) { LOG.LogHelper.WriteLog("", ex); } }
/// <summary> /// RecvMessage事件,并存入消息处理队列_revBSSMsg /// </summary> /// <param name="sender"></param> /// <param name="e"></param> #region private void tsh_RecvMessage(object sender, NetEventArgs e) { //<LoginMsg> // <RoutID>3201</RoutID> // <TLX>PDEP</TLX> // <TName>江苏省交换服务器</TName> //</LoginMsg> try { int msgno = e.msgEntity.msgH.msgID; string body = Encoding.Default.GetString(e.msgEntity.msgB); dtLastRecieveMsgTime = DateTime.Now; LogHelper.WriteSevNetMsgLog(body); switch (msgno) { case 1000: //Handshake Handshake hk = new Handshake(); hk = (Handshake)JSON.JsonToObject(body,hk); if (hk != null) _revBSSMsg.Enqueue(new DesMsg(DesMsgType.Handshake, hk, body)); break; case 1002: //LoginReponse LoginResponse lr = new LoginResponse(); lr = (LoginResponse)JSON.JsonToObject(body,lr); if (lr != null) _revBSSMsg.Enqueue(new DesMsg(DesMsgType.LoginResponse, lr, body)); break; case 1004: //LoginoffReponse LogoffResponse lfr = new LogoffResponse(); lfr = (LogoffResponse)JSON.JsonToObject(body,lfr); if (lfr != null) _revBSSMsg.Enqueue(new DesMsg(DesMsgType.LogoffResponse, lfr, body)); break; case 7001: //DispatchCarNotice DispatchCarNotice pc = new DispatchCarNotice(); pc=(DispatchCarNotice)JSON.JsonToObject(body,pc); if (pc != null) _revBSSMsg.Enqueue(new DesMsg(DesMsgType.DispatchCarNotice, pc, body)); break; case 7002: //VehicleStatusResponse VehicleStatusResponse vs = new VehicleStatusResponse(); vs = (VehicleStatusResponse)JSON.JsonToObject(body, vs); if (vs != null) _revBSSMsg.Enqueue(new DesMsg(DesMsgType.VehicleStatusResponse, vs, body)); break; case 7004: //VehiclePointResponse VehiclePointResponse vp = new VehiclePointResponse(); vp = (VehiclePointResponse)JSON.JsonToObject(body, vp); if (vp != null) _revBSSMsg.Enqueue(new DesMsg(DesMsgType.VehiclePointResponse, vp, body)); break; default: break; } } catch (Exception ex) { LOG.LogHelper.WriteLog("", ex); } }