public async Task <CustomerDto> Handle(RegisterCustomerCommand request, CancellationToken cancellationToken) { var customer = MerchantCustomer.CreateNew(request.MerchantCode, request.Email, request.Phone, request.FirstName, request.LastName, request.CreateBy, request.Addresses); if (customer is null) { throw new CustomerNotFoundException(); } await _customerRepository.InsertAsync(customer); var customerDto = _mapper.Map <CustomerDto>(customer); return(customerDto); }
public async Task <MerchantCustomer> UpdateAsync(MerchantCustomer customer) { var filter = Builders <MerchantCustomer> .Filter.Eq(x => x.Code, customer.Code); var update = Builders <MerchantCustomer> .Update.Set(x => x.Addresses, customer.Addresses) .Set(x => x.UpdateBy, customer.UpdateBy) .Set(x => x.Email, customer.Email) .Set(x => x.FirstName, customer.FirstName) .Set(x => x.UpdateDate, customer.UpdateDate) .Set(x => x.Phone, customer.Phone) .Set(x => x.Email, customer.Email) .Set(x => x.LastName, customer.LastName) .Set(x => x.Addresses, customer.Addresses); var result = await _mongoDbContext.MerchantCustomers.FindOneAndUpdateAsync(filter, update); return(result); }
public async Task InsertAsync(MerchantCustomer merchantCustomer) { await _mongoDbContext.MerchantCustomers.InsertOneAsync(merchantCustomer); }