private async Task <DiscountCampaignDTO> GetDiscountCampaignDetail(string discountCode)
        {
            var promotionGrpcClient           = _grpcClientFactory.CreatePromotionGrpcClient();
            var discountCampaignDetailRequest = new GetDiscountCampaignDetailRequest()
            {
                DiscountCode = discountCode
            };
            var returnSingleDiscountCampaignResponse =
                await promotionGrpcClient.GetDiscountDetailAsync(discountCampaignDetailRequest);

            return(returnSingleDiscountCampaignResponse.DiscountCampaign);
        }
        public override async Task <ReturnSingleDiscountCampaign> GetDiscountDetail(
            GetDiscountCampaignDetailRequest request, ServerCallContext context)
        {
            var discountCode    = request.DiscountCode;
            var discountCodeObj = await _discountCodeRepository.GetDiscountCodeByCode(discountCode);

            var discountCampaignId  = discountCodeObj.DiscountCampaignId;
            var discountCampaignObj = await _discountCampaignRepository.GetById(discountCampaignId);

            var discountCampaignDto          = discountCampaignObj.GenerateGrpcDtoFromDiscountCampaign();
            var returnSingleDiscountCampaign = new ReturnSingleDiscountCampaign
            {
                Status           = GrpcStatus.Success,
                DiscountCampaign = discountCampaignDto
            };

            return(returnSingleDiscountCampaign);
        }