コード例 #1
0
        public long icar_SendRawPackage(CmdParam.ParamType ParamType, string SimNum, string CarPw, CmdParam.CommMode CommMode, TrafficRawPackage trafficRawPackage, string CarID)
        {
            long num = (long)-1;

            this.logMsg.FunctionName = "icar_SendRawPackage";
            LogMsg logMsg = this.logMsg;

            string[] str = new string[] { "发送:类型-", ParamType.ToString(), ",车辆-", SimNum, ",指令-", trafficRawPackage.OrderCode.ToString(), ",参数-", trafficRawPackage.strText };
            logMsg.Msg = string.Concat(str);
            string msg = this.logMsg.Msg;

            this.log.WriteLog(this.logMsg);
            if (!this.isStartCommon())
            {
                num = (long)-1;
            }
            else
            {
                try
                {
                    int    num1       = 1;
                    int    newOrderId = DownData.CarCmdSend.GetNewOrderId();
                    string str1       = "";
                    string xmlString  = trafficRawPackage.ToXmlString(this.CalOrderId(num1, newOrderId), SimNum, "JTBGPS", (int)CommMode, "SendRawPackage", ref str1);
                    num = DownData.CarCmdSend.icar_SendCmdXML(num1, newOrderId, SimNum, "JTBGPS", (int)trafficRawPackage.OrderCode, (int)CommMode, xmlString);
                    if (num == (long)0)
                    {
                        ReadDataFromDB.execSaveGpsLogTable(num1, newOrderId, CarID, (int)trafficRawPackage.OrderCode, trafficRawPackage.strText);
                    }
                    else
                    {
                        AlarmMsg alarmMsg = new AlarmMsg()
                        {
                            ClassName    = "GpsPicDownData",
                            FunctionName = "icar_SendRawPackage"
                        };
                        string[] simNum = new string[] { "异常发送:", SimNum, "类型-", ParamType.ToString(), ",车辆-", SimNum, ",指令-", trafficRawPackage.OrderCode.ToString(), ",参数-", trafficRawPackage.strText };
                        alarmMsg.AlarmText = string.Concat(simNum);
                        alarmMsg.Code      = num.ToString();
                        this.log.WriteAlarm(alarmMsg);
                    }
                }
                catch (Exception exception1)
                {
                    Exception exception = exception1;
                    ErrorMsg  errorMsg  = new ErrorMsg()
                    {
                        ClassName = "GpsPicDownData",
                        ErrorText = "下发消息指令时发生错误!"
                    };
                    this.log.WriteError(errorMsg, exception);
                    num = (long)-1;
                }
            }
            return(num);
        }
コード例 #2
0
        public long iCar_SetPosReport(CmdParam.ParamType ParamType, string SimNum, string CarPw, CmdParam.CommMode CommMode, PosReport posReport, int CarID)
        {
            long num = (long)0;

            this.logMsg.FunctionName = "iCar_SetPosReport";
            this.logMsg.Msg          = string.Concat("发送:类型-", ParamType.ToString(), ",车辆-", SimNum);
            if (!this.isStartCommon())
            {
                num = (long)-1;
            }
            else
            {
                try
                {
                    this.log.WriteLog(this.logMsg);
                    int newOrderId = DownData.CarCmdSend.GetNewOrderId();
                    num = DownData.CarCmdSend.icar_SetPosReport(this.WorkId, newOrderId, SimNum, posReport.ReportType, posReport.ReportTiming, posReport.ReportCycle, posReport.IsAutoCalArc, posReport.isCompressed, posReport.ReportWhenStop);
                    if (num == (long)0)
                    {
                        ReadDataFromDB.execSaveGpsLogTable(this.WorkId, newOrderId, CarID.ToString(), (int)posReport.OrderCode, "LBS单次定位");
                    }
                    else
                    {
                        AlarmMsg alarmMsg = new AlarmMsg()
                        {
                            ClassName    = "GpsPicDownData",
                            FunctionName = "iCar_SetPosReport"
                        };
                        object[] workId = new object[] { "workid-", this.WorkId, ",simNum-", SimNum, ",strMsg-调用位置查询" };
                        alarmMsg.AlarmText = string.Concat(workId);
                        alarmMsg.Code      = num.ToString();
                        this.log.WriteAlarm(alarmMsg);
                    }
                }
                catch (Exception exception1)
                {
                    Exception exception = exception1;
                    ErrorMsg  errorMsg  = new ErrorMsg()
                    {
                        ClassName = "GpsPicDownData",
                        ErrorText = "下发消息指令时发生错误!"
                    };
                    this.log.WriteError(errorMsg, exception);
                    num = (long)-1;
                }
            }
            return(num);
        }
コード例 #3
0
ファイル: SendBase.cs プロジェクト: lexzh/Myproject
        private CarInfo method_3(CmdParam.ParamType paramType, string str)
        {
            //修改类型判断
            switch (paramType)
            {
            case CmdParam.ParamType.CarNum:
                return(CarDataInfoBuffer.GetDataCarInfoByCarNum(str));

            case CmdParam.ParamType.CarId:
                return(CarDataInfoBuffer.GetDataCarInfoByCarId(str));

            case CmdParam.ParamType.SimNum:
                return(CarDataInfoBuffer.GetDataCarInfoBySimNum(str));
            }
            return(null);
        }
コード例 #4
0
ファイル: SendBase.cs プロジェクト: lexzh/Myproject
 protected bool CheckCar(CmdParam.ParamType paramType_0, string string_1, string string_2)
 {
     if ((this.carInfoList != null) && (this.carInfoList.Count > 0))
     {
         this.carInfoList.Clear();
         this.carInfoList.TrimToSize();
     }
     if (string.IsNullOrEmpty(string_1))
     {
         this.ErrorMsg = "请输入查询内容!";
         return(false);
     }
     string[] strArray = string_1.Split(new char[] { ',' });
     if ((strArray.Length > 1) && !this.IsMultiSend)
     {
         this.ErrorMsg = "不允许多车发送!";
         return(false);
     }
     if (strArray.Length > 500)
     {
         this.ErrorMsg = "下发指令的车辆数不能超过500!";
         return(false);
     }
     foreach (string str in strArray)
     {
         CarInfo info = this.method_3(paramType_0, str);
         if (!this.method_0(info))
         {
             return(false);
         }
         if ((this.IsAllowNullPassWord && (strArray.Length == 1)) && !this.method_2(info.SimNum, string_2))
         {
             this.ErrorMsg = "车辆密码不对!";
             return(false);
         }
         this.carInfoList.Add(info);
     }
     return(true);
 }
