public PlanMaintenanceJobCommandBuilder WithCustomerBuilder(CustomerBuilder customerBuilder) { CustomerBuilder = customerBuilder; VehicleBuilder .WithCustomerId(CustomerBuilder.Id); return(this); }
private void SetDefaults() { JobId = Guid.NewGuid(); StartTime = DateTime.Today.AddHours(8); EndTime = DateTime.Today.AddHours(11); Description = $"Job {JobId}"; CustomerBuilder = new CustomerBuilder(); VehicleBuilder = new VehicleBuilder(); VehicleBuilder.WithOwnerId(CustomerBuilder.Id); }
public MaintenanceJobBuilder WithCustomer(Customer customer) { CustomerBuilder .WithId(customer.Id) .WithName(customer.Name) .WithTelephoneNumber(customer.TelephoneNumber); VehicleBuilder.WithOwnerId(customer.Id); return(this); }
public MaintenanceJob Build() { if (CustomerBuilder == null) { throw new InvalidOperationException("You must specify a customerbuilder using the 'WithCustomerBuilder' method."); } if (VehicleBuilder == null) { throw new InvalidOperationException("You must specify a vehiclebuilder using the 'WithVehicleBuilder' method."); } Customer customer = CustomerBuilder.Build(); Vehicle vehicle = VehicleBuilder.Build(); var job = new MaintenanceJob(); job.Plan(JobId, StartTime, EndTime, vehicle, customer, Description); return(job); }
public MaintenanceJobPlanned Build() { var customer = CustomerBuilder .Build(); var vehicle = VehicleBuilder .WithOwnerId(customer.Id) .Build(); var job = MaintenanceJobBuilder .WithCustomer(customer) .WithVehicle(vehicle) .Build(); MaintenanceJobPlanned e = new MaintenanceJobPlanned( Guid.NewGuid(), job.Id, job.StartTime, job.EndTime, (customer.Id, customer.Name, customer.TelephoneNumber), (vehicle.Id, vehicle.Brand, vehicle.Type), job.Description ); return(e); }
public PlanMaintenanceJob Build() { var customer = CustomerBuilder .Build(); var vehicle = VehicleBuilder .WithOwnerId(customer.Id) .Build(); var job = MaintenanceJobBuilder .WithCustomer(customer) .WithVehicle(vehicle) .Build(); PlanMaintenanceJob command = new PlanMaintenanceJob( Guid.NewGuid(), job.Id, job.PlannedTimeslot.StartTime, job.PlannedTimeslot.EndTime, (customer.Id, customer.Name, customer.TelephoneNumber), (vehicle.Id, vehicle.Brand, vehicle.Type), job.Description ); return(command); }
private void SetDefaults() { CustomerBuilder = new CustomerBuilder(); VehicleBuilder = new VehicleBuilder(); MaintenanceJobBuilder = new MaintenanceJobBuilder(); }