Ejemplo n.º 1
0
 public override void fromBoxToDevice(DeviceDataBox_Base box)
 {
     base.fromBoxToDevice(box);
     Cab_state   = drywet_box.Cab_state;
     Rainy_state = drywet_box.Rainy_state;
     if (drywet_box.Rain_time != null && !drywet_box.Rain_time.Equals(""))
     {
         Rain_time = int.Parse(drywet_box.Rain_time);
     }
 }
Ejemplo n.º 2
0
        public DeviceUI(Box box)
        {
            InitializeComponent();

            initEnventListner();

            if (box is DeviceDataBox)
            {
                this.deviceDataBox = (DeviceDataBox)box;
            }
            else if (box is DeviceDataBox_Base)
            {
                this.deviceDataBoxComp = (DeviceDataBox_Base)box;
            }
        }
Ejemplo n.º 3
0
 public override void fromBoxToDevice(DeviceDataBox_Base box)
 {
     base.fromBoxToDevice(box);
     if (jl900_box.presure != null && !jl900_box.presure.Equals(""))
     {
         Presure = float.Parse(jl900_box.presure);
     }
     if (jl900_box.real_traffic != null && !jl900_box.real_traffic.Equals(""))
     {
         Real_traffic = float.Parse(jl900_box.real_traffic);
     }
     if (jl900_box.sample_volume != null && !jl900_box.sample_volume.Equals(""))
     {
         Sample_volume = float.Parse(jl900_box.sample_volume);
     }
     if (jl900_box.keep_time != null && !jl900_box.keep_time.Equals(""))
     {
         Keep_time = jl900_box.keep_time;
     }
 }
Ejemplo n.º 4
0
        public virtual void fromBoxToDevice(DeviceDataBox_Base box)
        {
            DeviceInMap        = GlobalMapForShow.globalMapForDevice[box.systemId + "_" + box.devId];
            nowValue           = box.value;
            state              = box.state.ToString();
            Value              = box;
            Type               = box.className();
            BuildingId         = box.systemId;
            CabId              = box.cabId;
            DeviceId           = box.devId;
            State              = box.state.ToString();
            handleTypeInSystem = DeviceInMap.handleTypeInSystem;
            if (!box.highThreshold.Equals(""))
            {
                Highthreshold = float.Parse(box.highThreshold);
            }
            else
            {
                Highthreshold = DeviceInMap.Highthreshold;
            }

            if (!box.lowThreshold.Equals(""))
            {
                Lowthreshold = float.Parse(box.lowThreshold);
            }
            else
            {
                Lowthreshold = DeviceInMap.Lowthreshold;
            }
            if (!box.CorrectFactor.Equals(""))
            {
                CorrectFactor = float.Parse(box.CorrectFactor);
            }
            else
            {
                CorrectFactor = DeviceInMap.correctFactor;
            }
        }
Ejemplo n.º 5
0
 public DeviceQuality(DeviceDataBox_Base b)
     : base(b)
 {
     // box = (DeviceDataBox_Quality);
 }
Ejemplo n.º 6
0
 public DevicePavilion(DeviceDataBox_Base box)
     : base(box)
 {
 }
Ejemplo n.º 7
0
 public Device6517AB(DeviceDataBox_Base b)
     : base(b)
 {
 }
Ejemplo n.º 8
0
 public DeviceXH31253127(DeviceDataBox_Base b)
     : base(b)
 {
 }