コード例 #5
0
        protected virtual void btnOK_Click(object sender, EventArgs e)
        {
            this.sValue = this.txtCarNo.Text.Trim();
            if (!this.saveCarFormParam())
            {
                return;
            }
            DataTable allCarEx = MainForm.myCarList.GetAllCar();

            if (!this.cmbType.SelectedValue.ToString().Equals("3"))
            {
                this.ParamType = (CmdParam.ParamType) this.cmbType.SelectedValue;
            }
            else
            {
                this.ParamType = CmdParam.ParamType.CarId;
                string caridByWaybillCode = MainForm.myCarList.getCaridByWaybillCode(ref this.sValue);
                if (!string.IsNullOrEmpty(caridByWaybillCode))
                {
                    MessageBox.Show(caridByWaybillCode);
                    this.sValue = "";
                    return;
                }
            }
            this.sPw = this.txtPassword.Text;
            if (this.sValue.Length <= 0)
            {
                MessageBox.Show("请输入查询内容!");
                this.txtCarNo.Focus();
                return;
            }
            string str = "SimNum='{0}'";

            switch (this.ParamType)
            {
            case CmdParam.ParamType.CarNum:
            {
                if (this.sValue == this.sCarNum)
                {
                    return;
                }
                str = "CarNum='{0}'";
                break;
            }

            case CmdParam.ParamType.CarId:
            {
                if (this.sValue == this.sCarId)
                {
                    return;
                }
                str = "CarId='{0}'";
                break;
            }

            case CmdParam.ParamType.SimNum:
            {
                if (this.sValue == this.sCarSimNum)
                {
                    return;
                }
                str = "SimNum='{0}'";
                break;
            }
            }
            string str1 = "";
            string str2 = "";
            string str3 = "";

            string[] strArrays = this.sValue.Split(new char[] { ',' });
            try
            {
                string[] strArrays1 = strArrays;
                int      num        = 0;
                while (num < (int)strArrays1.Length)
                {
                    string   str4      = strArrays1[num];
                    DataView dataViews = new DataView(allCarEx, string.Format(str, str4), "", DataViewRowState.CurrentRows);
                    if (dataViews.Count > 0)
                    {
                        str1 = string.Concat(str1, dataViews[0]["CarId"].ToString(), ",");
                        str2 = string.Concat(str2, dataViews[0]["CarNum"].ToString(), ",");
                        str3 = string.Concat(str3, dataViews[0]["SimNum"].ToString(), ",");
                        num++;
                    }
                    else
                    {
                        MessageBox.Show(string.Format("目标车辆:{0},不存在。", str4));
                        this.sValue = "";
                        this.txtCarNo.Focus();
                        return;
                    }
                }
            }
            catch (Exception exception)
            {
                MessageBox.Show(string.Format("查询内容输入错误,请检查。", new object[0]));
                this.sValue = "";
                this.txtCarNo.Focus();
                return;
            }
            char[] chrArray = new char[] { ',' };
            this.sCarId = str1.Trim(chrArray);
            char[] chrArray1 = new char[] { ',' };
            this.sCarNum = str2.Trim(chrArray1);
            char[] chrArray2 = new char[] { ',' };
            this.sCarSimNum = str3.Trim(chrArray2);
        }
