public async Task <SaveCustomerResponse> UpdateAsync(long id, SaveCustomerRequest request) { var existing = await repository.GetAsync(id); if (existing == null) { throw new NotFoundException(); } if (existing.IsDeleted) { throw new GoneException(); } Entities.Customer customer = new Entities.Customer { Id = id, Name = request.Name, SourceId = request.SourceId, IndustryCodes = request.IndustryCodes, UpdatedBy = await identityResolver.GetUserNameAsync(), Updated = DateTime.UtcNow, Created = existing.Created, CreatedBy = existing.CreatedBy }; var resultId = await repository.UpdateAsync(customer); return(new SaveCustomerResponse { Id = resultId }); }
public async Task <SaveCustomerResponse> AddAsync(SaveCustomerRequest request) { Entities.Customer customer = new Entities.Customer { Name = request.Name, SourceId = request.SourceId, IndustryCodes = request.IndustryCodes, CreatedBy = await identityResolver.GetUserNameAsync(), Created = DateTime.UtcNow }; customer.Updated = customer.Created; customer.UpdatedBy = customer.CreatedBy; var id = await repository.AddAsync(customer); return(new SaveCustomerResponse { Id = id }); }