Example #1
0
        private void doSearchRealTimeData(CasicSender casicSender)
        {
            Dictionary <String, String> devHubMaps = new Dictionary <String, String>();
            List <Model.DevHubInfo>     devHubs    = new BLL.DevHub().findAllRealTimeDT();

            foreach (Model.DevHubInfo devHub in devHubs)
            {
                devHubMaps.Add(devHub.DevCode, devHub.HubCode);
            }
            casicSender.SendGetRealTimeDataReq(devHubMaps);
        }
Example #2
0
        public virtual void Execute(IJobExecutionContext context)
        {
            JobDataMap  map    = context.JobDetail.JobDataMap;
            CasicServer server = (CasicServer)map.Get("server");
            Dictionary <String, String> devHubMaps = new Dictionary <String, String>();
            List <Model.DevHubInfo>     devHubs    = new BLL.DevHub().findAll();

            foreach (Model.DevHubInfo devHub in devHubs)
            {
                if (devHub.DevCode.StartsWith("21"))
                {
                    devHubMaps.Add(devHub.DevCode, devHub.HubCode);
                }
            }
            CasicSender casicSender = new CasicSender(server);

            new BLL.DevHub().setOffLine();
            Model.CasicFireEvent fireEvent = new Model.CasicFireEvent();
            fireEvent.Version = "20";
            casicSender.SendGetDataReq(devHubMaps, fireEvent);
        }
Example #3
0
        protected override void OnStarted()
        {
            base.OnStarted();

            this.updateSequence();
            Dictionary <String, String> devHubMaps = new Dictionary <String, String>();
            List <Model.DevHubInfo>     devHubs    = new BLL.DevHub().findAll();

            foreach (Model.DevHubInfo devHub in devHubs)
            {
                devHubMaps.Add(devHub.DevCode, devHub.HubCode);
            }

            CasicSender casicSender = new CasicSender(this);

            double configItr2 = Convert.ToDouble(System.Configuration.ConfigurationSettings.AppSettings["CASIC_REALTIMEDATA_SER"]);

            SetInterval(configItr2, delegate
            {
                doSearchRealTimeData(casicSender);
            });
            //this.SchedualFsWakeUp();//定时去唤醒腐蚀渗漏设备lk
            //this.SchedualSlGetData();//定时去获取渗漏设备数据

            double configItr = Convert.ToDouble(System.Configuration.ConfigurationSettings.AppSettings["CASIC_CONFIGCHECK_INTR"]);

            SetInterval(configItr, delegate
            {
                doSendConfig(casicSender, devHubMaps);
            });

            //等待集中器一会
            double configItr1 = Convert.ToDouble(System.Configuration.ConfigurationSettings.AppSettings["CASIC_WAIT_CONCERNTRATOR"]);

            SetInterval2(configItr1, delegate
            {
                timer2.Enabled = false;
                doSendConfig(casicSender, devHubMaps);
            });
        }