コード例 #6
0
        public Response icar_SetCommonCmd(CmdParam.ParamType paramType_0, string string_1, string string_2, CmdParam.CommMode commMode_0, SimpleCmd simpleCmd_0)
        {
            Response response = new Response();
            string   str      = "";

            if ((simpleCmd_0.CmdParams != null) && (simpleCmd_0.CmdParams.Count > 0))
            {
                foreach (string[] strArray in simpleCmd_0.CmdParams)
                {
                    string str6 = str;
                    str = str6 + "命令码-" + simpleCmd_0.OrderCode.ToString() + ",参数-" + this.method_5(strArray, 0) + ";";
                }
            }
            base.WriteLog(paramType_0.ToString(), string_1 + "," + str);
            if (!base.CheckCar(paramType_0, string_1, string_2))
            {
                response.ErrorMsg = base.ErrorMsg;
                return(response);
            }
            if (!base.isStartCommon())
            {
                response.ErrorMsg = base.ErrorMsg;
                return(response);
            }
            object obj2       = null;
            int    newOrderId = -1;

            foreach (Bussiness.CarInfo info in base.carInfoList)
            {
                try
                {
                    newOrderId = SendBase.CarCmdSend.GetNewOrderId();
                    int num2 = 0;
                    base.SaveCmdParm(newOrderId.ToString() + "|" + info.CarId.ToString() + ";");
                    string orderIDParam = response.OrderIDParam;
                    response.OrderIDParam = orderIDParam + newOrderId.ToString() + "|" + info.CarId.ToString() + ";";
                    if ((simpleCmd_0.CmdParams != null) && (simpleCmd_0.CmdParams.Count > 0))
                    {
                        if (info.ProtocolName == SendBase.m_ProtocolName)
                        {
                            string conntent = "";
                            string str5     = simpleCmd_0.ToXmlString(base.CalOrderId(base.WorkId, newOrderId), info.SimNum, SendBase.m_ProtocolName, (int)commMode_0, "SimpleCmd", ref conntent);
                            base.AddUpDataLog(newOrderId, info.CarNum, simpleCmd_0.OrderCode.ToString(), conntent);
                            response.ResultCode = SendBase.CarCmdSend.icar_SendCmdXML(base.WorkId, newOrderId, info.SimNum, SendBase.m_ProtocolName, (int)simpleCmd_0.OrderCode, (int)commMode_0, str5);
                        }
                        else
                        {
                            foreach (string[] strArray2 in simpleCmd_0.CmdParams)
                            {
                                base.AddUpDataLog(newOrderId, info.CarNum, simpleCmd_0.OrderCode.ToString(), this.method_5(strArray2, (int)simpleCmd_0.OrderCode));
                                obj2 = this.method_6(strArray2);
                                response.ResultCode = SendBase.CarCmdSend.icar_SetCommonCmd(base.WorkId, newOrderId, info.SimNum, simpleCmd_0.CmdCode, ref obj2, commMode_0);
                                if ((simpleCmd_0.CmdParams.Count - num2) > 1)
                                {
                                    Thread.Sleep(0x7d0);
                                }
                                num2++;
                                if (response.ResultCode != 0L)
                                {
                                    base.WriteError(base.WorkId.ToString(), info.SimNum, simpleCmd_0.OrderCode.ToString());
                                }
                            }
                        }
                    }
                    else
                    {
                        base.AddUpDataLog(newOrderId, info.CarNum, simpleCmd_0.OrderCode.ToString(), "");
                        if (info.ProtocolName == SendBase.m_ProtocolName)
                        {
                            string str2 = string.Empty;
                            string str3 = simpleCmd_0.ToXmlString(base.CalOrderId(base.WorkId, newOrderId), info.SimNum, SendBase.m_ProtocolName, (int)commMode_0, "SimpleCmd", ref str2);
                            response.ResultCode = SendBase.CarCmdSend.icar_SendCmdXML(base.WorkId, newOrderId, info.SimNum, SendBase.m_ProtocolName, (int)simpleCmd_0.OrderCode, (int)commMode_0, str3);
                        }
                        else
                        {
                            response.ResultCode = SendBase.CarCmdSend.icar_SetCommonCmd(base.WorkId, newOrderId, info.SimNum, simpleCmd_0.CmdCode, ref obj2, commMode_0);
                        }
                        if (response.ResultCode != 0L)
                        {
                            base.WriteError(base.WorkId.ToString(), info.SimNum, simpleCmd_0.OrderCode.ToString());
                        }
                        else if (simpleCmd_0.OrderCode == CmdParam.OrderCode.LBS位置查询)
                        {
                            base.userInfo.CarFilter.UpdatePosSearchFlag(simpleCmd_0.OrderCode.ToString(), newOrderId, info.CarId);
                        }
                    }
                }
                catch (Exception exception)
                {
                    response.ErrorMsg = "下发消息指令时发生错误,错误详细信息:" + exception.Message;
                    base.log.WriteError(base.errMsg, exception);
                }
            }
            return(response);
        }