Ejemplo n.º 9
0
        public override void fromBoxToDevice(DeviceDataBox_Base box)
        {
            base.fromBoxToDevice(box);
            ab_1 = asm02_box.Ab_1;
            ab_2 = asm02_box.Ab_2;
            ab_3 = asm02_box.Ab_3;
            ab_4 = asm02_box.Ab_4;
            ab_5 = asm02_box.Ab_5;
            ab_6 = asm02_box.Ab_6;
            ab_7 = asm02_box.Ab_7;
            ab_8 = asm02_box.Ab_8;

            ec_1 = asm02_box.Ec_1;
            ec_2 = asm02_box.Ec_2;
            ec_3 = asm02_box.Ec_3;
            ec_4 = asm02_box.Ec_4;
            ec_5 = asm02_box.Ec_5;
            ec_6 = asm02_box.Ec_6;
            ec_7 = asm02_box.Ec_7;
            ec_8 = asm02_box.Ec_8;

            fl_1  = asm02_box.Fl_1;
            fl_2  = asm02_box.Fl_2;
            fl_3  = asm02_box.Fl_3;
            fl_4  = asm02_box.Fl_4;
            fl_5  = asm02_box.Fl_5;
            fl_6  = asm02_box.Fl_6;
            fl_7  = asm02_box.Fl_7;
            fl_8  = asm02_box.Fl_8;
            fl_9  = asm02_box.Fl_9;
            fl_10 = asm02_box.Fl_10;

            ga_1 = asm02_box.Ga_1;
            ga_2 = asm02_box.Ga_2;
            ga_3 = asm02_box.Ga_3;
            ga_4 = asm02_box.Ga_4;
            ga_5 = asm02_box.Ga_5;
            ga_6 = asm02_box.Ga_6;
            ga_7 = asm02_box.Ga_7;

            gi_1 = asm02_box.Gi_1;
            gi_2 = asm02_box.Gi_2;
            gi_3 = asm02_box.Gi_3;
            gi_4 = asm02_box.Gi_4;
            gi_5 = asm02_box.Gi_5;
            gi_6 = asm02_box.Gi_6;
            gi_7 = asm02_box.Gi_7;

            me_1  = asm02_box.Me_1;
            me_2  = asm02_box.Me_2;
            me_3  = asm02_box.Me_3;
            me_4  = asm02_box.Me_4;
            me_5  = asm02_box.Me_5;
            me_6  = asm02_box.Me_6;
            me_7  = asm02_box.Me_7;
            me_8  = asm02_box.Me_8;
            me_9  = asm02_box.Me_9;
            me_10 = asm02_box.Me_10;

            rn_1 = asm02_box.Rn_1;
            rn_2 = asm02_box.Rn_2;
            rn_3 = asm02_box.Rn_3;
            rn_4 = asm02_box.Rn_4;
            rn_5 = asm02_box.Rn_5;
            rn_6 = asm02_box.Rn_6;


            oi_1 = asm02_box.oi_1;
            oi_2 = asm02_box.oi_2;
            oi_3 = asm02_box.oi_3;
            oi_4 = asm02_box.oi_4;
            oi_5 = asm02_box.oi_5;
            oi_6 = asm02_box.oi_6;
            oi_7 = asm02_box.oi_7;
        }
