public ActionResult Update(RecordUpdateInput updateInput) { string recordId = VerbosifyId <Record>(updateInput.Id); if (!_permissionManager.DoesExist <Record>(recordId)) { return(HttpNotFound()); } if (!_userContext.HasGroupPermission <Record>(PermissionNames.UpdateObservation, recordId)) { return(new HttpUnauthorizedResult()); } if (!ModelState.IsValid) { return(JsonFailed()); } _messageBus.Send( new RecordUpdateCommand { Id = recordId, Latitude = updateInput.Latitude, Longitude = updateInput.Longitude, AnonymiseLocation = updateInput.AnonymiseLocation, Category = updateInput.Category, ObservedOn = updateInput.ObservedOn, UserId = _userContext.GetAuthenticatedUserId(), Projects = updateInput.Projects }); return(JsonSuccess()); }
public ActionResult Create(RecordUpdateInput createInput) { if (!_userContext.HasUserProjectPermission(PermissionNames.CreateObservation)) { return(new HttpUnauthorizedResult()); } if (!ModelState.IsValid) { return(JsonFailed()); } _messageBus.Send( new RecordCreateCommand() { Latitude = createInput.Latitude, Longitude = createInput.Longitude, AnonymiseLocation = createInput.AnonymiseLocation, Category = createInput.Category, ObservedOn = createInput.ObservedOn, UserId = _userContext.GetAuthenticatedUserId(), //Projects = createInput.ProjectIds }); return(JsonSuccess()); }