Exemplo n.º 1
0
        public async Task <CouponModel> GetDiscount(string productName)
        {
            var discountRequest = new ProductNameRequest {
                ProductName = productName
            };

            return(await _discountProtoService.GetDiscountAsync(discountRequest));
        }
        public override async Task <DeleteDiscountResponse> DeleteDiscount(ProductNameRequest request, ServerCallContext context)
        {
            var deleted = await _repository.DeleteCoupon(request.ProductName);

            var response = new DeleteDiscountResponse
            {
                Success = deleted
            };

            return(response);
        }
        public override async Task <CouponModel> GetDiscount(ProductNameRequest request, ServerCallContext context)
        {
            var coupon = await _repository.GetDiscount(request.ProductName);

            if (coupon == null)
            {
                throw new RpcException(new Status(StatusCode.NotFound, $"Discount with ProductName={request.ProductName} is not found."));
            }
            _logger.LogInformation("Discount is retrieved for ProductName : {productName}, Amount : {amount}", coupon.ProductName, coupon.Amount);
            var couponModel = _mapper.Map <CouponModel>(coupon);

            return(couponModel);
        }