Ejemplo n.º 10
0
        public void receiveData(string data) //收到二级发送过来的数据后触发
        {
            List <Box> boxes = new List <Box>();

            if (data == null || data.Equals(""))
            {
                return;
            }
            try
            {
                boxes = PackageWorker.unpack(data);
                Console.WriteLine("收到数据包中包含的设备:" + boxes.Count);
            }
            catch (Exception e)
            {
                Alarm("收到数据包格式异常,无法解析!");
            }
            if (boxes == null || boxes.Count == 0)
            {
                return;
            }
            Device deviceInMap    = null;
            Device deviceToChange = null;

            try
            {
                foreach (DeviceDataBox_Base item in boxes)
                {
                    if (item.className() != DeviceCommandEchoBox.classNameString) //控制命令单独处理
                    {
                        DeviceDataBox_Base tempItem = (DeviceDataBox_Base)item;
                        if (tempItem == null)
                        {
                            break;
                        }

                        deviceInMap            = GlobalMapForShow.globalMapForDevice[tempItem.systemId + "_" + tempItem.devId];
                        deviceInMap.Value      = item;
                        deviceInMap.Type       = item.className();
                        deviceInMap.NowValue   = tempItem.value;
                        deviceInMap.BuildingId = tempItem.systemId;
                        deviceInMap.CabId      = tempItem.cabId;
                        deviceInMap.DeviceId   = tempItem.devId;
                        deviceInMap.State      = tempItem.state.ToString();

                        if (!deviceInMap.NowValue.Equals(""))
                        {
                            if (float.Parse(deviceInMap.NowValue) > deviceInMap.Highthreshold)
                            {
                                tempItem.state    = DeviceDataBox_Base.State.H_Alert;
                                deviceInMap.State = DeviceDataBox_Base.State.H_Alert.ToString();
                            }
                            else if (float.Parse(deviceInMap.NowValue) < deviceInMap.Lowthreshold)
                            {
                                tempItem.state    = DeviceDataBox_Base.State.L_Alert;
                                deviceInMap.State = DeviceDataBox_Base.State.L_Alert.ToString();
                            }
                        }

                        //高低阈值被修改,将修改后的参数入库
                        if ((!tempItem.lowThreshold.Equals("") && deviceInMap.Lowthreshold != float.Parse(tempItem.lowThreshold)) ||
                            (!tempItem.highThreshold.Equals("") && deviceInMap.Highthreshold != float.Parse(tempItem.highThreshold)) ||
                            !tempItem.factor.Equals("") && deviceInMap.CorrectFactor != float.Parse(tempItem.factor))
                        {
                            if (!tempItem.lowThreshold.Equals(""))
                            {
                                deviceInMap.Lowthreshold = float.Parse(tempItem.lowThreshold);
                            }
                            if (!tempItem.highThreshold.Equals(""))
                            {
                                deviceInMap.Highthreshold = float.Parse(tempItem.highThreshold);
                            }
                            if (!tempItem.factor.Equals(""))
                            {
                                deviceInMap.CorrectFactor = float.Parse(tempItem.factor);
                            }
                            if (dataOfDevice.UpdateDeviceInfo("deviceInfo", deviceInMap) == 1) //修改成功
                            {
                                LogUtil.Log(true, deviceInMap.SubSystemName + " 设备 " + deviceInMap.Type + " 设备编号:" + deviceInMap.DeviceId +
                                            "高低阈值修改成功!当前高阈值:" + deviceInMap.Highthreshold + ",低阈值:" + deviceInMap.Lowthreshold + ",修正因子:" + deviceInMap.CorrectFactor, (int)ErrorCode.ERR_CODE.OK);
                            }
                        }

                        deviceToChange = tempItem.fromBoxToDevice();
                        //收到状态不正常的数据时,触发警报,并把相应的cab和building的状态更改为相应的报警状态
                        if (tempItem.state != DeviceDataBox_Base.State.Normal)
                        {
                            Alarm(deviceToChange);
                        }
                        //更改柜子的状态
                        GlobalMapForShow.globalMapForCab[tempItem.systemId + "_" + tempItem.cabId].State =
                            GlobalMapForShow.globalMapForCab[tempItem.systemId + "_" + tempItem.cabId].isStateNormal() ? DeviceDataBox_Base.State.Normal.ToString() : DeviceDataBox_Base.State.Alert.ToString();

                        //更改监测点的状态
                        GlobalMapForShow.globalMapForBuiding[tempItem.systemId].State = GlobalMapForShow.globalMapForBuiding[tempItem.systemId].isStateNormal() ? DeviceDataBox_Base.State.Normal.ToString() : DeviceDataBox_Base.State.Alert.ToString();

                        //遍历所有楼宇的状态,存在有一栋楼有异常状态 ,就报警或者维持报警状态,否则停止报警
                        if (GlobalMapForShow.isAllBuildingNormal())
                        {
                            alarmBuzzer(false);
                        }
                        else
                        {
                            alarmBuzzer(true);
                        }

                        bq.Enqueue(deviceToChange);  //将获取到的数据插入队列
                    }
                }//end for
            }
            catch (Exception e)
            {
                Alarm("收到数据包格式异常,无法解析!" + "(" + DateTime.Now.ToString() + ")");
            }
            finally
            {
                boxes       = null;
                deviceInMap = null;
                dataChartUpdate();
            }
        }
Ejemplo n.º 11
0
 /// <summary>
 ///
 /// </summary>
 public Device(DeviceDataBox_Base b)
 {
     fromBoxToDevice(b);
     judgeState();
 }