コード例 #1
0
        /// <summary>
        /// 保存设备信息的函数
        /// </summary>
        public override bool ConfirmInf(Jc_DevInfo DevType)
        {
            if (!SensorInfoverify())
            {
                return(false);
            }
            DevType.Xs1  = CcmbUint.Text;
            DevType.Bz11 = CtxbLowRange.Text;//xuzp20160104
            DevType.LC2  = Convert.ToInt16(CtxbMidRange.Text);
            DevType.LC   = Convert.ToInt16(CtxbHiRange.Text);
            DevType.Pl1  = Convert.ToInt16(CtxbLowHZ.Text);
            DevType.Pl2  = Convert.ToInt16(CtxbHiHZ.Text);
            DevType.Pl3  = Convert.ToInt16(CtxbMidHZ.Text);
            DevType.Pl4  = Convert.ToInt16(CtxbCheckCycle.Text);

            DevType.Z1   = float.Parse(CtxbHiPreAlarm.Text);
            DevType.Z2   = float.Parse(CtxbHiAlarm.Text);
            DevType.Z3   = float.Parse(CtxbHiPowerOff.Text);
            DevType.Z4   = float.Parse(CtxbHiPowerBack.Text);
            DevType.Z5   = float.Parse(CtxbLowPreAlarm.Text);
            DevType.Z6   = float.Parse(CtxbLowAlarm.Text);
            DevType.Z7   = float.Parse(CtxbLowPowerOff.Text);
            DevType.Z8   = float.Parse(CtxbLowPowerBack.Text);
            DevType.Xzxs = (float)CorrectionCoefficient.Value;//增加修正系数参数  20180113

            return(true);
        }
