Esempio n. 1
0
        public Hashtable GetSendCarInfoHashtableByModel(SendCarInfo sci)
        {
            /*lsh;	String	流水号	Varchar2(19) not null	19	必填,主键,120生成
             * clid	String	车俩ID	Varchar2(10) not null	10	必填
             * cccc	Integer	出车车次	Number(2)	2	必填,默认为弟1次
             * cph	String	车牌号	Varchar2 (20)	20	建议必填
             * ccsj	Date    出车时间	Date		必填
             * ssdw	String	车俩所属单位名称	Varchar2 (50)	50
             * driverPhone	String	司机电话	Varchar2(15)	15
             * driverName	String	司机名称	Varchar2(10)	10
             * doctorPhone	String	医生电话	Varchar2(15)	15
             * doctorName	String	医生名称	Varchar2(10)	10
             * caseId	String	CaseID	Varchar2(50)	50	必填由APP提供
             */
            Hashtable ht = new Hashtable();

            ht.Add("messageName", "SendCarInfo");
            ht.Add("caseId", sci.CASEID);
            ht.Add("cccc", sci.CCCC);
            ht.Add("ccsj", string.Format("{0:yyyy-MM-dd HH:mm:ss}", sci.CCSJ));
            ht.Add("clid", sci.CLID);
            ht.Add("cph", sci.CPH);
            ht.Add("doctorName", sci.DOCTORNAME);
            ht.Add("doctorPhone", sci.DOCTORPHONE);
            ht.Add("driverName", sci.DRIVERNAME);
            ht.Add("driverPhone", sci.DRIVERPHONE);
            ht.Add("lsh", sci.LSH);
            ht.Add("ssdw", sci.SSDW);

            return(ht);
        }
Esempio n. 2
0
        /// <summary>
        /// 维护车辆任务映射表,处理新的出车消息
        /// </summary>
        /// <param name="sci"></param>
        public void DealVehicleMap(SendCarInfo sci)
        {
            if (sci.CLID != null && sci.CLID != "")
            {
                VehicleTaskInfo info = new VehicleTaskInfo();
                info.CaseId  = sci.CASEID;
                info.CCCC    = sci.CCCC;
                info.LSH     = sci.LSH;
                info.AddTime = DateTime.Now;

                VehicleTaskMapLock.EnterWriteLock();
                try
                {
                    if (VehicleTaskMap.ContainsKey(sci.CLID))
                    {
                        VehicleTaskMap[sci.CLID] = info;
                    }
                    else
                    {
                        VehicleTaskMap.Add(sci.CLID, info);
                    }
                }
                catch { }
                finally
                {
                    VehicleTaskMapLock.ExitWriteLock();
                }
            }
        }
Esempio n. 3
0
        /// <summary>
        /// 发送派车信息给route server
        /// </summary>
        /// <param name="sci"></param>
        public void SendCarInfo(SendCarInfo sci)
        {
            Hashtable      ht      = GetSendCarInfoHashtableByModel(sci);
            ScsTextMessage message = new ScsTextMessage(JSON.Encode(ht));

            SendMessage(message);
        }
Esempio n. 4
0
 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;
 }
Esempio n. 5
0
        private SendCarInfo GetSendCarInfoModelByMessage(string strMsg)
        {
            //[5182LSH:2016061300000000004*#CLID:101*#CCCC:01*#CPH:鄂K06772*#CCSJ:2016-06-13 10:38:11*#
            //SSDW:孝感市中心医院*#DriverPhone:*#DriverName:刘豫*#DoctorPhone:*#DoctorName:孙光辉*#
            //CaseID:d04221ed-e1c7-48dc-bf59-3a408b16ba70*#TH:0*#]
            SendCarInfo sci = new SendCarInfo();

            sci.CASEID = GetValueByKey(strMsg, "CaseID");
            if (GetValueByKey(strMsg, "CCCC") != "")
            {
                sci.CCCC = int.Parse(GetValueByKey(strMsg, "CCCC"));
            }
            sci.CLID = GetValueByKey(strMsg, "CLID");
            if (GetValueByKey(strMsg, "CCSJ") != "")
            {
                sci.CCSJ = DateTime.Parse(GetValueByKey(strMsg, "CCSJ"));
            }
            sci.CPH         = GetValueByKey(strMsg, "CPH");
            sci.DOCTORNAME  = GetValueByKey(strMsg, "DoctorName");
            sci.DOCTORPHONE = GetValueByKey(strMsg, "DoctorPhone");
            sci.DRIVERPHONE = GetValueByKey(strMsg, "DriverPhone");
            sci.DRIVERNAME  = GetValueByKey(strMsg, "DriverName");
            sci.LSH         = GetValueByKey(strMsg, "LSH");
            sci.SSDW        = GetValueByKey(strMsg, "SSDW");
            return(sci);
        }