コード例 #7
0
ファイル: CarForm.cs プロジェクト: lexzh/Myproject
 protected virtual void btnOK_Click(object sender, EventArgs e)
 {
     this.sValue = this.txtCarNo.Text.Trim();
     if (!this.saveCarFormParam())
     {
         return;
     }
     DataTable allCarEx = MainForm.myCarList.GetAllCar();
     if (!this.cmbType.SelectedValue.ToString().Equals("3"))
     {
         this.ParamType = (CmdParam.ParamType)this.cmbType.SelectedValue;
     }
     else
     {
         this.ParamType = CmdParam.ParamType.CarId;
         string caridByWaybillCode = MainForm.myCarList.getCaridByWaybillCode(ref this.sValue);
         if (!string.IsNullOrEmpty(caridByWaybillCode))
         {
             MessageBox.Show(caridByWaybillCode);
             this.sValue = "";
             return;
         }
     }
     this.sPw = this.txtPassword.Text;
     if (this.sValue.Length <= 0)
     {
         MessageBox.Show("请输入查询内容!");
         this.txtCarNo.Focus();
         return;
     }
     string str = "SimNum='{0}'";
     switch (this.ParamType)
     {
         case CmdParam.ParamType.CarNum:
             {
                 if (this.sValue == this.sCarNum)
                 {
                     return;
                 }
                 str = "CarNum='{0}'";
                 break;
             }
         case CmdParam.ParamType.CarId:
             {
                 if (this.sValue == this.sCarId)
                 {
                     return;
                 }
                 str = "CarId='{0}'";
                 break;
             }
         case CmdParam.ParamType.SimNum:
             {
                 if (this.sValue == this.sCarSimNum)
                 {
                     return;
                 }
                 str = "SimNum='{0}'";
                 break;
             }
     }
     string str1 = "";
     string str2 = "";
     string str3 = "";
     string[] strArrays = this.sValue.Split(new char[] { ',' });
     try
     {
         string[] strArrays1 = strArrays;
         int num = 0;
         while (num < (int)strArrays1.Length)
         {
             string str4 = strArrays1[num];
             DataView dataViews = new DataView(allCarEx, string.Format(str, str4), "", DataViewRowState.CurrentRows);
             if (dataViews.Count > 0)
             {
                 str1 = string.Concat(str1, dataViews[0]["CarId"].ToString(), ",");
                 str2 = string.Concat(str2, dataViews[0]["CarNum"].ToString(), ",");
                 str3 = string.Concat(str3, dataViews[0]["SimNum"].ToString(), ",");
                 num++;
             }
             else
             {
                 MessageBox.Show(string.Format("目标车辆:{0},不存在。", str4));
                 this.sValue = "";
                 this.txtCarNo.Focus();
                 return;
             }
         }
     }
     catch (Exception exception)
     {
         MessageBox.Show(string.Format("查询内容输入错误,请检查。", new object[0]));
         this.sValue = "";
         this.txtCarNo.Focus();
         return;
     }
     char[] chrArray = new char[] { ',' };
     this.sCarId = str1.Trim(chrArray);
     char[] chrArray1 = new char[] { ',' };
     this.sCarNum = str2.Trim(chrArray1);
     char[] chrArray2 = new char[] { ',' };
     this.sCarSimNum = str3.Trim(chrArray2);
 }
コード例 #8
0
        public long icar_SendCmdXML(CmdParam.ParamType ParamType, string SimNum, string CarId, string CarPw, string ProtocolName, CmdParam.CommMode CommMode, TxtMsg MsgContext, string sMsgType)
        {
            long num = (long)0;

            this.logMsg.FunctionName = "icar_SendTxtMsg";
            this.logMsg.Msg          = string.Concat("发送:类型-", ParamType.ToString(), ",车辆-", SimNum);
            string str    = string.Concat("消息类型-", MsgContext.MsgType.ToString(), string.Format(",{0}-", sMsgType), MsgContext.strMsg);
            LogMsg logMsg = this.logMsg;

            logMsg.Msg = string.Concat(logMsg.Msg, ",", str);
            this.log.WriteLog(this.logMsg);
            if (!this.isStartCommon())
            {
                num = (long)-1;
            }
            else
            {
                try
                {
                    int newOrderId = DownData.CarCmdSend.GetNewOrderId();
                    if (ProtocolName != "JTBGPS")
                    {
                        num = DownData.CarCmdSend.icar_SendTxtMsg(this.WorkId, newOrderId, SimNum, MsgContext.MsgType, MsgContext.strMsg);
                    }
                    else
                    {
                        MsgContext.TransformCode = CmdParam.TrafficProtocolCodeExchange((int)MsgContext.MsgType);
                        string str1      = "";
                        string xmlString = MsgContext.ToXmlString(this.CalOrderId(this.WorkId, newOrderId), SimNum, ProtocolName, (int)CommMode, "SimpleCmd", ref str1);
                        num = DownData.CarCmdSend.icar_SendCmdXML(this.WorkId, newOrderId, SimNum, ProtocolName, (int)MsgContext.MsgType, (int)CommMode, xmlString);
                    }
                    if (num == (long)0)
                    {
                        ReadDataFromDB.execSaveGpsLogTable(this.WorkId, newOrderId, CarId, (int)MsgContext.MsgType, MsgContext.strMsg);
                    }
                    if (num != (long)0)
                    {
                        AlarmMsg alarmMsg = new AlarmMsg()
                        {
                            ClassName    = "GpsPicDownData",
                            FunctionName = "icar_SendTxtMsg"
                        };
                        object[] workId = new object[] { "workid-", this.WorkId, ",simNum-", SimNum, ",strMsg-", MsgContext.strMsg };
                        alarmMsg.AlarmText = string.Concat(workId);
                        alarmMsg.Code      = num.ToString();
                        this.log.WriteAlarm(alarmMsg);
                    }
                }
                catch (Exception exception1)
                {
                    Exception exception = exception1;
                    ErrorMsg  errorMsg  = new ErrorMsg()
                    {
                        ClassName = "GpsPicDownData",
                        ErrorText = "下发消息指令时发生错误!"
                    };
                    this.log.WriteError(errorMsg, exception);
                    num = (long)-1;
                }
            }
            return(num);
        }
