public async Task <Dependent> Handle(UpsertDependent request, CancellationToken cancellationToken) { var dependent = _mapper.Map <Dependent>(request); dependent.Id = Guid.NewGuid(); await _dependentRepository.Upsert(dependent); return(dependent); }
public async Task Execute() { var employees = new List <Employee>(); // add an employee with a discount plus two dependents with discounts // hard code employeeIds so we don't get dupes in the bucket var employeeId = new Guid("01bb18a9-bf9b-4866-bae4-ed4ea2947cc2"); var firstEmployeeDependents = new List <Dependent> { new Dependent { Id = Guid.NewGuid(), EmployeeId = employeeId, FirstName = "Alice", LastName = "Doe" }, new Dependent { Id = Guid.NewGuid(), EmployeeId = employeeId, FirstName = "Alison", LastName = "Doe" }, new Dependent { Id = Guid.NewGuid(), EmployeeId = employeeId, FirstName = "Billy", LastName = "Doe" } }; var firstEmployee = new Employee { Id = employeeId, FirstName = "Alan", LastName = "Lots-O-Discounts", Dependents = firstEmployeeDependents }; firstEmployeeDependents.ForEach(async d => await _dependentRepository.Upsert(d)); employees.Add(firstEmployee); // add an employee with only dependent discounts employeeId = new Guid("1362b8b2-c6d1-4a1c-a994-de2493d0c1bf"); var secondEmployeeDependents = new List <Dependent> { new Dependent { Id = Guid.NewGuid(), EmployeeId = employeeId, FirstName = "Alice", LastName = "Ann" } }; var secondEmployee = new Employee { Id = employeeId, FirstName = "Adam", LastName = "Family-Discounts", Dependents = secondEmployeeDependents }; secondEmployeeDependents.ForEach(async d => await _dependentRepository.Upsert(d)); employees.Add(secondEmployee); // add an employee with no dependents var thirdEmployee = new Employee { Id = new Guid("2d18be0f-9e0b-4afb-8855-153e9b1dde77"), FirstName = "Billy", LastName = "Buckets" }; employees.Add(thirdEmployee); employees.ForEach(async e => await _employeeRepository.Upsert(e)); }