Esempio n. 1
0
        /// <summary>
        /// 初始化日计时数据
        /// </summary>
        /// <param name="meterGroup"></param>
        private void InitDataTimeErr(CLDC_DataCore.Model.DnbModel.DnbGroupInfo meterGroup, int CheckOrderID)
        {
            StPlan_QianDong _Item;

            _Item = (StPlan_QianDong)meterGroup.CheckPlan[CheckOrderID];
            string[] GetString = new string[4];
            if (_Item.DayCheckTimesSetting != null)
            {
                GetString = _Item.DayCheckTimesSetting.Split('|');
            }
            else
            {
                GetString[0] = "0";
            }
            if (GetString[0] == "1")
            {
                if (tabControl1.TabPages.Count == 1)            //如果Tab的页数大于1,那表示存在动态增加的数据页
                {
                    int Count;
                    if (GetString.Length > 3)
                    {
                        int.TryParse(GetString[2], out Count);
                    }
                    else
                    {
                        Count = 10;
                    }
                    tabControl1.TabPages.Add("日计时误差数据");
                    CLDC_MeterUI.UI_Detection_New.DgnDataView.ViewDateTimeErr _DateTimeErr = new CLDC_MeterUI.UI_Detection_New.DgnDataView.ViewDateTimeErr(Count);
                    tabControl1.TabPages[1].Controls.Add(_DateTimeErr);
                    _DateTimeErr.Dock   = DockStyle.Fill;
                    _DateTimeErr.Margin = new System.Windows.Forms.Padding(0);
                }
            }
            else
            {
                if (tabControl1.TabPages.Count > 1)
                {
                    tabControl1.TabPages.RemoveAt(tabControl1.TabPages.Count - 1);
                }
            }
        }
        /// <summary>
        /// 刷新数据事件
        /// </summary>
        /// <param name="meterGroup"></param>
        /// <param name="taiType"></param>
        /// <param name="taiId"></param>
        public void RefreshData(CLDC_DataCore.Model.DnbModel.DnbGroupInfo meterGroup, int CheckOrderID)
        {
            if (!(meterGroup.CheckPlan[CheckOrderID] is CLDC_DataCore.Struct.StPlan_PrePareTest))
            {
                return;
            }

            CLDC_DataCore.Struct.StPlan_PrePareTest item  = (CLDC_DataCore.Struct.StPlan_PrePareTest)meterGroup.CheckPlan[CheckOrderID];
            CLDC_DataCore.Struct.StPlan_Dgn         _Item = new CLDC_DataCore.Struct.StPlan_Dgn();// (CLDC_DataCore.Struct.StPlan_Dgn)meterGroup.CheckPlan[CheckOrderID];
            _Item.DgnPrjName   = item.PrePrjName;
            _Item.DgnPrjID     = item.PrePrjID;
            _Item.PrjParm      = item.PrjParm;
            _Item.OutPramerter = item.OutPramerter;
            bool bFind = false;

            if (Tab_Prepare.TabPages.Count > 1)            //如果Tab的页数大于1,那表示存在动态增加的数据页
            {
                if (Data_Prepare.Tag != null && Data_Prepare.Tag.ToString() == _Item.DgnPrjID)
                {
                    bFind = true;
                }
                else
                {
                    for (int i = Tab_Prepare.TabPages.Count - 1; i > 0; i--)
                    {
                        Tab_Prepare.TabPages.RemoveAt(i);
                    }
                    bFind = false;
                }
            }

            if (!bFind)
            {
                Data_Prepare.Tag = _Item.DgnPrjID;          //将ID值放到数据列表的Tag中,供数据刷新使用

                switch (_Item.DgnPrjID)
                {
                    #region
                case "002":
                {
                    int      Count;
                    string[] str = _Item.PrjParm.Split('|');
                    if (str.Length >= 2)
                    {
                        int.TryParse(str[1], out Count);
                    }
                    else
                    {
                        Count = 10;
                    }
                    Tab_Prepare.TabPages.Add("日计时误差数据");
                    CLDC_MeterUI.UI_Detection_New.DgnDataView.ViewDateTimeErr _DateTimeErr = new CLDC_MeterUI.UI_Detection_New.DgnDataView.ViewDateTimeErr(Count);
                    Tab_Prepare.TabPages[1].Controls.Add(_DateTimeErr);
                    _DateTimeErr.Dock   = DockStyle.Fill;
                    _DateTimeErr.Margin = new System.Windows.Forms.Padding(0);
                    break;
                }

                case "003":
                {
                    Tab_Prepare.TabPages.Add("费率时段数据");
                    CLDC_MeterUI.UI_Detection_New.DgnDataView.ViewReadPeriod _Period = new CLDC_MeterUI.UI_Detection_New.DgnDataView.ViewReadPeriod(_Item);
                    Tab_Prepare.TabPages[1].Controls.Add(_Period);
                    _Period.Dock   = DockStyle.Fill;
                    _Period.Margin = new System.Windows.Forms.Padding(0);
                    break;
                }

                case "004":
                case "028":
                case "029":
                case "030":
                {
                    Tab_Prepare.TabPages.Add("时段投切数据");
                    CLDC_MeterUI.UI_Detection_New.DgnDataView.ViewSdtq _Sdtq = new CLDC_MeterUI.UI_Detection_New.DgnDataView.ViewSdtq(_Item);
                    Tab_Prepare.TabPages[1].Controls.Add(_Sdtq);
                    _Sdtq.Dock   = DockStyle.Fill;
                    _Sdtq.Margin = new System.Windows.Forms.Padding(0);
                    break;
                }

                case "005":
                case "031":
                case "032":
                case "033":
                {
                    Tab_Prepare.TabPages.Add("计度器示值组合误差数据");
                    CLDC_MeterUI.UI_Detection_New.DgnDataView.ViewRegister _Register = new CLDC_MeterUI.UI_Detection_New.DgnDataView.ViewRegister(_Item);
                    Tab_Prepare.TabPages[1].Controls.Add(_Register);
                    _Register.Dock   = DockStyle.Fill;
                    _Register.Margin = new System.Windows.Forms.Padding(0);
                    break;
                }

                case "006":
                case "034":
                case "035":
                case "036":
                {
                    Tab_Prepare.TabPages.Add("费率时段示值误差数据");
                    CLDC_MeterUI.UI_Detection_New.DgnDataView.ViewRatePeriod _RatePeriod = new CLDC_MeterUI.UI_Detection_New.DgnDataView.ViewRatePeriod(_Item);
                    Tab_Prepare.TabPages[1].Controls.Add(_RatePeriod);
                    _RatePeriod.Dock   = DockStyle.Fill;
                    _RatePeriod.Margin = new System.Windows.Forms.Padding(0);
                    break;
                }

                case "013":
                {
                    Tab_Prepare.TabPages.Add("时间误差");
                    CLDC_MeterUI.UI_Detection_New.DgnDataView.ViewGpsTime _Gps = new CLDC_MeterUI.UI_Detection_New.DgnDataView.ViewGpsTime();
                    Tab_Prepare.TabPages[1].Controls.Add(_Gps);
                    _Gps.Dock   = DockStyle.Fill;
                    _Gps.Margin = new System.Windows.Forms.Padding(0);
                    break;
                }

                case "019":
                {
                    Tab_Prepare.TabPages.Add("电量寄存器检查");
                    CLDC_MeterUI.UI_Detection_New.DgnDataView.ViewMemoryCheck _MemortCheck = new CLDC_MeterUI.UI_Detection_New.DgnDataView.ViewMemoryCheck();
                    Tab_Prepare.TabPages[1].Controls.Add(_MemortCheck);
                    _MemortCheck.Dock   = DockStyle.Fill;
                    _MemortCheck.Margin = new System.Windows.Forms.Padding(0);
                    break;
                }

                case "014":
                {
                    Tab_Prepare.TabPages.Add("最大需量0.1Ib数据");
                    CLDC_MeterUI.UI_Detection_New.DgnDataView.ViewMaxXl _MaxXl = new CLDC_MeterUI.UI_Detection_New.DgnDataView.ViewMaxXl(_Item);
                    Tab_Prepare.TabPages[1].Controls.Add(_MaxXl);
                    _MaxXl.Dock   = DockStyle.Fill;
                    _MaxXl.Margin = new System.Windows.Forms.Padding(0);
                    break;
                }

                case "015":
                {
                    Tab_Prepare.TabPages.Add("最大需量1.0Ib数据");
                    CLDC_MeterUI.UI_Detection_New.DgnDataView.ViewMaxXl _MaxXl = new CLDC_MeterUI.UI_Detection_New.DgnDataView.ViewMaxXl(_Item);
                    Tab_Prepare.TabPages[1].Controls.Add(_MaxXl);
                    _MaxXl.Dock   = DockStyle.Fill;
                    _MaxXl.Margin = new System.Windows.Forms.Padding(0);
                    break;
                }

                case "016":
                {
                    Tab_Prepare.TabPages.Add("最大需量Imax数据");
                    CLDC_MeterUI.UI_Detection_New.DgnDataView.ViewMaxXl _MaxXl = new CLDC_MeterUI.UI_Detection_New.DgnDataView.ViewMaxXl(_Item);
                    Tab_Prepare.TabPages[1].Controls.Add(_MaxXl);
                    _MaxXl.Dock   = DockStyle.Fill;
                    _MaxXl.Margin = new System.Windows.Forms.Padding(0);
                    break;
                }

                case "017":
                {
                    Tab_Prepare.TabPages.Add("读取电量数据");
                    CLDC_MeterUI.UI_Detection_New.DgnDataView.ViewDianLiang _DianLiang = new CLDC_MeterUI.UI_Detection_New.DgnDataView.ViewDianLiang(_Item);
                    Tab_Prepare.TabPages[1].Controls.Add(_DianLiang);
                    _DianLiang.Dock   = DockStyle.Fill;
                    _DianLiang.Margin = new System.Windows.Forms.Padding(0);
                    break;
                }

                case "043":
                {
                    Tab_Prepare.TabPages.Add("阶梯电价检查");
                    CLDC_MeterUI.UI_Detection_New.DgnDataView.ViewStepTariff stepPrice = new CLDC_MeterUI.UI_Detection_New.DgnDataView.ViewStepTariff(_Item);
                    Tab_Prepare.TabPages[1].Controls.Add(stepPrice);
                    stepPrice.Dock   = DockStyle.Fill;
                    stepPrice.Margin = new System.Windows.Forms.Padding(0);
                }
                break;

                case "044":
                {
                    Tab_Prepare.TabPages.Add("费率电价检查");
                    CLDC_MeterUI.UI_Detection_New.DgnDataView.ViewRatesTime ratesPrice = new CLDC_MeterUI.UI_Detection_New.DgnDataView.ViewRatesTime(_Item);
                    Tab_Prepare.TabPages[1].Controls.Add(ratesPrice);
                    ratesPrice.Dock   = DockStyle.Fill;
                    ratesPrice.Margin = new System.Windows.Forms.Padding(0);
                }
                break;
                    #endregion
                }
            }
            this.RefreshGrid(meterGroup, CheckOrderID);

            Data_Prepare.Enabled = true;
        }