コード例 #9
0
        public long icar_SetCaptureEx(CmdParam.ParamType ParamType, string SimNum, string CarPw, CmdParam.CommMode CommMode, CaptureEx captureEx, string PicTime, string CarID)
        {
            long num = (long)0;

            this.logMsg.FunctionName = "icar_SetCaptureEx";
            this.logMsg.Msg          = string.Concat("发送:类型-", ParamType.ToString(), ",车辆-", SimNum);
            object[] picTime = new object[] { "抓拍时间-", PicTime, ",是否多帧-", captureEx.IsMulitFramebool, ",监控次数-", captureEx.Times, ",间隔时间-", (double)captureEx.Interval * 0.1, ",图像质量-", captureEx.Quality, ",图像亮度-", captureEx.Brightness, ",图像对比度-", captureEx.Contrast, ",图像饱和度-", captureEx.Saturation, ",图像色度", captureEx.Chroma, ",停车是否拍照-", captureEx.IsCapWhenStop };
            string   str     = string.Concat(picTime);
            LogMsg   logMsg  = this.logMsg;

            logMsg.Msg = string.Concat(logMsg.Msg, ",", str);
            this.log.WriteLog(this.logMsg);
            if (!this.isStartCommon())
            {
                num = (long)-1;
            }
            else
            {
                try
                {
                    if (captureEx.ProtocolName == "JTBGPS")
                    {
                        int    newOrderId = DownData.CarCmdSend.GetNewOrderId();
                        string str1       = "";
                        captureEx.TransformCode = CmdParam.TrafficProtocolCodeExchange2((int)captureEx.OrderCode);
                        if (captureEx.Quality == 0)
                        {
                            captureEx.Quality = 1;
                        }
                        if (captureEx.CaptureCache == 1)
                        {
                            captureEx.CaptureCache = -1;
                        }
                        string xmlString = captureEx.ToXmlString(this.CalOrderId(this.WorkId, newOrderId), SimNum, captureEx.ProtocolName, (int)CommMode, "SetCapture", ref str1);
                        num = DownData.CarCmdSend.icar_SendCmdXML(this.WorkId, newOrderId, SimNum, captureEx.ProtocolName, captureEx.TransformCode, (int)CommMode, xmlString);
                    }
                    else
                    {
                        int newOrderId = DownData.CarCmdSend.GetNewOrderId();
                        num = DownData.CarCmdSend.icar_SetCaptureEx(this.WorkId, newOrderId, SimNum, captureEx.IsMultiFrame, captureEx.CamerasID, captureEx.CaptureFlag, captureEx.CaptureCache, captureEx.Times, captureEx.Interval, captureEx.Quality, captureEx.Brightness, captureEx.Contrast, captureEx.Saturation, captureEx.Chroma, captureEx.CapWhenStop);
                    }
                    if (num == (long)0)
                    {
                        ReadDataFromDB.execSaveGpsLogTable(this.WorkId, DownData.CarCmdSend.OrderId, CarID, 18, "定时拍照");
                    }
                    else
                    {
                        AlarmMsg alarmMsg = new AlarmMsg()
                        {
                            ClassName    = "GpsPicDownData",
                            FunctionName = "icar_SetCaptureEx"
                        };
                        object[] workId = new object[] { "workid-", this.WorkId, ",simNum-", SimNum, ",OrderCode-", captureEx.OrderCode };
                        alarmMsg.AlarmText = string.Concat(workId);
                        alarmMsg.Code      = num.ToString();
                        this.log.WriteAlarm(alarmMsg);
                    }
                }
                catch (Exception exception1)
                {
                    Exception exception = exception1;
                    ErrorMsg  errorMsg  = new ErrorMsg()
                    {
                        ClassName = "GpsPicDownData",
                        ErrorText = "下发消息指令时发生错误!"
                    };
                    this.log.WriteError(errorMsg, exception);
                    num = (long)-1;
                }
            }
            return(num);
        }
