Esempio n. 1
0
        protected void btnOverSpeed_Click(object sender, EventArgs e)
        {
            getData();
            List <CTS_SetTermParamDown.TerminalParamItem> paramlist = new List <CTS_SetTermParamDown.TerminalParamItem>();

            CTS_SetTermParamDown.TerminalParamItem tp = new CTS_SetTermParamDown.TerminalParamItem();
            tp.nParamID  = 0x0055;
            tp.nValue    = uint.Parse(txtmaxSpeed.Text);
            tp.nParamLen = 4;
            paramlist.Add(tp);
            SendOrderHander.Send_CTS_SetTermParamDown(sysflag, token, cid, tno, paramlist);
        }
Esempio n. 2
0
        public ResponseResult sendTimeIntervalOrder(Dictionary <string, string> inparams)
        {
            ResponseResult Result = null;

            try
            {
                string token        = inparams["token"];
                string sysflag      = inparams["sysflag"];
                string timeinterval = inparams["timeinterval"];
                List <CTS_SetTermParamDown.TerminalParamItem> paramlist = new List <CTS_SetTermParamDown.TerminalParamItem>();
                CTS_SetTermParamDown.TerminalParamItem        tp        = new CTS_SetTermParamDown.TerminalParamItem();
                tp.nParamID  = 0x0029;
                tp.nValue    = uint.Parse(timeinterval);
                tp.nParamLen = 4;
                paramlist.Add(tp);
                List <SendResult> resList = new List <SendResult>();
                string[]          cids    = inparams["cids"].Split(',');
                string[]          tnos    = inparams["tnos"].Split(',');
                string[]          carnos  = inparams["carnos"].Split(',');

                string souflag = System.Configuration.ConfigurationManager.AppSettings["MonitorDataSource"];
                WebGIS.RealtimeDataServer.CarRealData[] res = new WebGIS.RealtimeDataServer.CarRealData[] { };

                RDSConfigModel rc = RDSConfig.GetRDS(sysflag);
                WebGIS.RealtimeDataServer.WCFServiceClient wc = new WebGIS.RealtimeDataServer.WCFServiceClient();
                //调用WebGIS实时数据服务接口查询车辆轨迹数据
                if (souflag == "RDS" && rc != null && rc.RunFlag)
                {
                    wc.Endpoint.Address = new System.ServiceModel.EndpointAddress(rc.WCFUrl);
                    res = wc.GetCarsData(sysflag, ToInt64Array(cids));
                    bool flag = false;//是否有不在线车辆
                    if (res.Length > 0)
                    {
                        foreach (WebGIS.RealtimeDataServer.CarRealData carRealData in res)
                        {
                            if (carRealData.OnlineStatus == 2)
                            {
                                flag = true;//如果有不在线车辆,flag置为true,跳出循环
                                break;
                            }
                        }
                    }
                    else
                    {
                        flag = true;
                    }
                    if (flag)
                    {
                        Result = new ResponseResult(ResState.OtherError, "包含不在线车辆,无法下发指令!", null);
                    }
                    else
                    {
                        int cidcount   = cids.Length;
                        int tnocount   = tnos.Length;
                        int carnocount = carnos.Length;
                        if (cidcount == tnocount && cidcount == carnocount)
                        {
                            for (int i = 0; i < cidcount; i++)
                            {
                                SendResult sr = new SendResult();
                                sr.CID   = cids[i];
                                sr.TNO   = tnos[i];
                                sr.CarNo = carnos[i];
                                sr.Res   = false;
                                sr.Desc  = "设置上传时间间隔";
                                sr.Time  = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
                                resList.Add(sr);
                            }
                            foreach (SendResult sr in resList)
                            {
                                bool result = SendOrderHander.Send_CTS_SetTermParamDown(sysflag, token, long.Parse(sr.CID), long.Parse(sr.TNO), paramlist);
                                sr.Res = result;
                            }
                            Result = new ResponseResult(ResState.Success, "", resList);
                        }
                        else
                        {
                            Result = new ResponseResult(ResState.ParamsImperfect, "车辆参数不匹配", null);
                        }
                    }
                }
                else
                {
                    Result = new ResponseResult(ResState.OtherError, "包含不在线车辆,无法下发指令!", null);
                }
            }
            catch (Exception ex)
            {
                Result = new ResponseResult(ResState.OperationFailed, ex.Message, null);
            }

            //SendOrderHander.Send_CTS_SetTermParamDown(sysflag, token, cid, tno, paramlist);
            return(Result);
        }