Example #1
0
        public async Task <IActionResult> Delete(Guid id)
        {
            var sellerClaim  = this.User.Claims.FirstOrDefault(x => x.Type == AccountConstants.Claims.OrganisationIdClaim);
            var serviceModel = new DeleteBasketServiceModel
            {
                Id             = id,
                Language       = CultureInfo.CurrentCulture.Name,
                Username       = this.User.Claims.FirstOrDefault(x => x.Type == ClaimTypes.Email)?.Value,
                OrganisationId = GuidHelper.ParseNullable(sellerClaim?.Value)
            };

            var validator        = new DeleteBasketModelValidator();
            var validationResult = await validator.ValidateAsync(serviceModel);

            if (validationResult.IsValid)
            {
                await this.basketService.DeleteAsync(serviceModel);

                return(this.StatusCode((int)HttpStatusCode.OK));
            }

            throw new CustomException(string.Join(ErrorConstants.ErrorMessagesSeparator, validationResult.Errors.Select(x => x.ErrorMessage)), (int)HttpStatusCode.UnprocessableEntity);
        }
Example #2
0
 public async Task DeleteAsync(DeleteBasketServiceModel serviceModel)
 {
     await this.basketRepository.DeleteBasketAsync(serviceModel.Id.Value);
 }