Esempio n. 6
0
        /// <summary>
        /// 增加一条数据
        /// </summary>
        public bool Add(SendCarInfo model)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append("insert into sendcarinfo(");
            strSql.Append("CASEID,LSH,CCCC,CLID,CPH,CCSJ,SSDW,DRIVERPHONE,DRIVERNAME,DOCTORPHONE,DOCTORNAME,ADDTIME)");
            strSql.Append(" values (");
            strSql.Append("@CASEID,@LSH,@CCCC,@CLID,@CPH,@CCSJ,@SSDW,@DRIVERPHONE,@DRIVERNAME,@DOCTORPHONE,@DOCTORNAME,@ADDTIME)");
            MySqlParameter[] parameters =
            {
                new MySqlParameter("@CASEID",      DBOpHelper.GetString(model.CASEID)),
                new MySqlParameter("@LSH",         DBOpHelper.GetString(model.LSH)),
                new MySqlParameter("@CCCC",        DBOpHelper.GetNumber(model.CCCC)),
                new MySqlParameter("@CLID",        DBOpHelper.GetString(model.CLID)),
                new MySqlParameter("@CPH",         DBOpHelper.GetString(model.CPH)),
                new MySqlParameter("@CCSJ",        DBOpHelper.GetDateTime(model.CCSJ)),
                new MySqlParameter("@SSDW",        DBOpHelper.GetString(model.SSDW)),
                new MySqlParameter("@DRIVERPHONE", DBOpHelper.GetString(model.DRIVERPHONE)),
                new MySqlParameter("@DRIVERNAME",  DBOpHelper.GetString(model.DRIVERNAME)),
                new MySqlParameter("@DOCTORPHONE", DBOpHelper.GetString(model.DOCTORPHONE)),
                new MySqlParameter("@DOCTORNAME",  DBOpHelper.GetString(model.DOCTORNAME)),
                new MySqlParameter("@ADDTIME",     DBOpHelper.GetDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")))
            };

            int rows = DbHelperMySQL.ExecuteSql(strSql.ToString(), parameters);

            if (rows > 0)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
Esempio n. 7
0
        /// <summary>
        /// 增加一条数据
        /// </summary>
        public bool Add(SendCarInfo model)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append("insert into SendCarInfo(");
            strSql.Append("CASEID,LSH,CCCC,CLID,CPH,CCSJ,SSDW,DRIVERPHONE,DRIVERNAME,DOCTORPHONE,DOCTORNAME,ADDTIME)");
            strSql.Append(" values (");
            strSql.Append(":CASEID,:LSH,:CCCC,:CLID,:CPH,:CCSJ,:SSDW,:DRIVERPHONE,:DRIVERNAME,:DOCTORPHONE,:DOCTORNAME,:ADDTIME)");
            OracleParameter[] parameters =
            {
                new OracleParameter(":CASEID",      DBOpHelper.GetString(model.CASEID)),
                new OracleParameter(":LSH",         DBOpHelper.GetString(model.LSH)),
                new OracleParameter(":CCCC",        DBOpHelper.GetNumber(model.CCCC)),
                new OracleParameter(":CLID",        DBOpHelper.GetString(model.CLID)),
                new OracleParameter(":CPH",         DBOpHelper.GetString(model.CPH)),
                new OracleParameter(":CCSJ",        DBOpHelper.GetDateTime(model.CCSJ)),
                new OracleParameter(":SSDW",        DBOpHelper.GetString(model.SSDW)),
                new OracleParameter(":DRIVERPHONE", DBOpHelper.GetString(model.DRIVERPHONE)),
                new OracleParameter(":DRIVERNAME",  DBOpHelper.GetString(model.DRIVERNAME)),
                new OracleParameter(":DOCTORPHONE", DBOpHelper.GetString(model.DOCTORPHONE)),
                new OracleParameter(":DOCTORNAME",  DBOpHelper.GetString(model.DOCTORNAME)),
                new OracleParameter(":ADDTIME",     DBOpHelper.GetDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")))
            };

            int rows = DbHelperOra.ExecuteSql(SysParameters.DBConnectString, strSql.ToString(), parameters);

            if (rows > 0)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
Esempio n. 8
0
        public void HandleCarInfo(SendCarInfo sci)
        {
            try
            {
                //Save Database
                //DBSendCarInfo db = new DBSendCarInfo();
                IDBSendCarInfo db = DataAccess.DataAccess.GetDBSendCarInfo();
                db.Add(sci);

                CarInfoManagerDelegateClient client = new CarInfoManagerDelegateClient();
                client.addCarInfoCompleted += new EventHandler <addCarInfoCompletedEventArgs>(Service_Completed);
                CredentialSoapHeader header = new CredentialSoapHeader();
                header.Username = SysParameters.AppAPIUsername;
                header.Password = SysParameters.AppAPIPassword;
                string strJson = ConvertModelToJson(sci);

                WebserviceUserState UserState = new WebserviceUserState();
                UserState.TIMES   = 1;
                UserState.MESSAGE = strJson;

                //{"driverName":"刘豫","doctorPhone":"13871887869","doctorName":"孙光辉","ccsj":"2016-06-13 17:00:09","ssdw":"孝感市中心医院","driverPhone":"13871888610","caseId":"a07aa295-e5f0-41bb-858d-277b1e3479ff","lsh":"2016061300000000005","cph":"鄂K06772","clid":"101","cccc":2}
                client.addCarInfoAsync(header, strJson, UserState);
            }
            catch (Exception ex)
            {
                LogHelper.WriteLog("", ex);
            }
        }
Esempio n. 9
0
 /// <summary>
 ///  派车告知消息
 /// </summary>
 /// <param name="strMsg"></param>
 private void Handle5182Message(string strMsg)
 {
     if (strMsg.Substring(0, 1) == "[" && strMsg.Substring(strMsg.Length - 3, 3) == "*#]")
     {
         SendCarInfo sci = GetSendCarInfoModelByMessage(strMsg);
         CoreService.GetInstance().OtherMsgServer.SendCarInfo(sci);
         CoreService.GetInstance().bs.DealVehicleMap(sci);
     }
 }
Esempio n. 10
0
 private void HandleSendCarInfo(Hashtable htMessage)
 {
     try
     {
         SendCarInfo sci = GetSendCarInfoModelByHashtable(htMessage);
         Appserver.SendCarInfo(sci);
     }
     catch (Exception ex)
     {
         LogHelper.WriteLog("", ex);
     }
 }
Esempio n. 11
0
        private SendCarInfo GetSendCarInfoModelByHashtable(Hashtable htMessage)
        {
            SendCarInfo sci = new SendCarInfo();

            if (htMessage["caseId"] != null)
            {
                sci.CASEID = htMessage["caseId"].ToString();
            }
            if (htMessage["cccc"] != null && htMessage["cccc"].ToString() != "")
            {
                sci.CCCC = int.Parse(htMessage["cccc"].ToString());
            }

            if (htMessage["ccsj"] != null && htMessage["ccsj"].ToString() != "")
            {
                sci.CCSJ = DateTime.Parse(htMessage["ccsj"].ToString());
            }
            if (htMessage["clid"] != null)
            {
                sci.CLID = htMessage["clid"].ToString();
            }
            if (htMessage["cph"] != null)
            {
                sci.CPH = htMessage["cph"].ToString();
            }
            if (htMessage["doctorName"] != null)
            {
                sci.DOCTORNAME = htMessage["doctorName"].ToString();
            }
            if (htMessage["doctorPhone"] != null)
            {
                sci.DOCTORPHONE = htMessage["doctorPhone"].ToString();
            }
            if (htMessage["driverName"] != null)
            {
                sci.DRIVERNAME = htMessage["driverName"].ToString();
            }
            if (htMessage["driverPhone"] != null)
            {
                sci.DRIVERPHONE = htMessage["driverPhone"].ToString();
            }
            if (htMessage["lsh"] != null)
            {
                sci.LSH = htMessage["lsh"].ToString();
            }
            if (htMessage["ssdw"] != null)
            {
                sci.SSDW = htMessage["ssdw"].ToString();
            }
            return(sci);
        }
Esempio n. 12
0
        //处理派车消息
        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);
            }
        }
Esempio n. 13
0
        private string ConvertModelToJson(SendCarInfo sci)
        {
            string    strJson = "";
            Hashtable ht      = new Hashtable();

            ht.Add("caseId", sci.CASEID);
            ht.Add("cccc", sci.CCCC);
            ht.Add("ccsj", string.Format("{0:yyyy-MM-dd HH:mm:ss}", sci.CCSJ));
            ht.Add("clid", sci.CLID);
            ht.Add("cph", sci.CPH);
            ht.Add("doctorName", sci.DOCTORNAME);
            ht.Add("doctorPhone", sci.DOCTORPHONE);
            ht.Add("driverName", sci.DRIVERNAME);
            ht.Add("driverPhone", sci.DRIVERPHONE);
            ht.Add("lsh", sci.LSH);
            ht.Add("ssdw", sci.SSDW);

            strJson = JSON.Encode(ht);
            return(strJson);
        }
Esempio n. 14
0
 public void SendCarInfo(SendCarInfo sci)
 {
     aci.HandleCarInfo(sci);
 }