Exemplo n.º 1
0
        private string method_1()
        {
            string str = string.Empty;
            int    num = NumHelper.Convert16To10(this.protocolDrData_0.ContextData.Substring(0, 4));

            if (num == 0)
            {
                return(str + "多媒体总数:0");
            }
            object obj2 = str;

            str = string.Concat(new object[] { obj2, "多媒体总数:", num, Environment.NewLine });
            string str2       = this.protocolDrData_0.ContextData.Substring(4);
            int    num2       = str2.Length / 70;
            int    startIndex = 0;

            for (int i = 0; i < num2; i++)
            {
                str         = str + "多媒体ID:" + NumHelper.Convert16To10ToString(str2.Substring(startIndex, 8));
                startIndex += 8;
                str         = str + ",多媒体类型:" + ((MenuDefine.MutilMediaType)NumHelper.Convert16To10(str2.Substring(startIndex, 2))).ToString();
                startIndex += 2;
                str         = str + ",通道ID:" + NumHelper.Convert16To10ToString(str2.Substring(startIndex, 2));
                startIndex += 2;
                str         = str + ",事件项编码:" + ((MenuDefine.AccidentCode)NumHelper.Convert16To10(str2.Substring(startIndex, 2))).ToString();
                startIndex += 2;
                str         = str + ",时间:" + NumHelper.GetBCDDataTime(str2.Substring(startIndex, 0x38).Substring(0x2c, 12)) + Environment.NewLine;
                startIndex += 0x38;
            }
            return(str);
        }
Exemplo n.º 2
0
        public override string Parse()
        {
            string str  = string.Empty;
            string str2 = NumHelper.Convert16To10ToString(base.MessageAlarmText.Substring(0, 4));

            return(str + "人工确认事件报警ID:" + str2);
        }
Exemplo n.º 3
0
        public void GetDriverInfomationUpData(DataRow dataRow_0)
        {
            string str2 = NumHelper.Convert16To10ToString(this.protocolDrData_0.ContextData.Substring(2, 6));
            string str3 = NumHelper.GetStringFromBase16ASCII(this.protocolDrData_0.ContextData.Substring(8, 0x24)).Replace("\0", "");

            dataRow_0["OrderName"] = "驾驶员身份数据应答";
            dataRow_0["Describe"]  = "驾驶员编号:" + str2 + ",机动车驾驶证号:" + str3;
        }
Exemplo n.º 4
0
        public override string Parse()
        {
            string str2 = NumHelper.Convert16To10ToString(base.MessageAlarmText.Substring(0, 8));
            string str3 = NumHelper.Convert16To10ToString(base.MessageAlarmText.Substring(8, 4));
            string str4 = base.MessageAlarmText.Substring(12);

            return((("路段ID:" + str2) + ",行驶时间:" + str3) + ",结果:" + this.method_0(str4));
        }
Exemplo n.º 5
0
        public override string Parse()
        {
            string str2 = base.MessageAlarmText.Substring(0, 2);
            string str3 = NumHelper.Convert16To10ToString(base.MessageAlarmText.Substring(2, 8));
            string str4 = base.MessageAlarmText.Substring(10);

            return((("类型:" + this.method_0(str2)) + ",ID:" + str3) + ",方向:" + this.method_1(str4));
        }
Exemplo n.º 6
0
        public override string Parse()
        {
            string str  = string.Empty;
            string str2 = NumHelper.Convert16To10ToString(base.MessageAlarmText.Substring(0, 8));

            if (str2 == "-1")
            {
                return("");
            }
            return(str + "分段超速报警路线ID:" + str2);
        }
Exemplo n.º 7
0
        private string method_0()
        {
            NumHelper.Convert16To10ToString(this.protocolDrData_0.ContextData.Substring(0, 8));
            int    num  = NumHelper.Convert16To10(this.protocolDrData_0.ContextData.Substring(8, 2));
            string str  = "多媒体类型:" + ((MenuDefine.MutilMediaType)num).ToString();
            int    num2 = NumHelper.Convert16To10(this.protocolDrData_0.ContextData.Substring(10, 2));

            str = str + ",多媒体格式编码:" + ((MenuDefine.MutilMediaFormat)num2).ToString();
            int num3 = NumHelper.Convert16To10(this.protocolDrData_0.ContextData.Substring(12, 2));

            return((str + ",事件现编码:" + ((MenuDefine.AccidentCode)num3).ToString()) + ",通道ID:" + NumHelper.Convert16To10ToString(this.protocolDrData_0.ContextData.Substring(14)));
        }
Exemplo n.º 8
0
        public override string Parse()
        {
            string str  = string.Empty;
            string str2 = base.MessageAlarmText.Substring(0, 2);
            string str3 = NumHelper.Convert16To10ToString(base.MessageAlarmText.Substring(2));

            str = "类型:" + this.method_0(str2);
            if (!str2.Equals("00"))
            {
                str = str + ",ID:" + str3;
            }
            return(str);
        }
