示例#1
0
        public async Task <CustomerResponse> Register([Required] CustomerRequest request)
        {
            if (!ModelState.IsValid)
            {
                throw new Exception("Invalid model");
            }

            var response = await GrpcCallerService.CallService(urlGrpc : GRPCUrl.IdentityService, logger : _logger, func : async channel =>
            {
                var client = new Customer.CustomerClient(channel);
                _logger.LogDebug("Grpc get customer request {@request}", request);
                var customer = await client.AddCustomerAsync(request);
                var response = await GrpcCallerService.CallService(urlGrpc: GRPCUrl.ProductService, logger: _logger, func: async channel =>
                {
                    var client = new ProductUser.ProductUserClient(channel);
                    _logger.LogDebug("Grpc add product customer request {@request}", customer);
                    return(await client.UpdateCustomerAsync(new ProductUserRequest {
                        Id = customer.Id, Name = customer.Name, IsDeleted = false
                    }));
                });
                return(customer);
            });

            return(response);
        }
示例#2
0
        private async Task <ProductUserResponse> UpdateProductRetailer(RetailerResponse retailer, bool isDeleted = false)
        {
            var response = await GrpcCallerService.CallService(urlGrpc : GRPCUrl.ProductService, logger : _logger, func : async channel =>
            {
                var client = new ProductUser.ProductUserClient(channel);
                _logger.LogDebug("Grpc delete Retailer request {@request}", retailer);
                return(await client.UpdateRetailerAsync(new ProductUserRequest {
                    Id = retailer.Id, Name = retailer.Name, IsDeleted = isDeleted
                }));
            });

            return(response);
        }