public void UpdateDeviceConfig(DeviceConfig entity, UpdateDeviceConfigModel model) { model.CopyTo(entity); entity.RemoveOldEventsJobSettings = JsonConvert.SerializeObject( model.RemoveOldEventsJobSettingsObj); entity.SendUnsentEventsJobSettings = JsonConvert.SerializeObject( model.SendUnsentEventsJobSettingsObj); if (!string.IsNullOrWhiteSpace(model.KafkaPasswordReset)) { entity.KafkaPassword = model.KafkaPasswordReset; } PrepareUpdate(entity); }
public ValidationData ValidateUpdateDeviceConfig(ClaimsPrincipal principal, DeviceConfig entity, UpdateDeviceConfigModel model) { var validationData = new ValidationData(); if (string.IsNullOrWhiteSpace(model.Identifier)) { validationData = validationData.Fail("ID must not be null", code: Constants.AppResultCode.FailValidation); } if ((!string.IsNullOrWhiteSpace(model.KafkaUsername) || !string.IsNullOrWhiteSpace(model.KafkaPasswordReset)) && string.IsNullOrWhiteSpace(model.KafkaServer)) { validationData = validationData.Fail("Kafka server info missed", code: Constants.AppResultCode.FailValidation); } return(validationData); }
public IActionResult Update(int id, UpdateDeviceConfigModel model) { var entity = _service.DeviceConfigs.Id(id).FirstOrDefault(); if (entity == null) { return(NotFound(AppResult.NotFound())); } var validationData = _service.ValidateUpdateDeviceConfig(User, entity, model); if (!validationData.IsValid) { return(BadRequest(AppResult.FailValidation(data: validationData))); } _service.UpdateDeviceConfig(entity, model); context.SaveChanges(); if (entity.IsCurrent) { Startup.SetCurrentConfig(entity); } return(NoContent()); }