コード例 #10
0
        public long icar_SendTxtMsg(CmdParam.ParamType ParamType, string SimNum, string CarPw, CmdParam.CommMode CommMode, TxtMsg msgContent, int iMsgId, string sMsgType)
        {
            long num = (long)0;

            this.logMsg.FunctionName = "icar_SendTxtMsg";
            this.logMsg.Msg          = string.Concat("发送:类型-", ParamType.ToString(), ",车辆-", SimNum);
            string str    = string.Concat("消息类型-", msgContent.MsgType.ToString(), string.Format(",{0}-", sMsgType), msgContent.strMsg);
            LogMsg logMsg = this.logMsg;

            logMsg.Msg = string.Concat(logMsg.Msg, ",", str);
            this.log.WriteLog(this.logMsg);
            if (!this.isStartCommon())
            {
                num = (long)-1;
            }
            else
            {
                try
                {
                    if (msgContent.MsgType != CmdParam.MsgType.掉线短信通知)
                    {
                        int num1 = 1;
                        int num2 = iMsgId;
                        num = DownData.CarCmdSend.icar_SendTxtMsg(num1, num2, SimNum, msgContent.MsgType, msgContent.strMsg);
                        if (num == (long)0)
                        {
                            ReadDataFromDB.execSaveGpsLogTable(num1, num2, msgContent.CarId, (int)msgContent.MsgType, msgContent.strMsg);
                        }
                    }
                    else
                    {
                        object[] objArray   = new object[] { msgContent.MsgType.ToString(), msgContent.SimNum, msgContent.strMsg };
                        object   obj        = objArray;
                        int      num3       = 4;
                        int      newOrderId = DownData.CarCmdSend.GetNewOrderId();
                        num = DownData.CarCmdSend.icar_SetCommonCmd(num3, newOrderId, SimNum, (CmdParam.CmdCode) 768, ref obj, CmdParam.CommMode.未知方式);
                        if (num == (long)0)
                        {
                            ReadDataFromDB.execSaveGpsLogTable(num3, newOrderId, msgContent.CarId, (int)msgContent.MsgType, msgContent.strMsg);
                        }
                    }
                    if (num != (long)0)
                    {
                        AlarmMsg alarmMsg = new AlarmMsg()
                        {
                            ClassName    = "GpsPicDownData",
                            FunctionName = "icar_SendTxtMsg"
                        };
                        object[] workId = new object[] { "workid-", this.WorkId, ",simNum-", SimNum, ",strMsg-", msgContent.strMsg };
                        alarmMsg.AlarmText = string.Concat(workId);
                        alarmMsg.Code      = num.ToString();
                        this.log.WriteAlarm(alarmMsg);
                    }
                }
                catch (Exception exception1)
                {
                    Exception exception = exception1;
                    ErrorMsg  errorMsg  = new ErrorMsg()
                    {
                        ClassName = "GpsPicDownData",
                        ErrorText = "下发消息指令时发生错误!"
                    };
                    this.log.WriteError(errorMsg, exception);
                    num = (long)-1;
                }
            }
            return(num);
        }
