/// <summary> /// 更新设备 /// </summary> /// <param name="deviceUpdate">设备信息</param> /// <param name="userName">用户名</param> /// <returns>更新结果</returns> public IStatusCodeActionResult Update(DensityDeviceUpdate deviceUpdate, string userName = null) { DensityDevice device = _context.Devices .Include(d => d.DensityDevice_DensityChannels) .SingleOrDefault(d => d.DeviceId == deviceUpdate.DeviceId); if (device == null) { return(new NotFoundResult()); } device.DeviceName = deviceUpdate.DeviceName; device.DeviceModel = deviceUpdate.DeviceModel; device.Ip = deviceUpdate.Ip; device.Port = deviceUpdate.Port; device.DataPort = deviceUpdate.DataPort; try { UpdateChannels(device, deviceUpdate.Channels); _context.Devices.Update(device); _context.SaveChanges(); _logger.LogInformation(new EventId((int)LogEvent.编辑设备, userName), $"更新设备 {device}"); return(new OkResult()); } catch (Exception) { ModelStateDictionary modelState = CheckError(device, deviceUpdate.Channels); if (modelState.IsValid) { throw; } else { return(new BadRequestObjectResult(modelState)); } } }
public IActionResult Update([FromBody] DensityDeviceUpdate deviceUpdate) { return(_manager.Update(deviceUpdate, User?.Identity?.Name)); }