コード例 #2
0
        /// <summary>
        /// 删除设备类型
        /// </summary>
        private void DeleteDevType(string DevID)
        {
            Jc_DevInfo         temp = Model.DEVServiceModel.QueryDevByDevIDCache(DevID);
            IList <Jc_DefInfo> PointsExist;

            if (null == temp)
            {
                return;
            }
            PointsExist = Model.DEFServiceModel.QueryPointByDevIDCache(temp.Devid);
            if (null != PointsExist)
            {
                if (PointsExist.Count > 0)
                {
                    XtraMessageBox.Show("该设备类型下存在定义测点,不能删除", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    return;
                }
            }
            temp.InfoState = InfoState.Delete;
            try
            {
                Model.DEVServiceModel.DelJC_DEVCache(temp);
            }
            catch (Exception ex)
            {
                XtraMessageBox.Show(ex.Message, "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
                return;
            }
            OperateLogHelper.InsertOperateLog(2, "删除分站类型【" + temp.Name + "】", "");
        }
コード例 #3
0
        /// <summary>
        /// 批量添加
        /// </summary>
        /// <param name="DeviceDefineRequest"></param>
        /// <returns></returns>
        public BasicResponse AddDeviceDefines(DeviceDefinesRequest DeviceDefineRequest)
        {
            BasicResponse     Result       = new BasicResponse();
            List <Jc_DevInfo> items        = DeviceDefineRequest.Jc_DevsInfo;
            List <Jc_DevInfo> Jc_DevCaches = new List <Jc_DevInfo>();
            Jc_DevInfo        olditem      = null;

            DeviceDefineCacheGetAllRequest DeviceDefineCacheRequest = new DeviceDefineCacheGetAllRequest();
            var result = _DeviceDefineCacheService.GetAllPointDefineCache(DeviceDefineCacheRequest);

            Jc_DevCaches = result.Data;

            foreach (Jc_DevInfo item in items)
            {
                olditem = Jc_DevCaches.Find(a => a.Devid == item.Devid);
                //增加重复判断
                if (olditem != null)
                { //缓存中存在此测点
                    Result.Code    = 1;
                    Result.Message = "当前添加列表中的数据在数据库中已经存在!";
                    return(Result);
                }
            }
            //向网关同步数据
            List <Jc_DevInfo> SendItemList = items;
            var resultSync = SynchronousDataToGateway(SendItemList);

            if (!resultSync)
            {
                Result.Code    = 1;
                Result.Message = "向网关同步数据失败!";
                return(Result);
            }
            TransactionsManager.BeginTransaction(() =>
            {
                foreach (Jc_DevInfo item in items)
                {
                    //保存数据库
                    var _Jc_Dev      = ObjectConverter.Copy <Jc_DevInfo, Jc_DevModel>(item);
                    var resultJc_Dev = _Repository.AddDeviceDefine(_Jc_Dev);
                }

                //添加到缓存
                DeviceDefineCacheBatchAddRequest BacthAddPointDefineRequest = new DeviceDefineCacheBatchAddRequest();
                BacthAddPointDefineRequest.DeviceDefineInfos = items;
                _DeviceDefineCacheService.BacthAddPointDefineCache(BacthAddPointDefineRequest);
            });

            return(Result);
        }
コード例 #4
0
        public void LoadData()
        {
            DataTable dt = new DataTable();

            dt.Columns.Add("devid");
            dt.Columns.Add("devName");
            dt.Columns.Add("MultipleText");
            //加载已定义倍数关系
            DeviceDefineGetByDevpropertIDRequest DeviceDefineRequest = new DeviceDefineGetByDevpropertIDRequest();

            DeviceDefineRequest.DevpropertID = 1;
            deviceInfos         = deviceDefineService.GetDeviceDefineCacheByDevpropertID(DeviceDefineRequest).Data;
            multiplesettingList = multiplesettingService.GetAllMultiplesettingList().Data;
            if (multiplesettingList != null)
            {
                foreach (JC_MultiplesettingInfo multiplesetting in multiplesettingList)
                {
                    object[] obj = new object[dt.Columns.Count];
                    obj[0] = multiplesetting.Devid;
                    Jc_DevInfo tempDev = deviceInfos.Find(a => a.Devid == multiplesetting.Devid);
                    obj[1] = "";
                    if (tempDev != null)
                    {
                        obj[1] = tempDev.Name;
                    }
                    obj[2] = "";
                    string   multipleTextString = "";
                    string[] multipleTextArray  = multiplesetting.MultipleText.Split('|');
                    for (int i = 0; i < multipleTextArray.Length; i++)
                    {
                        string[] tempsonmultipleTextArr = multipleTextArray[i].Split(',');
                        if (float.Parse(tempsonmultipleTextArr[2]) != 0)
                        {
                            multipleTextString += string.Format("条件{3}:范围({0}至{1}),倍数:{2}倍)\r\n",
                                                                tempsonmultipleTextArr[0], tempsonmultipleTextArr[1], tempsonmultipleTextArr[2], (i + 1).ToString());
                        }
                        else
                        {
                            multipleTextString += string.Format("条件{0}:未设置\r\n", (i + 1).ToString());
                        }
                    }
                    obj[2] = multipleTextString;
                    dt.Rows.Add(obj);
                }
            }
            gridControl1.DataSource = dt;
        }
コード例 #5
0
        /// <summary>
        /// 保存设备信息的函数
        /// </summary>
        public override bool ConfirmInf(Jc_DevInfo DevType)
        {
            if (!SensorInfoverify())
            {
                return(false);
            }

            DevType.Pl1 = (short)((CckZeroAlarm.Checked) ? 1 : 0);
            DevType.Pl2 = (short)((CckOneAlarm.Checked) ? 1 : 0);

            DevType.Xs1 = CcmbZeroContent.Text;
            DevType.Xs2 = CcmbOneContent.Text;

            DevType.Color1 = CpZeroColour.Color.ToArgb();
            DevType.Color2 = CpOneColour.Color.ToArgb();

            return(true);
        }
コード例 #6
0
        /// <summary>
        /// 删除设备类型
        /// </summary>
        /// <param name="jc_Devrequest"></param>
        /// <returns></returns>
        public BasicResponse DeleteDeviceDefine(DeviceDefineDeleteRequest DeviceDefineRequest)
        {
            BasicResponse Result = new BasicResponse();
            //重复判断
            DeviceDefineCacheGetByKeyRequest DeviceDefineCacheRequest = new DeviceDefineCacheGetByKeyRequest();

            DeviceDefineCacheRequest.Devid = DeviceDefineRequest.Id;
            var result = _DeviceDefineCacheService.GetPointDefineCacheByKey(DeviceDefineCacheRequest);

            if (result.Data == null)
            {
                //缓存中存在此测点
                Result.Code    = 1;
                Result.Message = "当前删除的设备类型不存在!";
                return(Result);
            }

            //向网关同步数据
            Jc_DevInfo DeleteDevInfo = result.Data;

            DeleteDevInfo.InfoState = InfoState.Delete;
            List <Jc_DevInfo> SendItemList = new List <Jc_DevInfo>();

            SendItemList.Add(DeleteDevInfo);
            var resultSync = SynchronousDataToGateway(SendItemList);

            if (!resultSync)
            {
                Result.Code    = 1;
                Result.Message = "向网关同步数据失败!";
                return(Result);
            }

            //保存数据库
            _Repository.DeleteDeviceDefine(DeleteDevInfo.ID);

            //更新缓存
            DeviceDefineCacheDeleteRequest deviceDefineCacheRequest = new DeviceDefineCacheDeleteRequest();

            deviceDefineCacheRequest.DeviceDefineInfo = DeleteDevInfo;
            _DeviceDefineCacheService.DeletePointDefineCache(deviceDefineCacheRequest);

            return(Result);
        }
コード例 #7
0
        /// <summary>
        /// 加载测点信息的函数
        /// </summary>
        public override void LoadInf(string arrPoint, int _devID)
        {
            if (string.IsNullOrEmpty(arrPoint))
            {
                return;
            }
            Jc_DefInfo temp = Model.DEFServiceModel.QueryPointByCodeCache(arrPoint);

            if (null == temp)
            {
                return;
            }
            Jc_DevInfo tempDev = Model.DEVServiceModel.QueryDevByDevIDCache(temp.Devid);

            if (null == tempDev)
            {
                return;
            }
            LoadPointInfo(temp);
        }
コード例 #8
0
        /// <summary>
        /// 更新设备类型
        /// </summary>
        /// <param name="jc_Devrequest"></param>
        /// <returns></returns>
        public BasicResponse UpdateDeviceDefine(DeviceDefineUpdateRequest DeviceDefineRequest)
        {
            BasicResponse Result = new BasicResponse();
            Jc_DevInfo    item   = DeviceDefineRequest.Jc_DevInfo;
            //重复判断
            DeviceDefineCacheGetByKeyRequest DeviceDefineCacheRequest = new DeviceDefineCacheGetByKeyRequest();

            DeviceDefineCacheRequest.Devid = item.Devid;
            var result = _DeviceDefineCacheService.GetPointDefineCacheByKey(DeviceDefineCacheRequest);

            if (result.Data == null)
            {
                //缓存中存在此测点
                Result.Code    = 1;
                Result.Message = "当前更新的设备类型不存在!";
                return(Result);
            }
            //向网关同步数据
            List <Jc_DevInfo> SendItemList = new List <Jc_DevInfo>();

            SendItemList.Add(item);
            var resultSync = SynchronousDataToGateway(SendItemList);

            if (!resultSync)
            {
                Result.Code    = 1;
                Result.Message = "向网关同步数据失败!";
                return(Result);
            }
            //保存数据库
            var _jc_Dev = ObjectConverter.Copy <Jc_DevInfo, Jc_DevModel>(DeviceDefineRequest.Jc_DevInfo);

            _Repository.UpdateDeviceDefine(_jc_Dev);
            //更新缓存
            DeviceDefineCacheUpdateRequest deviceDefineCacheRequest = new DeviceDefineCacheUpdateRequest();

            deviceDefineCacheRequest.DeviceDefineInfo = item;
            _DeviceDefineCacheService.UpdatePointDefineCahce(deviceDefineCacheRequest);

            return(Result);
        }
コード例 #9
0
        /// <summary>
        /// 加载设备信息的函数
        /// </summary>
        public override void LoadInf(long DevID)
        {
            if (DevID == 0)
            {
                return;
            }
            Jc_DevInfo temp = Model.DEVServiceModel.QueryDevByDevIDCache(DevID.ToString());

            if (null == temp)
            {
                return;
            }
            CckZeroAlarm.Checked = (temp.Pl1 == 1) ? true : false;
            CckOneAlarm.Checked  = (temp.Pl2 == 1) ? true : false;

            CcmbZeroContent.Text = temp.Xs1;
            CcmbOneContent.Text  = temp.Xs2;

            CpZeroColour.Color = Color.FromArgb(temp.Color1);
            CpOneColour.Color  = Color.FromArgb(temp.Color2);
        }
コード例 #10
0
        /// <summary>
        /// 加载设备信息的函数
        /// </summary>
        public override void LoadInf(long DevID)
        {
            if (DevID <= 0)
            {
                return;
            }
            Jc_DevInfo temp = Model.DEVServiceModel.QueryDevByDevIDCache(DevID.ToString());

            if (null == temp)
            {
                return;
            }

            CcmbUint.Text = temp.Xs1;
            if (string.IsNullOrEmpty(temp.Bz11))//xuzp20160104
            {
                CtxbLowRange.Text = "0";
            }
            else
            {
                CtxbLowRange.Text = temp.Bz11;
            }
            CtxbMidRange.Text   = temp.LC2.ToString();
            CtxbHiRange.Text    = temp.LC.ToString();
            CtxbLowHZ.Text      = temp.Pl1.ToString();
            CtxbMidHZ.Text      = temp.Pl3.ToString();
            CtxbHiHZ.Text       = temp.Pl2.ToString();
            CtxbCheckCycle.Text = temp.Pl4.ToString();

            CtxbHiPreAlarm.Text         = temp.Z1.ToString();
            CtxbHiAlarm.Text            = temp.Z2.ToString();;
            CtxbHiPowerOff.Text         = temp.Z3.ToString();
            CtxbHiPowerBack.Text        = temp.Z4.ToString();
            CtxbLowPreAlarm.Text        = temp.Z5.ToString();
            CtxbLowAlarm.Text           = temp.Z6.ToString();
            CtxbLowPowerOff.Text        = temp.Z7.ToString();
            CtxbLowPowerBack.Text       = temp.Z8.ToString();
            CorrectionCoefficient.Value = (decimal)temp.Xzxs;//增加修正系数参数  20180113
        }
コード例 #11
0
ファイル: CuControl.cs プロジェクト: ewin66/Safety-JM-Server
        /// <summary>
        /// 保存测点信息的函数
        /// </summary>
        public override bool ConfirmInf(Jc_DefInfo point)
        {
            EditPoint = point;

            if (!SensorInfoverify())
            {
                return(false);
            }

            Jc_DevInfo temp = new Jc_DevInfo();

            point.Bz9  = CpZeroColour.Color.ToArgb().ToString();            //0态显示颜色
            point.Bz10 = CpOneColour.Color.ToArgb().ToString();             //1态度显示颜色

            point.K8  = Convert.ToByte(CckZeroAlarm.Checked ? 1 : 0);       //0态是否报警
            point.K8 |= Convert.ToByte((CckOneAlarm.Checked ? 1 : 0) << 1); //1态是否报警

            point.Bz6 = CcmbZeroContent.Text;                               //0态显示内容
            point.Bz7 = CcmbOneContent.Text;                                //1态显示内容
            if (!string.IsNullOrEmpty(CCmbFeedBackPoint.Text.Trim()))
            {
                point.K1 = Convert.ToInt32(CCmbFeedBackPoint.Text.Substring(0, 3)); //馈电分站号
                point.K2 = Convert.ToInt32(CCmbFeedBackPoint.Text.Substring(4, 2)); //馈电通道号
                if (CCmbFeedBackPoint.Text.Substring(0, CCmbFeedBackPoint.Text.IndexOf(".")).Length > 6)
                {
                    point.K4 = Convert.ToInt32(CCmbFeedBackPoint.Text.Substring(0, CCmbFeedBackPoint.Text.IndexOf(".")).Substring(6)); //馈电地址号
                }
            }
            else
            {
                point.K1 = 0;
                point.K2 = 0;
                point.K4 = 0;
            }
            point.Remark = CtxbDesc.Text;
            return(true);
        }
コード例 #12
0
        private void MultiSelect_Load(object sender, EventArgs e)
        {
            try
            {
                if (_DevPtyID != "1" && _DevPtyID != "2" && _DevPtyID != "3")
                {
                    XtraMessageBox.Show("只有模拟量、开关量、控制量可以设置多参数", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    this.Close();
                }
                //加载选择的所有设备类型,副通道只能绑定模拟量和开关量(绑定控制量智能分站不支持)  20170623
                List <Jc_DevInfo> DevList = DEVServiceModel.QueryDevsCache().ToList();
                DevList = DevList.FindAll(a => a.Type == 1 || a.Type == 2);


                foreach (Jc_DevInfo Dev in DevList)
                {
                    listBoxControl1.Items.Add(Dev.Devid + "." + Dev.Name);
                }
                //加载已经选择的设备类型
                string[] TempSelChanel = _SelMultChanel.Split('|');
                foreach (string Chanel in TempSelChanel)
                {
                    if (!string.IsNullOrEmpty(Chanel))
                    {
                        Jc_DevInfo TempDev = DevList.Find(a => a.Devid == Chanel);
                        if (TempDev != null)
                        {
                            listBoxControl2.Items.Add(TempDev.Devid + "." + TempDev.Name);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                LogHelper.Error(ex);
            }
        }
コード例 #13
0
ファイル: CuBaseType.cs プロジェクト: ewin66/Safety-JM-Server
 /// <summary>
 /// 保存设备信息的函数
 /// </summary>
 public virtual bool ConfirmInf(Jc_DevInfo DevType)
 {
     return(true);
 }
コード例 #14
0
        /// <summary>
        /// 加载信息
        /// </summary>
        private void LoadBasicInf()
        {
            if (!string.IsNullOrEmpty(_DevID))
            {
                Jc_DevInfo DeviceTypeTemp = Model.DEVServiceModel.QueryDevByDevIDCache(_DevID);

                if (!string.IsNullOrEmpty(DeviceTypeTemp.Name))
                {
                    CtxbDvtypeName.Text = DeviceTypeTemp.Name;             //名称
                    CtxbDvtypeID.Text   = DeviceTypeTemp.Devid.ToString(); //ID
                    CcmbDriverID.Text   = DeviceTypeTemp.LC2.ToString();   //DrvID
                    Dictionary <int, EnumcodeInfo> tempDriver = Model.DEVServiceModel.QueryDriverInf();
                    if (null != tempDriver)
                    {
                        if (tempDriver.ContainsKey(DeviceTypeTemp.LC2))
                        {
                            if (null != tempDriver[DeviceTypeTemp.LC2])
                            {
                                CcmbDriverID.Text = DeviceTypeTemp.LC2.ToString() + "." + tempDriver[DeviceTypeTemp.LC2].StrEnumDisplay;//DrvID+DrvName
                            }
                        }
                    }
                    CcmbAnalogNum.Text  = DeviceTypeTemp.Pl1.ToString(); //模开量
                    CcmbControlNum.Text = DeviceTypeTemp.Pl2.ToString(); //控制量
                    CcmbArticalNum.Text = DeviceTypeTemp.Pl3.ToString(); //智能量
                    CcmbPersonNum.Text  = DeviceTypeTemp.Pl4.ToString(); //人员量
                    CtxbDesc.Text       = DeviceTypeTemp.Remark;         //描述
                    //库存数量  20170330
                    if (string.IsNullOrEmpty(DeviceTypeTemp.Bz7))
                    {
                        Stock.Value = 0;
                    }
                    else
                    {
                        int tempint = 0;
                        int.TryParse(DeviceTypeTemp.Bz7, out tempint);
                        Stock.Value = tempint;
                    }
                    if (DeviceTypeTemp.Bz4 > 0)
                    {
                        if (CcmbDevID.Properties.Items.Count > 0)
                        {
                            for (int i = 0; i < CcmbDevID.Properties.Items.Count; i++)
                            {
                                if (DeviceTypeTemp.Bz4.ToString().Length > 3)                                                                                                           //增加判断  20170401
                                {
                                    if (CcmbDevID.Properties.Items[i].ToString().Split('.')[0] == DeviceTypeTemp.Bz4.ToString().Substring(3, DeviceTypeTemp.Bz4.ToString().Length - 3)) //txy 20170323
                                    {
                                        CcmbDevID.SelectedIndex = i;
                                    }
                                }
                            }
                        }
                    }

                    // 20171115
                    if (DeviceTypeTemp.Sysid == 0)
                    {
                        SystemName.EditValue = (int)SystemEnum.Security;
                    }
                    else
                    {
                        SystemName.EditValue = DeviceTypeTemp.Sysid;
                    }
                }
            }
            else
            {
                CtxbDvtypeID.Text = (Model.DEVServiceModel.GetMaxDevID() + 1).ToString(); //新增ID
            }
        }
コード例 #15
0
        private void barButtonItem1_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            try
            {
                if (!Sensorverify())
                {
                    return;
                }
                int        xh             = 0;
                Jc_DevInfo DeviceTypeTemp = new Jc_DevInfo();
                DeviceTypeTemp.ID     = Basic.Framework.Common.IdHelper.CreateLongId().ToString();
                DeviceTypeTemp.Devid  = CtxbDvtypeID.Text.Trim();                                                        //编号
                DeviceTypeTemp.Type   = 0;                                                                               //设备性质
                DeviceTypeTemp.Name   = CtxbDvtypeName.Text;                                                             //名称
                DeviceTypeTemp.LC     = 0x01;                                                                            //0x01监控/0x02抽累/0x04智开/0x08人员 种类
                DeviceTypeTemp.LC2    = Convert.ToInt16(CcmbDriverID.Text.Substring(0, CcmbDriverID.Text.IndexOf('.'))); //描述 驱动编号
                DeviceTypeTemp.Pl1    = Convert.ToInt16(CcmbAnalogNum.Text);                                             //模开数量
                DeviceTypeTemp.Pl2    = Convert.ToInt16(CcmbControlNum.Text);                                            //控制数量
                DeviceTypeTemp.Pl3    = Convert.ToInt16(CcmbArticalNum.Text);                                            //智能数量
                DeviceTypeTemp.Pl4    = Convert.ToInt16(CcmbPersonNum.Text);                                             //人员数量
                DeviceTypeTemp.Bz4    = 0;                                                                               //设备型号(枚举表中枚举数据)
                DeviceTypeTemp.Bz3    = 0;                                                                               //设备种类(枚举表中枚举数据)
                DeviceTypeTemp.Remark = CtxbDesc.Text;                                                                   //备注
                //新增库存数量  20170330
                DeviceTypeTemp.Bz7 = Stock.Value.ToString();
                // 20171115
                DeviceTypeTemp.Sysid = (int)SystemName.EditValue;

                Dictionary <int, EnumcodeInfo> tempEnumCode;
                if (!string.IsNullOrEmpty(CcmbDevID.Text))                                                                  //tanxingyan 20161207
                {
                    DeviceTypeTemp.Bz4 = Convert.ToInt32("100" + CcmbDevID.Text.Substring(0, CcmbDevID.Text.IndexOf('.'))); //DevTypeID
                    tempEnumCode       = Model.DEVServiceModel.QueryDevMoelsCache();
                    if (null != tempEnumCode)
                    {
                        if (tempEnumCode.ContainsKey(DeviceTypeTemp.Bz4))
                        {
                            DeviceTypeTemp.DevModel = tempEnumCode[DeviceTypeTemp.Bz4].StrEnumDisplay;
                        }
                    }
                }
                if (string.IsNullOrEmpty(_DevID)) //表示新增
                {
                    DeviceTypeTemp.InfoState = InfoState.AddNew;
                    //Model.DEVServiceModel.AddJC_DEVCache(DeviceTypeTemp);
                    try
                    {
                        if (!Model.DEVServiceModel.AddJC_DEVCache(DeviceTypeTemp))
                        {
                            XtraMessageBox.Show("保存失败,请确保网关运行正常并与主机的连接正常!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        }
                        else
                        {
                            XtraMessageBox.Show("保存成功!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        }
                    }
                    catch (Exception ex)
                    {
                        XtraMessageBox.Show(ex.Message, "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        return;
                    }
                    OperateLogHelper.InsertOperateLog(2, "新增分站类型【" + DeviceTypeTemp.Name + "】", "");
                }
                else //表示更新
                {
                    // 20171115
                    Jc_DevInfo DeviceTypeCache = Model.DEVServiceModel.QueryDevByDevIDCache(_DevID);
                    //if (DeviceTypeCache != DeviceTypeTemp)
                    {
                        DeviceTypeTemp.ID        = DeviceTypeCache.ID;
                        DeviceTypeTemp.InfoState = InfoState.Modified;
                        //Model.DEVServiceModel.AddJC_DEVCache(DeviceTypeTemp);
                        try
                        {
                            if (!Model.DEVServiceModel.UpdateJC_DEVCache(DeviceTypeTemp))
                            {
                                XtraMessageBox.Show("保存失败,请确保网关运行正常并与主机的连接正常!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            }
                            else
                            {
                                XtraMessageBox.Show("保存成功!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            }
                        }
                        catch (Exception ex)
                        {
                            XtraMessageBox.Show(ex.Message, "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            return;
                        }
                        OperateLogHelper.InsertOperateLog(2, "修改分站类型【" + DeviceTypeTemp.Name + "】", "");


                        List <Jc_DefInfo> tempStation = Model.DEFServiceModel.QueryPointByDevIDCache(DeviceTypeTemp.Devid);

                        if (tempStation != null)
                        {
                            bool bUpdateFlag = false;
                            foreach (var item in tempStation)
                            {
                                if (item.DevName != DeviceTypeTemp.Name)
                                {
                                    bUpdateFlag    = true;
                                    item.DevName   = DeviceTypeTemp.Name;
                                    item.InfoState = InfoState.Modified;
                                }
                            }

                            if (bUpdateFlag)
                            {
                                try
                                {
                                    Model.DEFServiceModel.UpdateDEFsCache(tempStation);
                                }
                                catch (Exception ex)
                                {
                                    XtraMessageBox.Show(ex.Message, "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                                    return;
                                }
                            }
                        }
                    }
                }
                this.Close(); //执行成功 关闭窗口
            }
            catch (Exception ex)
            {
                XtraMessageBox.Show("保存失败,请检查输入的合法性!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
                LogHelper.Error(ex.ToString());
            }
        }
コード例 #16
0
ファイル: CuControl.cs プロジェクト: ewin66/Safety-JM-Server
        /// <summary>
        /// 加载测点信息的函数
        /// </summary>
        public override void LoadInf(string arrPoint, int _devID)
        {
            if (string.IsNullOrEmpty(arrPoint))
            {
                return;
            }
            Jc_DefInfo temp = Model.DEFServiceModel.QueryPointByCodeCache(arrPoint);

            if (null == temp)
            {
                return;
            }
            Jc_DevInfo tempDev = Model.DEVServiceModel.QueryDevByDevIDCache(temp.Devid);

            if (null == tempDev)
            {
                return;
            }
            LoadPointInfo(temp);
            //#region ==================扩展属性==================
            //if (temp.K1 > 0 && temp.K2 > 0)
            //{
            //    Jc_DefInfo FeedBackePoint = Model.DEFServiceModel.QueryPointByCodeCache(temp.K1.ToString().PadLeft(3, '0') + "D" + temp.K2.ToString().PadLeft(2, '0') + temp.K4.ToString());

            //    if (null != FeedBackePoint)
            //    {
            //        CCmbFeedBackPoint.SelectedItem = FeedBackePoint.Point + "." + FeedBackePoint.Wz;
            //    }
            //}

            //CtxbDesc.Text = temp.Remark;//描述

            //#endregion

            //#region ==================报警==================
            //if ((temp .K8 &0x01) == 1) //0态度是否报警
            //{
            //    CckZeroAlarm.Checked = true;
            //}
            //else
            //{
            //    CckZeroAlarm.Checked = false;
            //}

            //if ((temp .K8 &0x02) == 2)  //1态度是否报警
            //{
            //    CckOneAlarm.Checked = true;
            //}
            //else
            //{
            //    CckOneAlarm.Checked = false;
            //}
            ////颜色显示
            //try
            //{
            //this.CpZeroColour.Color = Color.FromArgb(int.Parse (temp .Bz9.ToString ()));
            //this.CpOneColour.Color = Color.FromArgb(int.Parse (temp .Bz10.ToString ()));
            //}
            //catch
            //{}

            ////显示内容
            //this.CcmbZeroContent.Text = temp .Bz6;
            //this.CcmbOneContent.Text = temp .Bz7 ;
            //#endregion
        }
コード例 #17
0
        /// <summary>
        /// 获取新增运行记录信息
        /// </summary>
        public void getdata()
        {
            Jc_RInfo obj = null;
            long     key = 0;


            #region 获取自动挂接数据

            try
            {
                automaticArticulatedDeviceInfo = DEFServiceModel.GetAllAutomaticArticulatedDeviceCache();
                //测试数据
                //AutomaticArticulatedDeviceInfo temp = new AutomaticArticulatedDeviceInfo();
                //temp.ID = "1111";
                //temp.DeviceOnlyCode = "2018000000";
                //temp.AddressNumber = 0;
                //temp.BranchNumber = 2;
                //temp.ChanelNumber = 8;
                //temp.DeviceModel = 34;
                //temp.ReciveTime = DateTime.Now;
                //temp.StationNumber = 1;
                //temp.Value = "10.0";
                //automaticArticulatedDeviceInfo.Add(temp);

                //List<AutomaticArticulatedDeviceInfo> automaticArticulatedDeviceInfo = new List<AutomaticArticulatedDeviceInfo>();

                //判断实时运行记录自动挂接记录是否还存在,如果不存在,则删除此自动挂接记录
                DataRow[] acrowinfos = showdt.Select("point='未定义'");
                if (acrowinfos != null && acrowinfos.Length > 0)
                {
                    for (int i = 0; i < acrowinfos.Length; i++)
                    {
                        var arid = acrowinfos[i]["id"].ToString();

                        if (automaticArticulatedDeviceInfo.FirstOrDefault(o => o.DeviceOnlyCode == arid) == null)
                        {
                            //deletelist.Add(long.Parse(arid));
                            deletelist.Add(arid);
                        }
                    }
                }
                if (automaticArticulatedDeviceInfo.Count > 0)
                {
                    automaticArticulatedDeviceInfo.ForEach(arinfo =>
                    {
                        if (arinfo.ChanelNumber <= 16)
                        {
                            //判断实时运行记录是否存在此自动挂接记录,如不存在,则添加一条记录
                            var rowinfo = showdt.Select("id='" + arinfo.DeviceOnlyCode + "'");
                            if (rowinfo == null || rowinfo.Length == 0)
                            {
                                #region 新增运行记录
                                obj                = new Jc_RInfo();
                                obj.ID             = arinfo.DeviceOnlyCode;
                                obj.Fzh            = arinfo.StationNumber;
                                obj.Kh             = arinfo.ChanelNumber;
                                Jc_DevInfo tempdev = devAllList.Find(a => a.Bz4 == arinfo.DeviceModel);
                                if (tempdev != null)
                                {
                                    obj.Devid = tempdev.Devid;
                                }
                                else
                                {
                                    obj.Devid = "";
                                }
                                obj.Dzh   = arinfo.AddressNumber;
                                obj.Wzid  = "-";
                                obj.Point = "未定义";
                                obj.Type  = -1;
                                obj.State = -1;
                                obj.Val   = arinfo.Value;
                                obj.Timer = arinfo.ReciveTime;
                                jc_r.Add(obj.ID, obj);
                                //addlist.Add(long.Parse(obj.ID));
                                addlist.Add(obj.ID);
                                #endregion
                            }
                            else
                            {
                                rowinfo[0]["ssz"] = arinfo.Value;//刷新实时值
                            }
                        }
                    });
                }
            }
            catch (Exception ex)
            {
                Basic.Framework.Logging.LogHelper.Error(ex);
            }
            #endregion
        }
コード例 #18
0
        private void mainGridView_RowClick(object sender, DevExpress.XtraGrid.Views.Grid.RowClickEventArgs e)
        {
            try
            {
                if (e.Button == MouseButtons.Left && e.Clicks == 2)
                {
                    string id   = mainGridView.GetRowCellValue(mainGridView.FocusedRowHandle, "id").ToString();
                    string time = mainGridView.GetRowCellValue(mainGridView.FocusedRowHandle, "time").ToString();

                    if (!string.IsNullOrEmpty(id))
                    {
                        string selectpoint = mainGridView.GetRowCellValue(mainGridView.FocusedRowHandle, "point").ToString();
                        //如果是自动挂接记录跳转到分站定义界面
                        if (selectpoint == "未定义")
                        {
                            AutomaticArticulatedDeviceInfo tempautoInfo = automaticArticulatedDeviceInfo.Find(a => a.DeviceOnlyCode == id);
                            //var fzh = mainGridView.GetRowCellValue(mainGridView.FocusedRowHandle, "fzh").ToString();
                            //var fzharr = fzh.Split('/');
                            if (tempautoInfo != null)
                            {
                                Jc_DevInfo tempdev       = devAllList.Find(a => a.Bz4 == tempautoInfo.DeviceModel);
                                int        devPropertyId = 0;
                                int        deviceId      = 0;
                                if (tempdev != null)
                                {
                                    devPropertyId = tempdev.Type;
                                    deviceId      = int.Parse(tempdev.Devid);
                                }

                                int resultIsMaster = MasterManagement.IsMaster();//等于0,表示正常
                                if (resultIsMaster == 1)
                                {
                                    DevExpress.XtraEditors.XtraMessageBox.Show("当前非主控电脑,请确认本机是否为主控并检查本机网络是否正常!");
                                    return;
                                }
                                if (resultIsMaster == 2)
                                {
                                    DevExpress.XtraEditors.XtraMessageBox.Show("连接服务器失败,请检查网络是否正常!");
                                    return;
                                }
                                if (resultIsMaster == 3)
                                {
                                    DevExpress.XtraEditors.XtraMessageBox.Show("获取当前主机是否为主控主机失败,详细见日志!");
                                    return;
                                }

                                frmLogOn loginForm = new frmLogOn(false);
                                loginForm.ShowDialog();
                                if (LoginManager.isLoginSuccess)//登录成功
                                {
                                    CFPointMrgFrame defineform = new CFPointMrgFrame(tempautoInfo.StationNumber, tempautoInfo.ChanelNumber, tempautoInfo.AddressNumber, devPropertyId, deviceId);
                                    defineform.Show();
                                }
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                LogHelper.Error(ex.Message + "\r\n" + ex.TargetSite);
            }
        }
コード例 #19
0
 /// <summary>
 /// 获取下发数据
 /// </summary>
 /// <param name="_dyobj">驱动</param>
 /// <param name="stationID">分站测点号</param>
 /// <returns></returns>
 public static void GetSendData(IDriver _dyobj, string stationID, Jc_DevInfo devInfo, ref int sendTime)
 {
     _dyobj.GetSendData(stationID, devInfo, ref sendTime);
 }
コード例 #20
0
ファイル: CuControl.cs プロジェクト: ewin66/Safety-JM-Server
        /// <summary>
        /// 设备类型变化产生的影响
        /// </summary>
        public override void DevTypeChanngeEvent(long DevID, Jc_DefInfo Point)
        {
            //if (Point!=null)
            //{
            //    CCmbFeedBackPoint.Text = "";
            //    if (Point.K1 > 0 && Point.K2 > 0)
            //    {
            //        Jc_DefInfo FeedBackePoint = Model.DEFServiceModel.QueryPointByCodeCache(Point.K1.ToString().PadLeft(3, '0') + "D" + Point.K2.ToString().PadLeft(2, '0') + Point.K4.ToString());

            //        if (null != FeedBackePoint)
            //        {
            //            CCmbFeedBackPoint.SelectedItem = FeedBackePoint.Point + "." + FeedBackePoint.Wz;
            //        }
            //    }
            //    CtxbDesc.Text = Point.Remark;//描述
            //}
            //else
            //{
            //    CCmbFeedBackPoint.Text = "";
            //    CtxbDesc.Text = "";//描述
            //}
            //Jc_DevInfo temp = Model.DEVServiceModel.QueryDevByDevIDCache(DevID.ToString());

            //if (null == temp)
            //{
            //    return;
            //}
            //#region ==================报警属性==================
            //if (temp.Pl1==1)
            //{
            //    CckZeroAlarm.Checked = true;
            //}
            //else
            //{
            //    CckZeroAlarm.Checked = false;
            //}
            //if (temp.Pl2==1)
            //{
            //    CckOneAlarm.Checked = true;
            //}
            //else
            //{
            //    CckOneAlarm.Checked = false;
            //}


            ////显示内容
            //this.CcmbZeroContent.Text = temp.Xs1;
            //this.CcmbOneContent.Text = temp.Xs2;
            ////颜色显示
            //this.CpZeroColour.Color = Color.FromArgb(temp.Color1);
            //this.CpOneColour.Color = Color.FromArgb(temp.Color2);
            //#endregion
            try
            {
                if (Point != null)
                {
                    LoadPointInfo(Point);
                }
                else
                {//取jc_dev的定义信息
                    CCmbFeedBackPoint.SelectedItem = "";
                    CtxbDesc.Text = "";

                    Jc_DevInfo temp = Model.DEVServiceModel.QueryDevByDevIDCache(DevID.ToString());
                    if (null == temp)
                    {
                        return;
                    }
                    #region ==================报警==================
                    if (temp.Pl1 == 1)
                    {
                        CckZeroAlarm.Checked = true;
                    }
                    else
                    {
                        CckZeroAlarm.Checked = false;
                    }
                    if (temp.Pl2 == 1)
                    {
                        CckOneAlarm.Checked = true;
                    }
                    else
                    {
                        CckOneAlarm.Checked = false;
                    }
                    //颜色显示

                    this.CpZeroColour.Color = Color.FromArgb(int.Parse(temp.Color1.ToString()));
                    this.CpOneColour.Color  = Color.FromArgb(int.Parse(temp.Color2.ToString()));


                    //显示内容
                    this.CcmbZeroContent.Text = temp.Xs1;
                    this.CcmbOneContent.Text  = temp.Xs2;
                    #endregion
                }
            }
            catch (Exception ex)
            {
                Basic.Framework.Logging.LogHelper.Error(ex);
            }
        }
コード例 #21
0
ファイル: CuDerail.cs プロジェクト: ewin66/Safety-JM-Server
        /// <summary>
        /// 设备类型变化产生的影响
        /// </summary>
        public override void DevTypeChanngeEvent(long DevID, Jc_DefInfo Point)
        {
            try
            {
                if (Point != null)
                {
                    CcmbLogicAlarmCon.Text   = "";
                    CcmbLogicAlarmPoint.Text = "";
                    LoadPointInfo(Point);
                }
                else
                {//取jc_dev的定义信息
                    CcmbLogicAlarmCon.Text   = "";
                    CcmbLogicAlarmPoint.Text = "";
                    CtxbDesc.Text            = "";

                    //各态控制口
                    cckLocalControlZero.Text = "";
                    cckLocalControlOne.Text  = "";
                    cckLocalControlTwo.Text  = "";

                    #region ==================交叉控制==================
                    CrossControlList.Clear();
                    CrossControlDT        = ToDataTable(CrossControlList);
                    CdgControl.DataSource = CrossControlDT;
                    CdgControl.RefreshDataSource();
                    #endregion


                    Jc_DevInfo temp = Model.DEVServiceModel.QueryDevByDevIDCache(DevID.ToString());
                    if (null == temp)
                    {
                        return;
                    }

                    #region ==================报警属性==================
                    if (temp.Pl1 == 1)
                    {
                        CckZeroAlarm.Checked = true;
                    }
                    else
                    {
                        CckZeroAlarm.Checked = false;
                    }
                    if (temp.Pl2 == 1)
                    {
                        CckOneAlarm.Checked = true;
                    }
                    else
                    {
                        CckOneAlarm.Checked = false;
                    }
                    if (temp.Pl3 == 1)
                    {
                        CckTwoAlarm.Checked = true;
                    }
                    else
                    {
                        CckTwoAlarm.Checked = false;
                    }

                    //显示内容
                    this.CcmbZeroContent.Text = temp.Xs1;
                    this.CcmbOneContent.Text  = temp.Xs2;
                    this.CcmbTwoContent.Text  = temp.Xs3;
                    //颜色显示
                    this.CpZeroColour.Color = Color.FromArgb(temp.Color1);
                    this.CpOneColour.Color  = Color.FromArgb(temp.Color2);
                    this.CpTwoColour.Color  = Color.FromArgb(temp.Color3);
                    #endregion
                }
            }
            catch (Exception ex)
            {
                Basic.Framework.Logging.LogHelper.Error(ex);
            }
        }
コード例 #22
0
ファイル: CuDerail.cs プロジェクト: ewin66/Safety-JM-Server
        /// <summary>
        /// 保存测点信息的函数
        /// </summary>
        public override bool ConfirmInf(Jc_DefInfo point)
        {
            if (!SensorInfoverify())
            {
                return(false);
            }

            Jc_DevInfo temp = new Jc_DevInfo();

            point.Bz9  = CpZeroColour.Color.ToArgb().ToString();            //0态显示颜色
            point.Bz10 = CpOneColour.Color.ToArgb().ToString();             //1态度显示颜色
            point.Bz11 = CpTwoColour.Color.ToArgb().ToString();             //2态显示颜色

            point.K8  = Convert.ToByte(CckZeroAlarm.Checked ? 1 : 0);       //0态是否报警
            point.K8 |= Convert.ToByte((CckOneAlarm.Checked ? 1 : 0) << 1); //1态是否报警
            point.K8 |= Convert.ToByte((CckTwoAlarm.Checked ? 1 : 0) << 2); //2态度是否报警

            point.Bz6 = CcmbZeroContent.Text;                               //0态显示内容
            point.Bz7 = CcmbOneContent.Text;                                //1态显示内容
            point.Bz8 = CcmbTwoContent.Text;                                //2态显示内容

            point.K1 = ConfirmCheckBoxValue(cckLocalControlZero.Text);      //0态控制信息
            point.K2 = ConfirmCheckBoxValue(cckLocalControlOne.Text);       //1态控制信息
            point.K3 = ConfirmCheckBoxValue(cckLocalControlTwo.Text);       //2态控制信息
            //先赋默认值,如果未设置,则表示清除  20170629
            point.K4 = 0;
            point.K5 = 0;
            point.K6 = 0;
            if (!string.IsNullOrEmpty(CcmbLogicAlarmCon.Text.Trim()))
            {
                point.K4 = Convert.ToByte(CcmbLogicAlarmCon.SelectedIndex);
                point.K5 = Convert.ToByte(CcmbLogicAlarmPoint.Text.Substring(0, CcmbLogicAlarmPoint.Text.IndexOf('.')).Substring(4, 2));
                if (CcmbLogicAlarmPoint.Text.Substring(0, CcmbLogicAlarmPoint.Text.IndexOf('.')).Length > 6)
                {
                    point.K6 = Convert.ToByte(CcmbLogicAlarmPoint.Text.Substring(0, CcmbLogicAlarmPoint.Text.IndexOf('.')).Substring(6));
                }
            }
            #region ====================交叉控制====================
            point.Jckz1 = "";
            point.Jckz2 = "";
            point.Jckz3 = "";
            List <CrossControlItem> listTemp = new List <CrossControlItem>();
            listTemp = ToList(CrossControlDT); //将数据源DT转换成List
            if (listTemp != null)
            {
                if (listTemp.Count > 0)
                {
                    Jc_DefInfo PointTemp;
                    for (int i = 0; i < listTemp.Count; i++)
                    {
                        if (!string.IsNullOrEmpty(listTemp[i].ArrPoint))
                        {
                            PointTemp = Model.DEFServiceModel.QueryPointByCodeCache(listTemp[i].ArrPoint);
                            if (!string.IsNullOrEmpty(PointTemp.Point))
                            {
                                if (listTemp[i].ControlType == "0态控制")
                                {
                                    point.Jckz1 += PointTemp.Fzh.ToString().PadLeft(3, '0') + "C" + PointTemp.Kh.ToString().PadLeft(2, '0')
                                                   + PointTemp.Dzh.ToString() + "|";
                                }
                                else if (listTemp[i].ControlType == "1态控制")
                                {
                                    point.Jckz2 += PointTemp.Fzh.ToString().PadLeft(3, '0') + "C" + PointTemp.Kh.ToString().PadLeft(2, '0')
                                                   + PointTemp.Dzh.ToString() + "|";
                                }
                                else if (listTemp[i].ControlType == "2态控制")
                                {
                                    point.Jckz3 += PointTemp.Fzh.ToString().PadLeft(3, '0') + "C" + PointTemp.Kh.ToString().PadLeft(2, '0')
                                                   + PointTemp.Dzh.ToString() + "|";
                                }
                                else
                                {
                                    XtraMessageBox.Show("交叉控制中存在控制类型未选择的数据!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                    return(false);
                                }
                            }
                        }
                        else
                        {
                            XtraMessageBox.Show("交叉控制中存在受控对象未选择的数据!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            return(false);
                        }
                    }
                    //处理完成后去掉最后一根“|”
                    if (point.Jckz1 != null)
                    {
                        if (point.Jckz1.Length > 0)
                        {
                            point.Jckz1 = point.Jckz1.Substring(0, point.Jckz1.Length - 1);
                        }
                    }
                    if (point.Jckz2 != null)
                    {
                        if (point.Jckz2.Length > 0)
                        {
                            point.Jckz2 = point.Jckz2.Substring(0, point.Jckz2.Length - 1);
                        }
                    }
                    if (point.Jckz3 != null)
                    {
                        if (point.Jckz3.Length > 0)
                        {
                            point.Jckz3 = point.Jckz3.Substring(0, point.Jckz3.Length - 1);
                        }
                    }
                }
            }
            #endregion

            point.Remark = CtxbDesc.Text;

            return(true);
        }
コード例 #23
0
ファイル: FzShowForm.cs プロジェクト: ewin66/Safety-JM-Server
        /// <summary>
        /// 获取显示数据
        /// </summary>
        private void getmsg(Jc_DefInfo def, DataTable dt)
        {
            DataRow[] rows;
            DataRow   row;
            float     ssz = 0;

            if (objfz.fzh != 0)
            {
                PointDefineGetByStationIDRequest PointDefineRequest = new PointDefineGetByStationIDRequest();
                PointDefineRequest.StationID = objfz.fzh;
                //List<Jc_DefInfo> FzList = pointDefineService.GetPointDefineCacheByStationID(PointDefineRequest).Data;
                //多系统融合修改  20171123
                List <Jc_DefInfo> FzList = allSystemPointDefineService.GetPointDefineCacheByStationID(PointDefineRequest).Data;
                Jc_DefInfo        FzInfo = FzList.Find(a => a.DevPropertyID == 0);
                Jc_DevInfo        FzDev  = new Jc_DevInfo();
                if (FzInfo != null)
                {
                    if (FzInfo != null)
                    {
                        DeviceDefineGetByDevIdRequest DeviceDefineRequest = new DeviceDefineGetByDevIdRequest();
                        DeviceDefineRequest.DevId = FzInfo.Devid;
                        FzDev = deviceDefineService.GetDeviceDefineCacheByDevId(DeviceDefineRequest).Data;
                    }
                }
                if (objfz.showdt != null)
                {
                    objfz.showdtrowscount = objfz.showdt.Rows.Count;
                    objfz.topindex1       = mainGridView.TopRowIndex;
                    if (mainGridView.FocusedColumn != null)
                    {
                        objfz.showdtfocusrowid = mainGridView.FocusedRowHandle;
                        objfz.showdtfocuscolid = mainGridView.FocusedColumn.ColumnHandle;
                    }
                }
                if (objfz.showdtkz != null)
                {
                    objfz.showdtkzrowscount = objfz.showdtkz.Rows.Count;
                    objfz.topindex2         = gridView1.TopRowIndex;
                    if (gridView1.FocusedColumn != null)
                    {
                        objfz.showdtkzfocuscolid = gridView1.FocusedColumn.ColumnHandle;
                        objfz.showdtkzfocusrowid = gridView1.FocusedRowHandle;
                    }
                }
                objfz.clear();
                lock (StaticClass.allPointDtLockObj)
                {
                    rows = StaticClass.AllPointDt.Select("fzh='" + objfz.fzh + "' and lx='分站'");
                    if (rows.Length > 0)
                    {
                        objfz.point = rows[0]["point"].ToString();

                        if (def != null)
                        {
                            if (FzDev != null && FzDev.LC2 == 13)//这几种分站都支持电量显示
                            {
                                objfz.power        = def.Voltage.ToString();
                                labelControl7.Text = "电量";
                            }
                            else if (FzDev != null && (FzDev.LC2 == 12 || FzDev.LC2 == 15))
                            {
                                objfz.power        = def.Voltage.ToString();
                                labelControl7.Text = "电压";
                            }
                            else
                            {
                                objfz.power = "-";
                            }
                            objfz.wz   = def.Wz;
                            objfz.type = def.DevName;
                            rows       = StaticClass.AllPointDt.Select("point='" + objfz.point + "'");
                            if (rows.Length > 0)
                            {
                                objfz.sszcolor = rows[0]["sszcolor"].ToString();
                            }
                            else
                            {
                                objfz.sszcolor = Color.Blue.ToArgb().ToString();
                            }

                            objfz.mac = def.Jckz1;
                            objfz.ip  = def.Jckz2;
                            objfz.ssz = OprFuction.StateChange(def.State.ToString());

                            objfz.stationDyType = rows[0]["StationDyType"].ToString() == "1" ? "通讯故障" : "通讯正常";
                        }

                        //rows = StaticClass.AllPointDt.Select("fzh=" + objfz.fzh, "tdh");
                        //重新排列 按基础通道,智能通道,控制通道,累计通道顺序进行排序  20170715
                        DataTable SortShowDt = StaticClass.AllPointDt.Clone();
                        //加载基础通道
                        DataRow[] BaseChanelInStation = StaticClass.AllPointDt.Select("fzh='" + objfz.fzh + "' and (tdh<=16 or (tdh>=40 and tdh<=43)) and (lxtype='1' or lxtype='2' or (lxtype='3' and dzh>0))", "fzh,tdh,dzh ASC");
                        foreach (DataRow temprow in BaseChanelInStation)
                        {
                            SortShowDt.Rows.Add(temprow.ItemArray);
                        }
                        //加载智能通道
                        DataRow[] SmartChanelInStation = StaticClass.AllPointDt.Select("fzh='" + objfz.fzh + "' and tdh>=17 and tdh<=24 ", "fzh,tdh,dzh ASC");
                        foreach (DataRow temprow in SmartChanelInStation)
                        {
                            SortShowDt.Rows.Add(temprow.ItemArray);
                        }
                        //加载本地控制通道
                        DataRow[] ControlChanelInStation = StaticClass.AllPointDt.Select("fzh='" + objfz.fzh + "' and (lxtype='3' and dzh=0)", "fzh,tdh,dzh ASC");
                        foreach (DataRow temprow in ControlChanelInStation)
                        {
                            SortShowDt.Rows.Add(temprow.ItemArray);
                        }
                        //加载累计通道
                        DataRow[] TiredChanelInStation = StaticClass.AllPointDt.Select("fzh='" + objfz.fzh + "' and (lxtype='4')", "fzh,tdh,dzh ASC");
                        foreach (DataRow temprow in TiredChanelInStation)
                        {
                            SortShowDt.Rows.Add(temprow.ItemArray);
                        }
                        //加载人员通道
                        DataRow[] PointChanelInStation = StaticClass.AllPointDt.Select("fzh='" + objfz.fzh + "' and (lxtype='7')", "fzh,tdh,dzh ASC");
                        foreach (DataRow temprow in PointChanelInStation)
                        {
                            SortShowDt.Rows.Add(temprow.ItemArray);
                        }
                        rows = SortShowDt.Select("1=1");
                        if (rows.Length > 0)
                        {
                            for (int i = 0; i < rows.Length; i++)
                            {
                                row          = objfz.showdt.NewRow();
                                row["point"] = rows[i]["point"];
                                row["wz"]    = rows[i]["wz"];
                                row["type"]  = rows[i]["lb"];
                                if (int.Parse(rows[i]["zt"].ToString()) == StaticClass.itemStateToClient.EqpState33)//休眠
                                {
                                    row["ssz"] = OprFuction.StateChange(rows[i]["zt"].ToString());
                                }
                                else
                                {
                                    if (rows[i]["lx"].ToString() == "模拟量" && float.TryParse(rows[i]["ssz"].ToString(), out ssz))
                                    {
                                        try
                                        {
                                            if (rows[i]["zl"].ToString().Contains("甲烷"))
                                            {
                                                if (rows[i]["ssz"].ToString() == "0")
                                                {
                                                    rows[i]["ssz"] = "0.00";
                                                }
                                            }
                                        }
                                        catch (Exception ex)
                                        {
                                            Basic.Framework.Logging.LogHelper.Error(ex.ToString());
                                        }
                                        row["ssz"] = rows[i]["ssz"].ToString() + " " + rows[i]["dw"].ToString();
                                    }
                                    else
                                    {
                                        row["ssz"] = rows[i]["ssz"];
                                    }
                                }
                                row["state"] = OprFuction.StateChange(rows[i]["zt"].ToString());
                                if (FzDev != null && (FzDev.LC2 == 13 || FzDev.LC2 == 12 || FzDev.LC2 == 15))
                                {
                                    if (rows[i]["lb"].ToString().Contains("无线"))
                                    {
                                        row["voltage"] = rows[i]["voltage"].ToString() + "%";
                                    }
                                    else
                                    {
                                        row["voltage"] = rows[i]["voltage"].ToString() + "V";
                                    }
                                }
                                else
                                {
                                    row["voltage"] = "-";
                                }

                                row["sxyj"] = rows[i]["sxyj"].ToString() == "0" ? "-" : rows[i]["sxyj"].ToString();
                                row["sxbj"] = rows[i]["sxbj"].ToString() == "0" ? "-" : rows[i]["sxbj"].ToString();
                                row["sxdd"] = rows[i]["sxdd"].ToString() == "0" ? "-" : rows[i]["sxdd"].ToString();
                                row["sxfd"] = rows[i]["sxfd"].ToString() == "0" ? "-" : rows[i]["sxfd"].ToString();
                                row["xxyj"] = rows[i]["xxyj"].ToString() == "0" ? "-" : rows[i]["xxyj"].ToString();
                                row["xxbj"] = rows[i]["xxbj"].ToString() == "0" ? "-" : rows[i]["xxbj"].ToString();
                                row["xxdd"] = rows[i]["xxdd"].ToString() == "0" ? "-" : rows[i]["xxdd"].ToString();
                                row["xxfd"] = rows[i]["xxfd"].ToString() == "0" ? "-" : rows[i]["xxfd"].ToString();
                                objfz.showdt.Rows.Add(row);
                            }
                        }

                        if (dt != null)
                        {
                            objfz.showdtkz = dt;
                        }
                    }
                }
            }

            realshow();
        }
コード例 #24
0
ファイル: CuDerail.cs プロジェクト: ewin66/Safety-JM-Server
        private void LoadPointInfo(Jc_DefInfo Point)
        {
            #region ==================扩展属性==================
            if (Point.K4 > 0)
            {
                CcmbLogicAlarmCon.SelectedIndex = Point.K4;//报警逻辑
            }
            if (Point.K5 > 0)
            {
                Jc_DefInfo LogicPoint = Model.DEFServiceModel.QueryPointByCodeCache(Point.Fzh.ToString().PadLeft(3, '0') + "D" + Point.K5.ToString().PadLeft(2, '0') + Point.K6.ToString());
                if (null != LogicPoint)
                {
                    CcmbLogicAlarmPoint.SelectedItem = LogicPoint.Point + "." + LogicPoint.Wz;
                }
            }
            CtxbDesc.Text = Point.Remark;//描述
            #endregion

            ////各态控制口
            //cckLocalControlZero.Text = SetLocalControlText(Point.K1);
            //cckLocalControlOne.Text = SetLocalControlText(Point.K2);
            //cckLocalControlTwo.Text = SetLocalControlText(Point.K3);
            #region ==================报警控制==================

            Jc_DevInfo tempDev = Model.DEVServiceModel.QueryDevByDevIDCache(Point.Devid);

            if ((Point.K8 & 0x01) == 1) //0态度是否报警
            {
                CckZeroAlarm.Checked = true;
            }
            else
            {
                CckZeroAlarm.Checked = false;
            }

            if ((Point.K8 & 0x02) == 2)  //1态度是否报警
            {
                CckOneAlarm.Checked = true;
            }
            else
            {
                CckOneAlarm.Checked = false;
            }

            if ((Point.K8 & 0x04) == 4) //2态度是否报警
            {
                CckTwoAlarm.Checked = true;
            }
            else
            {
                CckTwoAlarm.Checked = false;
            }
            //颜色显示
            try
            {
                this.CpZeroColour.Color = Color.FromArgb(int.Parse(Point.Bz9.ToString()));
                this.CpOneColour.Color  = Color.FromArgb(int.Parse(Point.Bz10.ToString()));
                this.CpTwoColour.Color  = Color.FromArgb(int.Parse(Point.Bz11.ToString()));
            }
            catch
            { }
            //显示内容
            this.CcmbZeroContent.Text = Point.Bz6;
            this.CcmbOneContent.Text  = Point.Bz7;
            this.CcmbTwoContent.Text  = Point.Bz8;
            //各态控制口
            cckLocalControlZero.Text = SetLocalControlText(Point.K1);
            cckLocalControlOne.Text  = SetLocalControlText(Point.K2);
            cckLocalControlTwo.Text  = SetLocalControlText(Point.K3);

            #endregion

            #region ==================交叉控制==================
            getCrossInf(Point.Point);
            CrossControlDT        = ToDataTable(CrossControlList);
            CdgControl.DataSource = CrossControlDT;
            CdgControl.RefreshDataSource();
            #endregion
        }
コード例 #25
0
        /// <summary>
        /// 刷新历史记录列表
        /// </summary>
        private void RefFiveHistoryRecord(object result)
        {
            //根据分站号获取历史记录信息
            //var rows = gridControlSubstationView.GetSelectedRows();
            //var fzh = gridControlSubstationView.GetRowCellDisplayText(rows[0], "Fzh");
            List <GetSubstationHistoryRealDataByFzhTimeResponse> dataList = (List <GetSubstationHistoryRealDataByFzhTimeResponse>)result;

            dataList = dataList.OrderBy(a => a.SaveTime).ToList();
            foreach (GetSubstationHistoryRealDataByFzhTimeResponse data in dataList)
            {
                //DataRow[] dr = FiveHistoryRecordData.Select("Point='" + data.Point + "' and SaveTime='" + data.SaveTime.ToString("yyyy/MM/dd HH:mm:ss") + "'");
                //if (dr.Length == 0)//分站测点号和时间一样的记录无法正常显示   2017-11-03
                //{
                DataRow obj = FiveHistoryRecordData.NewRow();
                obj["Point"]          = data.Point;
                obj["SaveTime"]       = data.SaveTime.ToString("yyyy/MM/dd HH:mm:ss");
                obj["TypeName"]       = data.TypeName;
                obj["StateName"]      = data.StateName;
                obj["Location"]       = data.Location;
                obj["DeviceTypeName"] = data.DeviceTypeName;
                obj["RealData"]       = data.RealData;
                //如果是开关量显示0,1,2态对应的显示值
                Jc_DevInfo dev = devList.Find(a => a.DevModel == data.DeviceTypeName);
                if (dev != null && (dev.Type == 2 || dev.Type == 3))
                {
                    if (data.RealData == "1")
                    {
                        obj["RealData"] = dev.Xs2;
                    }
                    else if (data.RealData == "2")
                    {
                        obj["RealData"] = dev.Xs3;
                    }
                    else
                    {
                        obj["RealData"] = dev.Xs1;
                    }
                }
                obj["GradingAlarmLevel"] = data.GradingAlarmLevel;
                obj["Voltage"]           = data.Voltage + "V";
                string feedBackState = "";
                switch (data.FeedBackState)
                {
                case "0":
                    feedBackState = "有电";
                    break;

                case "1":
                    feedBackState = "无电";
                    break;

                default:
                    feedBackState = "";
                    break;
                }
                obj["FeedBackState"] = feedBackState;
                string feedState = "";
                switch (data.FeedState)
                {
                case "1":
                    feedState = "馈电成功";
                    break;

                case "2":
                    feedState = "馈电失败";
                    break;

                case "3":
                    feedState = "复电成功";
                    break;

                case "4":
                    feedState = "复电失败";
                    break;

                default:
                    feedState = "";
                    break;
                }
                obj["FeedState"] = feedState;
                FiveHistoryRecordData.Rows.InsertAt(obj, 0);
                //}
            }
            //gridViewFiveHisData.FocusedRowHandle = 0;
            //gridControlFiveHisData.DataSource = FiveHistoryRecord;
        }