Beispiel #1
0
        /// <summary>
        /// 刷新分站基础信息
        /// </summary>
        /// <param name="sFzh"></param>
        private void RefBasicInfo(string sFzh)
        {
            var info = ChargeMrg.GetSubstationBasicInfo(sFzh);

            //绑定分站信息
            textFzh.Text        = sFzh;
            fzType.Text         = info.Type;
            wz.Text             = info.Location;
            onlyCode.Text       = info.OnlyCoding;
            ProductionTime.Text = info.ProductionTime.ToString("yyyy-MM-dd HH:mm:ss");
            Voltage.Text        = info.Voltage;
            RestartNum.Text     = info.RestartNum.ToString();
            if (!string.IsNullOrEmpty(info.IP))
            {
                IP.Text = info.IP.ToString();
            }
            if (!string.IsNullOrEmpty(info.MAC))
            {
                MAC.Text = info.MAC.ToString();
            }

            //绑定下级设备信息
            var dt = ObjectConverter.ToDataTable <InferiorBasicInfo>(info.InferiorInfo);

            xjsb.DataSource = dt;
        }
Beispiel #2
0
        /// <summary>
        /// 交换机电源箱信息刷新
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void switchRefresh_Click(object sender, EventArgs e)
        {
            try
            {
                var node = treeViewSwitch.SelectedNode;
                if (node == null)
                {
                    XtraMessageBox.Show("请先选择需操作的项。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    return;
                }

                if (_thrSwitchRefresh != null && _thrSwitchRefresh.IsAlive == true)
                {
                    return;
                }
                selectMacNow = node.Name;
                ChargeMrg.sendD(16, node.Name);
                _thrSwitchRefresh = new Thread(SwitchRefreshRefreshThrFun)
                {
                    IsBackground = true
                };
                _thrSwitchRefresh.Start(node.Name);
            }
            catch (Exception exc)
            {
                XtraMessageBox.Show(exc.ToString(), "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }
Beispiel #3
0
        /// <summary>
        /// 刷新分站基础信息按钮
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void refBasicInfo_Click(object sender, EventArgs e)
        {
            try
            {
                var node = treeViewInterlockedCircuitBreaker.SelectedNode;
                if (node == null)
                {
                    XtraMessageBox.Show("请先选择需操作的项。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    return;
                }

                var now = DateTime.Now;
                if ((now - _lastBasicInfoRefTime).TotalSeconds > 15)
                {
                    ChargeMrg.QueryDeviceInfoRequest(node.Name, 1, 1, 2);
                    _lastBasicInfoRefTime = now;
                }

                RefBasicInfo(node.Name);
            }
            catch (Exception exc)
            {
                XtraMessageBox.Show(exc.ToString(), "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }
Beispiel #4
0
        /// <summary>
        /// 分站树选择函数
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void treeViewSubstation_AfterSelect(object sender, TreeViewEventArgs e)
        {
            try
            {
                //结束刷新进程
                if (_thrSubstationRefresh != null && _thrSubstationRefresh.IsAlive == true)
                {
                    _thrSubstationRefresh.Abort();
                }

                var node = treeViewSubstation.SelectedNode;
                if (node == null)
                {
                    //XtraMessageBox.Show("请先选择需操作的项。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    return;
                }

                //刷新放电按钮状态
                //var point = node.Name.PadLeft(3, '0') + "0000";
                //var tempControls = ChargeMrg.QueryJCSDKZbyInf(10, point);
                //if (tempControls.Count > 0)
                //{
                //    //XtraMessageBox.Show("该设备正处于放电状态。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                //    //return;
                //    substationExecuteDischarge.Text = "取消放电";
                //    substationExecuteDischarge.ForeColor = Color.Red;
                //}
                //else
                //{
                //    substationExecuteDischarge.Text = "执行放电";
                //    substationExecuteDischarge.ForeColor = Color.Green;
                //}

                //var gsa = ControlInterfaceFuction.GetSubstationPowerBoxInfo(node.Name);
                //SubstationInfoRefresh(gsa);
                selectFzhNow = node.Name;

                ChargeMrg.sendD(0, node.Name);
                _thrSubstationRefresh = new Thread(SubstationRefreshRefreshThrFun)
                {
                    IsBackground = true
                };
                _thrSubstationRefresh.Start(node.Name);
            }
            catch (Exception exc)
            {
                XtraMessageBox.Show(exc.ToString(), "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }
Beispiel #5
0
        /// <summary>
        /// 其他管理分站列表选择函数
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void treeViewInterlockedCircuitBreaker_AfterSelect(object sender, TreeViewEventArgs e)
        {
            try
            {
                var node = treeViewInterlockedCircuitBreaker.SelectedNode;
                if (node == null)
                {
                    return;
                }

                _lastBasicInfoRefTime = new DateTime();

                //刷新解锁按钮状态
                var point        = node.Name.PadLeft(3, '0') + "0000";
                var tempControls = ChargeMrg.QueryJCSDKZbyInf((int)ControlType.GasThreeUnlockControl, point);
                if (tempControls.Count > 0)
                {
                    icbUnlock.Text      = "取消三分风电闭锁解锁";
                    icbUnlock.ForeColor = Color.Red;
                }
                else
                {
                    icbUnlock.Text      = "三分风电闭锁解锁";
                    icbUnlock.ForeColor = Color.Green;
                }
                //刷新解锁按钮状态
                var point1        = node.Name.PadLeft(3, '0') + "0000";
                var tempControls1 = ChargeMrg.QueryJCSDKZbyInf((int)ControlType.StationHisDataClear, point1);
                if (tempControls1.Count > 0)
                {
                    simpleButton1.Text      = "取消清除分站历史数据";
                    simpleButton1.ForeColor = Color.Red;
                }
                else
                {
                    simpleButton1.Text      = "清除分站历史数据";
                    simpleButton1.ForeColor = Color.Green;
                }

                RefBasicInfo(node.Name);
            }
            catch (Exception exc)
            {
                XtraMessageBox.Show(exc.ToString(), "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }
Beispiel #6
0
        /// <summary>
        /// 交换机树选择函数
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void treeViewSwitch_AfterSelect(object sender, TreeViewEventArgs e)
        {
            try
            {
                //结束刷新进程
                if (_thrSwitchRefresh != null && _thrSwitchRefresh.IsAlive == true)
                {
                    _thrSwitchRefresh.Abort();
                }

                var node = treeViewSwitch.SelectedNode;
                if (node == null)
                {
                    return;
                }

                //刷新放电按钮状态
                //var point = node.Name;
                //var tempControls = ChargeMrg.QueryJCSDKZbyInf(10, point);
                //if (tempControls.Count > 0)
                //{
                //    switchExecuteDischarge.Text = "取消放电";
                //    switchExecuteDischarge.ForeColor = Color.Red;
                //}
                //else
                //{
                //    switchExecuteDischarge.Text = "执行放电";
                //    switchExecuteDischarge.ForeColor = Color.Green;
                //}

                //var gsp = ControlInterfaceFuction.GetSwitchPowerBoxInfo(node.Name);
                //SwitchInfoRefresh(gsp);
                selectMacNow = node.Name;

                ChargeMrg.sendD(16, node.Name);
                _thrSwitchRefresh = new Thread(SwitchRefreshRefreshThrFun)
                {
                    IsBackground = true
                };
                _thrSwitchRefresh.Start(node.Name);
            }
            catch (Exception exc)
            {
                XtraMessageBox.Show(exc.ToString(), "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }
Beispiel #7
0
 /// <summary>
 /// 分站取消放电
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void substationCancelDischarge_Click(object sender, EventArgs e)
 {
     try
     {
         var node = treeViewSubstation.SelectedNode;
         if (node == null)
         {
             XtraMessageBox.Show("请先选择需操作的项。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
             return;
         }
         var point = node.Name;
         ChargeMrg.SendStationDControl(Convert.ToUInt16(point), 1);
         XtraMessageBox.Show("操作成功。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
     }
     catch (Exception exc)
     {
         XtraMessageBox.Show(exc.ToString(), "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
     }
 }
Beispiel #8
0
        /// <summary>
        /// 交换机取消放电
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void switchCancelDischarge_Click(object sender, EventArgs e)
        {
            try
            {
                var node = treeViewSwitch.SelectedNode;
                if (node == null)
                {
                    XtraMessageBox.Show("请先选择需操作的项。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    return;
                }
                var mac = node.Name;
                ChargeMrg.SendSwitchesDControl(mac, 1);

                //ChargeMrg.MacPowerboxchargehistoryUpdate(mac);//更新放电结束时间
                XtraMessageBox.Show("操作成功。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            catch (Exception exc)
            {
                XtraMessageBox.Show(exc.ToString(), "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }
Beispiel #9
0
        /// <summary>
        /// 交换机执行放电
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void switchExecuteDischarge_Click(object sender, EventArgs e)
        {
            try
            {
                var node = treeViewSwitch.SelectedNode;
                if (node == null)
                {
                    XtraMessageBox.Show("请先选择需操作的项。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    return;
                }
                var mac = node.Name;
                ChargeMrg.SendSwitchesDControl(mac, 2);

                //写放电记录  20180124
                ChargeMrg.AddPowerboxchargehistory(0, mac);

                XtraMessageBox.Show("操作成功。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            catch (Exception exc)
            {
                XtraMessageBox.Show(exc.ToString(), "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }
Beispiel #10
0
        /// <summary>
        /// 风电闭锁解锁
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void icbUnlock_Click(object sender, EventArgs e)
        {
            try
            {
                var node = treeViewInterlockedCircuitBreaker.SelectedNode;
                if (node == null)
                {
                    XtraMessageBox.Show("请先选择需操作的项。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    return;
                }

                if (icbUnlock.Text == "三分风电闭锁解锁")
                {
                    if (XtraMessageBox.Show("点击三分强制解锁后,需要手动取消,否则设备一直处于强制解锁状态,是否继续?", "询问", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No)
                    {
                        return;
                    }
                }

                var point        = node.Name.PadLeft(3, '0') + "0000";
                var tempControls = ChargeMrg.QueryJCSDKZbyInf((int)ControlType.GasThreeUnlockControl, point);
                if (tempControls.Count > 0)         //处于解锁状态
                {
                    if (icbUnlock.Text == "取消三分风电闭锁解锁")
                    {
                        for (var i = 0; i < tempControls.Count; i++)
                        {
                            tempControls[i].InfoState = InfoState.Delete;
                            OperateLogHelper.InsertOperateLog(4,
                                                              "取消三分风电闭锁解锁:主控【" + tempControls[i].ZkPoint + "】-【" + tempControls[i].Bkpoint + "】-【" +
                                                              DateTime.Now + "】", "");
                        }
                        ChargeMrg.DelJC_JCSDKZCache(tempControls.ToList());
                        icbUnlock.Text      = "三分风电闭锁解锁";
                        icbUnlock.ForeColor = Color.Green;
                    }
                    else if (icbUnlock.Text == "三分风电闭锁解锁")
                    {
                        icbUnlock.Text      = "取消三分风电闭锁解锁";
                        icbUnlock.ForeColor = Color.Red;
                    }
                }
                else        //未处于解锁状态
                {
                    if (icbUnlock.Text == "三分风电闭锁解锁")
                    {
                        var tempControlAdd = new Jc_JcsdkzInfo
                        {
                            ID        = IdHelper.CreateLongId().ToString(),
                            Type      = (int)ControlType.GasThreeUnlockControl,
                            ZkPoint   = "0000000",
                            Bkpoint   = point,
                            InfoState = InfoState.AddNew
                        };
                        ChargeMrg.AddJC_JCSDKZCache(tempControlAdd);
                        OperateLogHelper.InsertOperateLog(4,
                                                          "三分风电闭锁解锁:主控【" + tempControlAdd.ZkPoint + "】-【" + tempControlAdd.Bkpoint + "】-【" +
                                                          DateTime.Now + "】", "");
                        icbUnlock.Text      = "取消三分风电闭锁解锁";
                        icbUnlock.ForeColor = Color.Red;
                    }
                    else if (icbUnlock.Text == "取消三分风电闭锁解锁")
                    {
                        icbUnlock.Text      = "三分风电闭锁解锁";
                        icbUnlock.ForeColor = Color.Green;
                    }
                }
            }
            catch (Exception exc)
            {
                XtraMessageBox.Show(exc.ToString(), "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }
Beispiel #11
0
        /// <summary>
        /// 分站电源箱信息刷新
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void substationRefresh_Click(object sender, EventArgs e)
        {
            //try
            //{
            //    var node = treeViewSwitch.SelectedNode;
            //    if (node == null)
            //    {
            //        XtraMessageBox.Show("请先选择需操作的项。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            //        return;
            //    }

            //    var point = node.Name;
            //    var tempControls = ChargeMrg.QueryJCSDKZbyInf(10, point);
            //    if (tempControls.Count == 0)
            //    {
            //        XtraMessageBox.Show("该设备未处于放电状态。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            //        return;
            //    }

            //    for (var i = 0; i < tempControls.Count; i++)
            //    {
            //        tempControls[i].InfoState = InfoState.Delete;
            //        OperateLogHelper.InsertOperateLog(4,
            //            "取消放电:主控【" + tempControls[i].ZkPoint + "】-【" + tempControls[i].Bkpoint + "】-【" +
            //            DateTime.Now + "】", "");
            //    }
            //    //ChargeMrg.DelJC_JCSDKZCache(tempControls.ToList());

            //    XtraMessageBox.Show("操作成功。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            //}
            //catch (Exception exc)
            //{
            //    XtraMessageBox.Show(exc.ToString(), "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            //}

            try
            {
                var node = treeViewSubstation.SelectedNode;
                if (node == null)
                {
                    XtraMessageBox.Show("请先选择需操作的项。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    return;
                }

                if (_thrSubstationRefresh != null && _thrSubstationRefresh.IsAlive == true)
                {
                    return;
                }
                selectFzhNow = node.Name;
                ChargeMrg.sendD(0, node.Name);
                _thrSubstationRefresh = new Thread(SubstationRefreshRefreshThrFun)
                {
                    IsBackground = true
                };
                _thrSubstationRefresh.Start(node.Name);
            }
            catch (Exception exc)
            {
                XtraMessageBox.Show(exc.ToString(), "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }
Beispiel #12
0
        /// <summary>
        /// 分站电源箱放电
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void substationExecuteDischarge_Click(object sender, EventArgs e)
        {
            try
            {
                var node = treeViewSubstation.SelectedNode;
                if (node == null)
                {
                    XtraMessageBox.Show("请先选择需操作的项。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    return;
                }
                var point = node.Name;
                ChargeMrg.SendStationDControl(Convert.ToUInt16(point), 2);

                //写放电记录  20180124
                ChargeMrg.AddPowerboxchargehistory(Convert.ToUInt16(point), "");

                //var tempControls = ChargeMrg.QueryJCSDKZbyInf(10, point);
                //if (tempControls.Count > 0) //处于放电状态
                //{
                //    if (substationExecuteDischarge.Text == "取消放电")
                //    {
                //        for (var i = 0; i < tempControls.Count; i++)
                //        {
                //            tempControls[i].InfoState = InfoState.Delete;
                //            OperateLogHelper.InsertOperateLog(4,
                //                "取消放电:主控【" + tempControls[i].ZkPoint + "】-【" + tempControls[i].Bkpoint + "】-【" +
                //                DateTime.Now + "】", "");
                //        }
                //        ChargeMrg.DelJC_JCSDKZCache(tempControls.ToList());
                //        substationExecuteDischarge.Text = "执行放电";
                //        substationExecuteDischarge.ForeColor = Color.Green;
                //    }
                //    else if (substationExecuteDischarge.Text == "执行放电")
                //    {
                //        substationExecuteDischarge.Text = "取消放电";
                //        substationExecuteDischarge.ForeColor = Color.Red;
                //    }
                //}
                //else //处于未放电状态
                //{
                //    if (substationExecuteDischarge.Text == "执行放电")
                //    {
                //        var tempControlAdd = new Jc_JcsdkzInfo
                //        {
                //            ID = IdHelper.CreateLongId().ToString(),
                //            Type = 10,
                //            ZkPoint = "0000000",
                //            Bkpoint = point,
                //            InfoState = InfoState.AddNew
                //        };
                //        ChargeMrg.AddJC_JCSDKZCache(tempControlAdd);
                //        OperateLogHelper.InsertOperateLog(4,
                //            "执行放电:主控【" + tempControlAdd.ZkPoint + "】-【" + tempControlAdd.Bkpoint + "】-【" +
                //            DateTime.Now + "】", "");
                //        substationExecuteDischarge.Text = "取消放电";
                //        substationExecuteDischarge.ForeColor = Color.Red;
                //    }
                //    else if (substationExecuteDischarge.Text == "取消放电")
                //    {
                //        substationExecuteDischarge.Text = "执行放电";
                //        substationExecuteDischarge.ForeColor = Color.Green;
                //    }
                //}
                XtraMessageBox.Show("操作成功。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            catch (Exception exc)
            {
                XtraMessageBox.Show(exc.ToString(), "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }
Beispiel #13
0
        private void simpleButton1_Click(object sender, EventArgs e)
        {
            try
            {
                var node = treeViewInterlockedCircuitBreaker.SelectedNode;
                if (node == null)
                {
                    XtraMessageBox.Show("请先选择需操作的项。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    return;
                }

                var point        = node.Name.PadLeft(3, '0') + "0000";
                var tempControls = ChargeMrg.QueryJCSDKZbyInf((int)ControlType.StationHisDataClear, point);
                if (tempControls.Count > 0)         //处于解锁状态
                {
                    if (simpleButton1.Text == "取消清除分站历史数据")
                    {
                        for (var i = 0; i < tempControls.Count; i++)
                        {
                            tempControls[i].InfoState = InfoState.Delete;
                            OperateLogHelper.InsertOperateLog(4,
                                                              "取消清除分站历史数据:主控【" + tempControls[i].ZkPoint + "】-【" + tempControls[i].Bkpoint + "】-【" +
                                                              DateTime.Now + "】", "");
                        }
                        ChargeMrg.DelJC_JCSDKZCache(tempControls.ToList());
                        simpleButton1.Text      = "清除分站历史数据";
                        simpleButton1.ForeColor = Color.Green;
                    }
                    else if (simpleButton1.Text == "清除分站历史数据")
                    {
                        simpleButton1.Text      = "取消清除分站历史数据";
                        simpleButton1.ForeColor = Color.Red;
                    }
                }
                else        //未处于解锁状态
                {
                    if (simpleButton1.Text == "清除分站历史数据")
                    {
                        var tempControlAdd = new Jc_JcsdkzInfo
                        {
                            ID        = IdHelper.CreateLongId().ToString(),
                            Type      = (int)ControlType.StationHisDataClear,
                            ZkPoint   = "0000000",
                            Bkpoint   = point,
                            InfoState = InfoState.AddNew
                        };
                        ChargeMrg.AddJC_JCSDKZCache(tempControlAdd);
                        OperateLogHelper.InsertOperateLog(4,
                                                          "清除分站历史数据:主控【" + tempControlAdd.ZkPoint + "】-【" + tempControlAdd.Bkpoint + "】-【" +
                                                          DateTime.Now + "】", "");
                        simpleButton1.Text      = "取消清除分站历史数据";
                        simpleButton1.ForeColor = Color.Red;
                    }
                    else if (simpleButton1.Text == "取消清除分站历史数据")
                    {
                        simpleButton1.Text      = "清除分站历史数据";
                        simpleButton1.ForeColor = Color.Green;
                    }
                }
            }
            catch (Exception exc)
            {
                XtraMessageBox.Show(exc.ToString(), "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }