protected void Page_Load(object sender, EventArgs e)
        {

            _Function = BusinessFacadeShanliTech_HLD_Business.DeviceFunctionTemplateDisp(FunctionID);
            _Device = BusinessFacadeShanliTech_HLD_Business.DeviceTemplateDisp(_Function.DeviceID);
            if (!Page.IsPostBack)
            {
                BindDataList(_Function, _Device);
                OnStart(_Function, _Device);
            }
            if (string.IsNullOrEmpty(CMD)) CMD = "New";
        }
        private void OnStart(DeviceFunctionTemplateEntity _Function, DeviceTemplateEntity _Device)
        {
            
            Device_Permition_DataEntity ut = BusinessFacadeShanliTech_HLD_Business.Device_Permition_DataDisp(IDX);
            OnStartData(ut,_Function,_Device);
            HiddenColumnsByPermitType(_Device.PermitType);
            switch (CMD)
            {
                case "New":
                    HideDisp();
                    break;
                case "List":
                    //HideInput();
                    HideDisp();
                    break;
                case "Edit":
                    HideDisp();
                    break;
                case "Delete":
                    #region 删除
                    
                    //ToolMethods.FunctionAndPointDeleteByDeviceID(IDX);  //级联删除相关功能及功能测试点

                    //ut.DataTable_Action_ = DataTable_Action.Update;
                    //ut.DelFlag = true;
                    //if (BusinessFacadeShanliTech_HLD_Business.DeviceInsertUpdateDelete(ut) > 0)
                    //{
                    //    EventMessage.MessageBox(1, "删除成功", string.Format("删除ID:{0}成功!", IDX), Icon_Type.OK, Common.GetHomeBaseUrl("Default.aspx"));
                    //}
                    //else
                    //{
                    //    EventMessage.MessageBox(1, "删除失败", string.Format("删除ID:{0}失败!", IDX), Icon_Type.Error, Common.GetHomeBaseUrl("Default.aspx"));
                    //}

                    #endregion
                    break;
            }
            HiddenFreqByFuncCode();
        }
        /// <summary>
        /// 初始化数据
        /// </summary>
        /// <param name="ut"></param>
        private void OnStartData(DeviceFunctionTemplateEntity ut)
        {
        AccuracyLevel_Input.Text = AccuracyLevel_Disp.Text = ut.AccuracyLevel.ToString();
                DetectBasisCode_Input.Text = DetectBasisCode_Disp.Text = ut.DetectBasisCode.ToString();
                DetectBasisName_Input.Text = DetectBasisName_Disp.Text = ut.DetectBasisName.ToString();
                //DeviceID_Input.Text = DeviceID_Disp.Text = DeviceID.ToString(); // ut.DeviceID.ToString();
                //DeviceID_DropDown.SelectedValue = ut.DeviceID.ToString();
                //DeviceID_Disp.Text = DeviceID_DropDown.SelectedItem.Text;
                DeviceID_Disp.Text = BusinessFacadeShanliTech_HLD_Business.DeviceTemplateDisp(DeviceID).DeviceNum;

                FunctionCode_Input.Text = FunctionCode_Disp.Text = ut.FunctionCode.ToString();
                FunctionName_Input.Text = FunctionName_Disp.Text = ut.FunctionName.ToString();
                TestRange_Input.Text = TestRange_Disp.Text = ut.TestRange.ToString();
                SourceValidDate_Input.Text = SourceValidDate_Disp.Text = ut.SourceValidDate.ToString();
                //OrderID_Disp.Text = OrderID_Input.Text = ut.OrderID.ToString();
        }
 /// <summary>
 /// 绑定数据
 /// </summary>
 private void BindDataList(DeviceFunctionTemplateEntity _Function, DeviceTemplateEntity _Device)
 {
     QueryParam qp = new QueryParam();
     qp.Where = string.Format("Where DeviceNum = '{0}' And DeviceModel = '{1}' And FunctionCode = '{2}'", _Device.DeviceNum, _Device.DeviceModel, _Function.FunctionCode);
     qp.PageIndex = AspNetPager1.CurrentPageIndex;
     qp.PageSize = AspNetPager1.PageSize;
     qp.Orderfld = Orderfld;
     qp.OrderType = OrderType;
     int RecordCount = 0;
     List<Device_Permition_DataEntity> lst = BusinessFacadeShanliTech_HLD_Business.Device_Permition_DataList(qp, out RecordCount);
     GridView1.DataSource = lst;
     GridView1.DataBind();
     this.AspNetPager1.RecordCount = RecordCount;
 }
 private void OnStartData(Device_Permition_DataEntity ut, DeviceFunctionTemplateEntity _Function, DeviceTemplateEntity _Device)
 {
     //FuncCode_Disp.Text = _Function.FunctionCode;
     //FuncRange_Disp.Text = _Function.TestRange;
     Unit_Disp.Text = Unit_Input.Text = ut.RangeUnitOriginal;
     Range_Input.Text = ut.RangeEndOriginal.ToString();
     RangeCode_Input.Text = ut.RangeCode;
     RangeFull_Input.Text = ut.RangeFull.ToString();
     FrequencyStart_Input.Text = ut.FreqStartOriginal.ToString();
     FrequencyEnd_Input.Text = ut.FreqEndOriginal.ToString();
     FreqStartUnit_DropDown.SelectedValue = ut.FreqStartUnitOriginal;
     FreqEndUnit_DropDown.SelectedValue = ut.FreqEndUnitOriginal;
     Ratio0_Input.Text = (100 * ut.Ratio0).ToString();
     Ratio1_Input.Text = (100 * ut.Ratio1).ToString();
     ConstValue_Input.Text = ut.ConstValueOriginal.ToString();
     ConstValueUnit_Input.Text = ut.ConstValueUnitOriginal;
     MinGraduation_Input.Text = MinGraduation_Disp.Text = ut.MinimumGraduationOriginal.ToString();
     MinUnit_Disp.Text = MinUnit_Input.Text = ut.MinimumUnitOriginal;
     PrecisionCount_Input.Text = ut.PrecisionCount.ToString();
 }
 private int GetNewDetectcPointOrderID(DeviceFunctionTemplateEntity fun) 
 {
     int _r = 0;
     if (fun.DetectPointList == null || fun.DetectPointList.Count <= 0) { _r = 1; return _r; }
     foreach (DetectPointTemplateEntity item in fun.DetectPointList)
     {
         if (item.OrderID > _r) { _r = item.OrderID; }
     }
     _r = _r + 1;
     return _r;
 }
 private DetectPointTemplateEntity CreateACDectectPoint(DeviceFunctionTemplateEntity fun, string cmdcode, double standardvalue, string cmdrange, string cmdfun, string cmdres, double testrange, string unit, int idnum, double fvalue, string funit)
 {
     DetectPointTemplateEntity _r = new DetectPointTemplateEntity();
     _r.DataTable_Action_ = DataTable_Action.Insert;
     _r.ID = idnum;
     _r.DelFlag = false;
     _r.Frequency = fvalue;
     _r.FrequencyUnit = funit;
     _r.FunctionCode = fun.FunctionCode;
     _r.FunctionID = fun.ID;
     _r.H_PerMissibleError = 0;
     _r.ChangePerMissibleError = 0;
     _r.Inputter = UserData.GetUserDate.UserID;
     _r.InputTime = DateTime.Now;
     _r.MissibleErrorSymbol = "±";
     _r.OrderID = GetNewDetectcPointOrderID(fun);
     _r.RoundLen = _Device.RoundLen;
     _r.SetCmdPerfix = _Device.SetCmdPerfix;
     _r.SetCmdSuffix = _Device.SetCmdSuffix;
     _r.CommandCode = cmdcode;
     _r.State = 1;
     _r.StandardValue = standardvalue;
     _r.SwichRangeCmdCode = cmdrange;
     _r.SwitchFuncCmdCode = cmdfun;
     _r.SwitchRESCmdCode = cmdres;
     _r.TestRange = testrange;
     _r.Unit = unit;
     PermitErrorCalculator calculator = new PermitErrorCalculator();
     _r.ValuePerMissibleErrorName = calculator.GetPermitError(_Device, _r);
     idnum--;
     return _r;
 }
        private List<DetectPointTemplateEntity> CreateOHMDetectPointList(List<Device_Permition_DataEntity> rengelst, List<CommandAssembleEntity> cmdlst, DeviceFunctionTemplateEntity fun, double ps, double pi, double pe)
        {
            List<DetectPointTemplateEntity> _r = new List<DetectPointTemplateEntity>();
            string cmdfun = "";
            string cmdrang = "";
            string cmdres = "";
            string cmdoutcode = "";
            string unit = "";
            double standardvalue = 0;
            int count = 0;
            List<Device_Permition_DataEntity> myranges = rengelst.FindAll((x) => { return x.FunctionCode.Equals(fun.FunctionCode); });

            foreach (Device_Permition_DataEntity item in myranges)
            {
                unit = item.RangeUnitOriginal;
                standardvalue = item.RangeEndOriginal * ps;
                cmdoutcode = GetOHMCMDCode(standardvalue, unit);
                cmdrang = item.RangeCode;
                cmdfun = GetCmd(fun.FunctionCode + "_SwitchFuncCmdCode", cmdlst);
                cmdres = GetCmd(fun.FunctionCode + "_SwitchRESCmdCode", cmdlst);
                count = 0;
                while (standardvalue < item.RangeEndOriginal && ps + pi * count <= pe)
                {
                    DetectPointTemplateEntity _t = CreateDCDectectPoint(fun, cmdoutcode, standardvalue, cmdrang, cmdfun, cmdres, item.RangeEndOriginal, unit, idnum);
                    fun.DetectPointList.Add(_t);
                    _r.Add(_t);
                    
                    count++;
                    standardvalue = item.RangeEndOriginal * (ps + pi * count);
                    cmdoutcode = GetCMDCode(standardvalue, unit, 0, "Hz");
                }
            }
            return _r;
        }