Exemplo n.º 9
0
        public void GetZipDataUpData(DataRow dataRow_0)
        {
            dataRow_0["OrderName"] = "压缩数据";
            int num = NumHelper.Convert16To10(this.protocolDrData_0.ContextData.Substring(0, 8));

            if (num == 0)
            {
                dataRow_0["Describe"] = "无数据";
            }
            else
            {
                string str = NumHelper.Convert16To10ToString(this.protocolDrData_0.ContextData.Substring(8, num * 2));
                dataRow_0["Describe"] = str;
            }
        }
Exemplo n.º 10
0
        public void GetDownPlatRequestUpData(DataRow dataRow_0)
        {
            string str  = NumHelper.Convert16To10ToString(this.protocolDrData_0.ContextData.Substring(0, 2));
            string str2 = NumHelper.GetStringFromBase16ASCII(this.protocolDrData_0.ContextData.Substring(2, 0x18)).Replace("\0", "");
            string str3 = NumHelper.Convert16To10ToString(this.protocolDrData_0.ContextData.Substring(0x1a, 8));
            string s    = NumHelper.Convert16To10ToString(this.protocolDrData_0.ContextData.Substring(0x22, 8));
            string str5 = NumHelper.GetStringFromBase16ASCII(this.protocolDrData_0.ContextData.Substring(0x2a, int.Parse(s) * 2)).Replace("\0", "");

            dataRow_0["OrderName"]   = "下发平台间报文请求";
            dataRow_0["CarNum"]      = "";
            dataRow_0["msgType"]     = "4911";
            dataRow_0["Describe"]    = "消息ID:" + str3 + ",消息内容:" + str5.Replace(",", ",") + ",查岗对象类型:" + str + ",查岗对象的ID:" + str2;
            dataRow_0["OrderType"]   = "接收";
            dataRow_0["OBJECT_TYPE"] = str;
            dataRow_0["OBJECT_ID"]   = str2;
        }
Exemplo n.º 11
0
        public void GetCarDoubtfulDataUpData(DataRow dataRow_0)
        {
            dataRow_0["OrderName"] = "事故疑点数据应答";
            string str = " " + Environment.NewLine;
            SortedDictionary <DateTime, string> dictionary = new SortedDictionary <DateTime, string>();
            string str2 = string.Empty;
            string str3 = string.Empty;
            string str4 = this.protocolDrData_0.ContextData.Substring(2);
            string str5 = "";

            while (str4.Length > 0)
            {
                SortedDictionary <DateTime, string> dictionary3;
                DateTime time3;
                DateTime time = Convert.ToDateTime(NumHelper.GetBCDDataTime(str4.Substring(0, 12)));
                dictionary[time] = "";
                for (string str6 = str4.Substring(12, 400); str6.Length > 0; str6 = str6.Substring(40))
                {
                    SortedDictionary <DateTime, string> dictionary2 = dictionary;
                    DateTime time2 = time;
                    string   str7  = str6.Substring(0, 40);
                    str2 = "";
                    str3 = "";
                    while (str7.Length > 0)
                    {
                        str2 = str2 + NumHelper.Convert16To10ToString(str7.Substring(0, 2)) + ",";
                        str3 = str3 + (((NumHelper.Convert16To10(str7.Substring(2, 2)) & 0x80) == 0) ? "关," : "开,");
                        str7 = str7.Substring(4);
                    }
                    string str8 = dictionary2[time2];
                    (dictionary2 = dictionary)[time2 = time] = str8 + "速度:" + str2.Trim(new char[] { ',' }) + str + "制动:" + str3.Trim(new char[] { ',' }) + str;
                }
                (dictionary3 = dictionary)[time3 = time] = dictionary3[time3] + str;
                str4 = str4.Substring(0x19c);
            }
            int num = 0;

            foreach (KeyValuePair <DateTime, string> pair in dictionary)
            {
                num++;
                object obj2 = str5;
                str5 = string.Concat(new object[] { obj2, "事故疑点", num, ":\n时间:", pair.Key.ToString(), "\n" });
                str5 = str5 + pair.Value;
            }
            dataRow_0["Describe"] = str5;
        }
