Exemple #1
0
        public async Task <IHttpActionResult> CreateCategoryOfCare(
            int customerId,
            CategoryOfCareRequestDto request
            )
        {
            var result = await categoriesOfCareControllerHelper.CreateCategoryOfCare(customerId, request);

            if (!result.Status.HasFlag(CategoryOfCareStatus.Success))
            {
                return(Content(
                           HttpStatusCode.BadRequest,
                           new ErrorResponseDto()
                {
                    Error = ErrorCode.InvalidRequest,
                    Message = ErrorCode.InvalidRequest.Description(),
                    Details = result.Status.GetConcatString()
                }
                           ));
            }

            return(Created(
                       new Uri(Request.RequestUri, result.Content.ToString()),
                       new PostResponseDto <Guid> {
                Id = result.Content
            }
                       ));
        }
        /// <summary>
        /// Creates the category of care.
        /// </summary>
        /// <param name="customerId">The customer identifier.</param>
        /// <param name="request">The request.</param>
        /// <returns></returns>
        public async Task <OperationResultDto <Guid, CategoryOfCareStatus> > CreateCategoryOfCare(
            int customerId,
            CategoryOfCareRequestDto request
            )
        {
            var categoryOfCare = Mapper.Map <CategoryOfCareRequestDto, CategoryOfCare>(request);

            categoryOfCare.CustomerId = customerId;

            var createdCategoryOfCare = await сategoriesOfCareService.CreateCategoryOfCare(categoryOfCare);

            if (!createdCategoryOfCare.Status.HasFlag(CategoryOfCareStatus.Success))
            {
                return(new OperationResultDto <Guid, CategoryOfCareStatus>()
                {
                    Status = createdCategoryOfCare.Status
                });
            }

            return(new OperationResultDto <Guid, CategoryOfCareStatus>()
            {
                Content = createdCategoryOfCare.Content.Id,
                Status = createdCategoryOfCare.Status
            });
        }
        /// <summary>
        /// Updates the category of care.
        /// </summary>
        /// <param name="categoryOfCareId">The category of care identifier.</param>
        /// <param name="request">The request.</param>
        /// <returns></returns>
        public async Task <CategoryOfCareStatus> UpdateCategoryOfCare(
            Guid categoryOfCareId,
            CategoryOfCareRequestDto request
            )
        {
            var categoryOfCare = Mapper.Map <CategoryOfCareRequestDto, CategoryOfCare>(request);

            categoryOfCare.Id = categoryOfCareId;

            return(await сategoriesOfCareService.UpdateCategoryOfCare(categoryOfCare));
        }
Exemple #4
0
        public async Task <IHttpActionResult> UpdateCategoryOfCare(
            int customerId,
            Guid categoryOfCareId,
            CategoryOfCareRequestDto request
            )
        {
            var status = await categoriesOfCareControllerHelper.UpdateCategoryOfCare(categoryOfCareId, request);

            if (status.HasFlag(CategoryOfCareStatus.CategoryOfCareWithSuchIdDoesNotExist))
            {
                return(Content(
                           HttpStatusCode.NotFound,
                           new ErrorResponseDto()
                {
                    Error = ErrorCode.InvalidRequest,
                    Message = ErrorCode.InvalidRequest.Description(),
                    Details = status.GetConcatString()
                }
                           ));
            }

            if (!status.HasFlag(CategoryOfCareStatus.Success))
            {
                return(Content(
                           HttpStatusCode.BadRequest,
                           new ErrorResponseDto()
                {
                    Error = ErrorCode.InvalidRequest,
                    Message = ErrorCode.InvalidRequest.Description(),
                    Details = status.GetConcatString()
                }
                           ));
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }