public Result Edit(string groupId, long id, EditGroupAttributeRequest editGroupAttribute)
        {
            ValidationResult validationResult = _editGroupAttributeValidator.Validate(editGroupAttribute);

            if (!validationResult.IsValid)
            {
                _logger.LogWarning($"Invalid {nameof(editGroupAttribute)} model");
                return(Result.Fail(validationResult.Errors));
            }

            Result <GroupAttributeEntity> groupAttributeResult = Get(groupId, id);

            if (groupAttributeResult.Failure)
            {
                return(Result.Fail(groupAttributeResult.Errors));
            }

            GroupAttributeEntity groupAttribute = groupAttributeResult.Value;

            groupAttribute.Update(editGroupAttribute.Value);
            bool updateResult = _groupAttributeRepository.Update(groupAttribute);

            if (!updateResult)
            {
                _logger.LogError($"Failed to update GroupAttribute. GroupId {groupId}, Id {id}");
                return(Result.Fail("failed_to_update_group_attribute", "Failed to update GroupAttribute"));
            }

            return(Result.Ok());
        }
Beispiel #2
0
        public IActionResult Edit([FromRoute] string groupId, [FromRoute] long id, [FromBody] EditGroupAttributeRequest editGroupAttribute)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest());
            }

            Result result = _groupAttributeService.Edit(groupId, id, editGroupAttribute);

            if (result.Failure)
            {
                ModelState.AddErrors(result);
                return(BadRequest(ModelState));
            }

            return(Ok(new EmptyResult()));
        }
        public Task <IActionResult> Update([FromRoute] string groupId, [FromRoute] long groupAttributeId, [FromBody] EditGroupAttributeRequest request)
        {
            Core.Models.Result.Result result = _groupAttributeService.Edit(groupId, groupAttributeId, request);

            return(Task.FromResult(result.ToNewResult().ToApiResult()));
        }