Exemplo n.º 12
0
        /// <summary>
        /// 平台查岗请求处理
        /// </summary>
        /// <param name="dr"></param>
        public void GetPlatRequestUpData(DataRow dr)
        {
            //对应存储过程WebGpsClient_GetOutEquipmentData返回列propertyData除掉前4个字符,定义见Protocol.ProtocolDrData
            string contextData = this.protocolDrData_0.ContextData;
            //查岗对象类型 OBJECT_TYPE, 重庆运管定义1为自动查岗,2为手动查岗
            string sObjectType = NumHelper.Convert16To10ToString(contextData.Substring(0, 2));
            //重庆运管要求:
            //OBJECT_TYPE 为1 时OBJECT_ID 为查岗对象ID, 值为5000000+ 平台接入码( 行政区划码+ 平台唯一编码)
            //当OBJECT_TYPE 为2,OBJECT_ID 为业户经营许可证号;
            //当OBJECT_TYPE为3 时,OBJECT_ID值为5000000+平台接入码(行政区划码+平台唯一编码),例如50000008960
            string sObjectId = NumHelper.GetStringFromBase16ASCII(contextData.Substring(2, 24)).Replace("\0", "");
            //信息ID
            string sIndex = NumHelper.Convert16To10ToString(contextData.Substring(26, 8));
            //内容长度
            string sLen = NumHelper.Convert16To10ToString(contextData.Substring(34, 8));
            //取得内容
            string sContant           = NumHelper.GetStringFromBase16ASCII(contextData.Substring(42, int.Parse(sLen) * 2)).Replace("\0", "");
            string userIdByRegionCode = string.Empty;
            string workIdByUserId     = string.Empty;

            if (sObjectType.Equals("1"))
            {
                if (!string.IsNullOrEmpty(sContant) && (sContant.IndexOf("请回复当前全部在线业户") != -1))
                {
                    workIdByUserId = "-1";
                    string str10 = this.method_3(sObjectType, sObjectId, sIndex, "当前在线业户列表:=" + AskConfigerParameter.GetAutoRelyInfoString());
                    try
                    {
                        AskConfigerParameter.InsertCommandParameterToDB("8613489997299", 999, 16900, str10);
                        //修改如果自动查岗,则不发送消息到客户端 huzh 2014.1.22
                        workIdByUserId = "-2";
                        dr["WrkId"]    = workIdByUserId;
                        return;
                        //修改如果为重庆运管自动查岗则不需要发送到客户端,by huzh 2014.1.8
                        //goto Label_0147;
                    }
                    catch (Exception exception)
                    {
                        throw new Exception("自动回答发生错误:" + exception.Message + exception.StackTrace);
                    }
                }
                userIdByRegionCode = AskConfigerParameter.GetUserIdByRegionCode(sObjectId);
            }
            else if (sObjectType.Equals("2"))
            {
                if (!string.IsNullOrEmpty(sContant) && (sContant.IndexOf("OBJECT_ID:=") != -1))
                {
                    //重庆运管要求,由于营运证长度最长为15位,因此INFO_CONTENT内容格式改为:
                    //OBJECT_ID:=500101000001-3;手工查岗问题及答案:=问题|1,答案1;2,答案2;3,答案3;4,答案4
                    //因此替换查岗对象
                    string[] array = sContant.Split(new char[] { ';' });
                    sObjectId = array[0].Substring(array[0].IndexOf('=') + 1);
                }
                userIdByRegionCode = AskConfigerParameter.GetUserIdByYYZCarId(sObjectId);
            }
            else if (sObjectType.Equals("3"))
            {
                workIdByUserId = "0";
            }
            //Label_0147:
            if (string.IsNullOrEmpty(workIdByUserId) && !string.IsNullOrEmpty(userIdByRegionCode))
            {
                workIdByUserId = AskConfigerParameter.GetWorkIdByUserId(userIdByRegionCode);
            }
            if (string.IsNullOrEmpty(workIdByUserId))
            {
                workIdByUserId = "-1";
            }
            dr["WrkId"]     = workIdByUserId;
            dr["msgType"]   = "4353";
            dr["CarNum"]    = "";
            dr["OrderName"] = "平台查岗请求";
            dr["Describe"]  = "消息ID:" + sIndex + ",消息内容:" + sContant.Replace(",", ",") + ",查岗对象类型:" + sObjectType + ",查岗对象的ID:" + sObjectId;
            dr["OrderType"] = "接收";
            LogMsg msg = new LogMsg("JTBDataParse", "GetPlatRequestUpData", dr["Describe"].ToString() + " workIdByUserId: " + workIdByUserId + " userIdByRegionCode: " + userIdByRegionCode);

            new LogHelper().WriteLog(msg);
        }
Exemplo n.º 13
0
        public void GetMessagePlayData(DataRow dataRow_0)
        {
            string str  = this.protocolDrData_0.ContextData.Substring(0, 2);
            int    num  = NumHelper.Convert16To10(this.protocolDrData_0.ContextData.Substring(2));
            string str3 = "消息ID:0x" + str + ",消息内容:" + UpdataInsertDBInfor.GetMenuName(str);

            if (num == 0)
            {
                dataRow_0["OrderName"] = "信息点播/取消应答";
                str3 = str3 + ",消息类型:取消";
            }
            else
            {
                dataRow_0["OrderName"] = "信息点播/取消应答";
                str3 = str3 + ",消息类型:点播";
            }
            dataRow_0["Describe"] = str3;
            UpdataInsertDBInfor.UpdateMenuInfor(((dataRow_0[14] == DBNull.Value) ? "0" : dataRow_0["SimNum"].ToString()).ToString(), "2", NumHelper.Convert16To10ToString(str), num != 0);
        }