public async Task <IActionResult> Edit(DeviceFunctionEntity deviceFunctionEntity) { if (!await IsMyDevice(deviceFunctionEntity.PartitionKey)) { return(NotFound()); } if (String.IsNullOrEmpty(deviceFunctionEntity.RowKey)) { deviceFunctionEntity.RowKey = Guid.NewGuid().ToString(); } if (deviceFunctionEntity.TriggerType == FunctionTriggerType.CronSchedule.ToString()) { if (!new CronSchedule().IsValid(deviceFunctionEntity.CronSchedule)) { ModelState.AddModelError("CronSchedule", "Invalid cron schedule"); } } await _deviceFunctionService.SaveFunctionAsync(deviceFunctionEntity.PartitionKey, deviceFunctionEntity.RowKey, deviceFunctionEntity.Name, deviceFunctionEntity.TriggerType, deviceFunctionEntity.Interval, deviceFunctionEntity.CronSchedule, deviceFunctionEntity.QueueName, deviceFunctionEntity.Enabled, deviceFunctionEntity.Script); await _deviceManagementService.UpdateFunctionsAndVersionsTwinPropertyAsync(deviceFunctionEntity.PartitionKey); return(await Edit(deviceFunctionEntity.PartitionKey, deviceFunctionEntity.RowKey)); }
protected void Page_Load(object sender, EventArgs e) { if (!Page.IsPostBack) { _Function = BusinessFacadeShanliTech_HLD_Business.DeviceFunctionDisp(FunctionID); _Device = BusinessFacadeShanliTech_HLD_Business.DeviceDisp(_Function.DeviceID); BindDataList(); } }
protected void Page_Load(object sender, EventArgs e) { _Function = BusinessFacadeShanliTech_HLD_Business.DeviceFunctionDisp(FunctionID); _Device = BusinessFacadeShanliTech_HLD_Business.DeviceDisp(_Function.DeviceID); if (!Page.IsPostBack) { BindDataList(_Function, _Device); OnStart(_Function, _Device); } if (string.IsNullOrEmpty(CMD)) CMD = "New"; }
public async Task <IActionResult> Add(string deviceId) { if (!await IsMyDevice(deviceId)) { return(NotFound()); } var deviceFunction = new DeviceFunctionEntity { Enabled = true, Interval = 0, CronSchedule = "* * * * *", Language = FunctionLanguage.Lua.ToString(), Name = "New function", PartitionKey = deviceId, QueueName = "triggerqueue", Script = "function run(message) end;", TriggerType = FunctionTriggerType.MessageQueue.ToString() }; return(View("Edit", deviceFunction)); }
private void OnStart(DeviceFunctionEntity _Function,DeviceEntity _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(); }
public async Task SaveFunctionAsync(string deviceId, string functionId, string functionName, string triggerType, int interval, string cronSchedule, string queueName, bool enabled, string scriptContent) { DeviceFunctionEntity entity; entity = await GetFunctionAsync(deviceId, functionId); if (entity == null) { entity = new DeviceFunctionEntity(); } entity.Name = functionName; entity.PartitionKey = deviceId; entity.RowKey = functionId; entity.Language = "Lua"; entity.Script = scriptContent; entity.Interval = interval; entity.CronSchedule = cronSchedule; entity.QueueName = queueName; entity.TriggerType = triggerType; entity.Enabled = enabled; entity.Version++; var operation = TableOperation.InsertOrReplace(entity); var result = await _scriptTableRef.ExecuteAsync(operation); }
private int GetNewDetectcPointOrderID(DeviceFunctionEntity fun) { int _r = 0; if (fun.DetectPointList == null || fun.DetectPointList.Count <= 0) { _r = 1; return _r; } foreach (DetectPointEntity item in fun.DetectPointList) { if (item.OrderID > _r) { _r = item.OrderID; } } _r = _r + 1; return _r; }
private DetectPointEntity CreateACDectectPoint(DeviceFunctionEntity fun, string cmdcode, double standardvalue, string cmdrange, string cmdfun, string cmdres, double testrange, string unit, int idnum,double fvalue,string funit) { DetectPointEntity _r = new DetectPointEntity(); _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<DetectPointEntity> CreateOHMDetectPointList(List<Device_Permition_DataEntity> rengelst, List<CommandAssembleEntity> cmdlst, DeviceFunctionEntity fun, double ps, double pi, double pe) { List<DetectPointEntity> _r = new List<DetectPointEntity>(); 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) { DetectPointEntity _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; }
/// <summary> /// 绑定数据 /// </summary> private void BindDataList(DeviceFunctionEntity _Function, DeviceEntity _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,DeviceFunctionEntity _Function,DeviceEntity _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(); }
/// <summary> /// 初始化数据 /// </summary> /// <param name="ut"></param> private void OnStartData(DeviceFunctionEntity 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(); //DeviceID_DropDown.SelectedValue = ut.DeviceID.ToString(); //DeviceID_Disp.Text = DeviceID_DropDown.SelectedItem.Text; 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(); DeviceID_Disp.Text = BusinessFacadeShanliTech_HLD_Business.DeviceDisp(DeviceID).DeviceNum; //OrderID_Input.Text = OrderID_Disp.Text = ut.OrderID.ToString(); }