コード例 #11
0
        public Response icar_SendTxtMsg(CmdParam.ParamType paramType_0, string string_1, string string_2, CmdParam.CommMode commMode_0, TxtMsg txtMsg_0)
        {
            Response response = new Response();

            base.logMsg.FunctionName = "icar_SendTxtMsg";
            base.logMsg.Msg          = "发送:类型-" + paramType_0.ToString() + ",车辆-" + string_1 + ",指令-" + txtMsg_0.OrderCode.ToString();
            string str = "信息-" + txtMsg_0.strMsg + ",信息类型-" + txtMsg_0.MsgType.ToString();

            base.logMsg.Msg = base.logMsg.Msg + "," + str;
            base.log.WriteLog(base.logMsg);
            if (!base.CheckCar(paramType_0, string_1, string_2))
            {
                response.ErrorMsg = base.alarmMsg.AlarmText = base.ErrorMsg;
                base.log.WriteAlarm(base.alarmMsg);
                return(response);
            }
            string strErrorMsg = string.Empty;

            if (txtMsg_0.CheckData(out strErrorMsg) != 0)
            {
                response.ErrorMsg = strErrorMsg;
                return(response);
            }
            if (base.isStartCommon())
            {
                string str3 = null;
                foreach (Bussiness.CarInfo info in base.carInfoList)
                {
                    try
                    {
                        int newOrderId = SendBase.CarCmdSend.GetNewOrderId();
                        switch (((int)txtMsg_0.MsgType))
                        {
                        case 240:
                        case 0xf1:
                        case 0xf2:
                        case 0xf3:
                            str3 = txtMsg_0.MsgType.ToString();
                            break;
                        }
                        base.SaveCommandParameterToGpsLogTable(newOrderId.ToString() + "|" + info.CarId.ToString() + ";", str3);
                        string orderIDParam = response.OrderIDParam;
                        response.OrderIDParam = orderIDParam + newOrderId.ToString() + "|" + info.CarId.ToString() + ";";
                        if (info.ProtocolName == SendBase.m_ProtocolName)
                        {
                            txtMsg_0.TransformCode = CmdParam.TrafficProtocolCodeExchange((int)txtMsg_0.MsgType);
                            string conntent = "";
                            string str5     = txtMsg_0.ToXmlString(base.CalOrderId(base.WorkId, newOrderId), info.SimNum, SendBase.m_ProtocolName, (int)commMode_0, "SimpleCmd", ref conntent);
                            response.ResultCode = SendBase.CarCmdSend.icar_SendCmdXML(base.WorkId, newOrderId, info.SimNum, SendBase.m_ProtocolName, txtMsg_0.TransformCode, (int)commMode_0, str5);
                        }
                        else
                        {
                            response.ResultCode = SendBase.CarCmdSend.icar_SendTxtMsg(base.WorkId, newOrderId, info.SimNum, txtMsg_0.MsgType, txtMsg_0.strMsg);
                        }
                        if (response.ResultCode != 0L)
                        {
                            base.alarmMsg.FunctionName = "icar_SendTxtMsg";
                            base.alarmMsg.AlarmText    = string.Concat(new object[] { "workid-", base.WorkId, ",simNum-", info.SimNum, ",OrderCode-", txtMsg_0.OrderCode });
                            base.alarmMsg.Code         = response.ResultCode.ToString();
                            base.log.WriteAlarm(base.alarmMsg);
                        }
                        response.ResultCode = 0L;
                    }
                    catch (Exception exception)
                    {
                        base.errMsg.ErrorText = "下发消息指令时发生错误!";
                        response.ErrorMsg     = base.ErrorMsg = base.errMsg.ErrorText;
                        base.log.WriteError(base.errMsg, exception);
                    }
                }
                return(response);
            }
            response.ErrorMsg = base.ErrorMsg;
            return(response);
        }