Example #4
0
        private void doSendConfig(CasicSender casicSender, Dictionary <String, String> devHubMaps)
        {
            //液位监测仪 000034
            List <Model.DeviceConfigInfo> ywConfigs      = new BLL.DeviceConfig().getDeviceConfigBySensorCode("000034");
            List <Model.DeviceConfigInfo> validYwConfigs = new BLL.DeviceConfig().removeTimeoutConfig(ywConfigs);

            if (validYwConfigs.Count != 0)
            {
                casicSender.sendYWConfig(validYwConfigs, devHubMaps);
            }

            //噪声记录仪 000032
            List <Model.DeviceConfigInfo> slConfigs      = new BLL.DeviceConfig().getDeviceConfigBySensorCode("000032");
            List <Model.DeviceConfigInfo> validSlConfigs = new BLL.DeviceConfig().removeTimeoutConfig(slConfigs);

            if (validSlConfigs.Count != 0)
            {
                casicSender.sendSLConfig(validSlConfigs, devHubMaps);
            }

            //燃气智能监测终端
            List <Model.DeviceConfigInfo> rqConfigs      = new BLL.DeviceConfig().getDeviceConfigBySensorCode("000044");
            List <Model.DeviceConfigInfo> validRqConfigs = new BLL.DeviceConfig().removeTimeoutConfig(rqConfigs);

            if (validRqConfigs.Count != 0)
            {
                casicSender.sendRqConfig(validRqConfigs, devHubMaps);
            }

            //温度压力监测仪:
            List <Model.DeviceConfigInfo> tempAndPressConfigs      = new BLL.DeviceConfig().getDeviceConfigBySensorCode("000050");
            List <Model.DeviceConfigInfo> validTempAndPressConfigs = new BLL.DeviceConfig().removeTimeoutConfig(tempAndPressConfigs);

            if (validTempAndPressConfigs.Count != 0)
            {
                casicSender.sendTempAndPressConfig(validTempAndPressConfigs, devHubMaps);
            }

            //远传水表:
            List <Model.DeviceConfigInfo> waterMeterConfigs      = new BLL.DeviceConfig().getDeviceConfigBySensorCode("000052");
            List <Model.DeviceConfigInfo> validWaterMeterConfigs = new BLL.DeviceConfig().removeTimeoutConfig(waterMeterConfigs);

            if (validWaterMeterConfigs.Count != 0)
            {
                casicSender.sendWaterMeterConfig(validWaterMeterConfigs, devHubMaps);
            }

            /*
             * List<Model.DeviceConfigInfo> fsslConfigs = new BLL.DeviceConfig().getDeviceConfigBySensorCode("000040");
             * List<Model.DeviceConfigInfo> fshjConfigs = new BLL.DeviceConfig().getDeviceConfigBySensorCode("000041");
             *
             * List<Model.DeviceConfigInfo> validSlConfigs = new BLL.DeviceConfig().removeTimeoutConfig(slConfigs);
             * List<Model.DeviceConfigInfo> validFSSLConfigs = new BLL.DeviceConfig().removeTimeoutConfig(fsslConfigs);
             * List<Model.DeviceConfigInfo> validFSHJConfigs = new BLL.DeviceConfig().removeTimeoutConfig(fshjConfigs);
             *
             * //发送噪声配置信息
             * if (validSlConfigs.Count != 0)
             * {
             *  casicSender.sendSLConfig(validSlConfigs, devHubMaps);
             * }
             *
             * //保温层下腐蚀速率监测仪
             * if (validFSSLConfigs.Count != 0)
             * {
             *  casicSender.sendFSSLConfig(validFSSLConfigs, devHubMaps);
             * }
             *
             *
             * //保温层下腐蚀环境参数监测仪
             * if (validFSHJConfigs.Count != 0)
             * {
             *  casicSender.sendFSHJConfig(validFSHJConfigs, devHubMaps);
             * }**/
        }
Example #5
0
        private void senderGPRSConfig(string devType, string deviceId, string version, CasicSession session)
        {
            Dictionary <String, String> setMap = new Dictionary <String, String>();

            Model.DeviceConfigInfo config = null;
            if (devType == "燃气智能监测终端")
            {
                config = new BLL.DeviceConfig().GetDeviceConfByDeviceCodeAndSensorCode(
                    deviceId, "000044");
                List <Model.DeviceConfigInfo> configs = new List <DeviceConfigInfo>();
                if (config != null)
                {
                    configs.Add(config);
                }
                List <Model.DeviceConfigInfo> validConfigs =
                    new BLL.DeviceConfig().removeTimeoutConfig(configs);
                if (validConfigs != null && validConfigs.Count != 0)
                {
                    String   content  = validConfigs[0].FrameContent;
                    String[] rqParams = content.Split(',');
                    //燃气
                    //String ver = rqParams[0]; //版本号
                    String rep       = rqParams[1]; //重传次数
                    String itr       = rqParams[2]; //采集间隔
                    String period    = rqParams[3]; //上传周期
                    String rq_netoid = rqParams[4]; //网络ID

                    setMap.Add("rq_itr", itr);
                    setMap.Add("rq_rept", rep);
                    setMap.Add("rq_period", period);
                    setMap.Add("rq_netoid", rq_netoid);
                }
            }
            else if (devType == "液位监测仪")
            {
                config = new BLL.DeviceConfig().GetDeviceConfByDeviceCodeAndSensorCode(
                    deviceId, "000034");
                List <Model.DeviceConfigInfo> configs = new List <DeviceConfigInfo>();
                if (config != null)
                {
                    configs.Add(config);
                }
                List <Model.DeviceConfigInfo> validConfigs =
                    new BLL.DeviceConfig().removeTimeoutConfig(configs);
                if (validConfigs != null && validConfigs.Count != 0)
                {
                    String   content  = validConfigs[0].FrameContent;
                    String[] slParams = content.Split(',');

                    //液位计
                    //String ver = slParams[0];//版本号
                    String yw_thresh = slParams[1]; //报警阈值
                    String yw_netid  = slParams[2]; //网络ID 0-255
                    String yw_rept   = slParams[3]; //重传次数
                    String yw_height = slParams[4]; //高度

                    setMap.Add("yw_thresh", yw_thresh);
                    setMap.Add("yw_netid", yw_netid);
                    setMap.Add("yw_rept", yw_rept);
                    setMap.Add("yw_height", yw_height);
                }
            }

            else if (devType == "温度压力监测仪")
            {
                config = new BLL.DeviceConfig().GetDeviceConfByDeviceCodeAndSensorCode(
                    deviceId, "000050");
                List <Model.DeviceConfigInfo> configs = new List <DeviceConfigInfo>();
                if (config != null)
                {
                    configs.Add(config);
                }
                List <Model.DeviceConfigInfo> validConfigs =
                    new BLL.DeviceConfig().removeTimeoutConfig(configs);
                if (validConfigs != null && validConfigs.Count != 0)
                {
                    String   content  = validConfigs[0].FrameContent;
                    String[] slParams = content.Split(',');
                    //温度压力
                    //String ver = slParams[0]; //版本号
                    String itr        = slParams[1]; //采集间隔
                    String rep        = slParams[2]; //重传次数
                    String cnt        = slParams[3]; //采集次数
                    String stime      = slParams[4]; //采集开始时间
                    String tmp_netoid = slParams[5]; //网络ID

                    setMap.Add("tmp_itr", itr);
                    setMap.Add("tmp_rept", rep);
                    setMap.Add("tmp_cnt", cnt);
                    setMap.Add("tmp_stime", stime);
                    setMap.Add("tmp_netoid", tmp_netoid);
                }
            }

            else if (devType == "噪声记录仪")
            {
                config = new BLL.DeviceConfig().GetDeviceConfByDeviceCodeAndSensorCode(
                    deviceId, "000032");
                List <Model.DeviceConfigInfo> configs = new List <DeviceConfigInfo>();
                if (config != null)
                {
                    configs.Add(config);
                }
                List <Model.DeviceConfigInfo> validConfigs =
                    new BLL.DeviceConfig().removeTimeoutConfig(configs);
                if (validConfigs != null && validConfigs.Count != 0)
                {
                    String   content  = validConfigs[0].FrameContent;
                    String[] slParams = content.Split(',');
                    //噪声
                    //String ver = slParams[0];//版本号
                    String stime    = slParams[1]; //获取采集开始时间
                    String itrl     = slParams[2]; //采集间隔
                    String cnt      = slParams[3]; //采集次数
                    String rept     = slParams[4]; //重试次数
                    String sl_netid = slParams[5]; //网络ID

                    setMap.Add("sl_stime", stime);
                    setMap.Add("sl_itrl", itrl);
                    setMap.Add("sl_cnt", cnt);
                    setMap.Add("sl_rept", rept);
                    setMap.Add("sl_netid", sl_netid);
                }
            }

            CasicSender sender = new CasicSender(null);

            sender.doSendCasicConfig(deviceId, version, devType, setMap, session, "3");
        }