Beispiel #1
0
        public static async Task <Vehicle> CreateVehicle(int branchId, int fuel, int?odometer,
                                                         VehicleManufacturingInfo manufacturingInfo, VehiclePurchaseInfo purchaseInfo,
                                                         VehicleLocation locationInfo, VehicleSpecs vehicleSpex)
        {
            var vehicle = new Vehicle();

            vehicle.SetBasicData(branchId, fuel);
            vehicle.SetLocationInfo(locationInfo);
            vehicle.SetSpecs(vehicleSpex);
            vehicle.SetPurchaseInfo(purchaseInfo);
            vehicle.MarkVehicleAsReady();
            vehicle.Odometer = odometer;
            return(vehicle);
        }
        private (VehicleManufacturingInfo, VehicleLocation, VehiclePurchaseInfo, VehicleSpecs, VehicleLicenseInfo) CreateVehicleValueObjects(VehicleDto vehicleDto)
        {
            var manufacturingInfoDto = vehicleDto.VehicleManufacturingInfo;
            VehicleManufacturingInfo vehicleManufacturingInfo = null;

            if (manufacturingInfoDto != null)
            {
                vehicleManufacturingInfo = new VehicleManufacturingInfo(manufacturingInfoDto.ModelId, manufacturingInfoDto.Year, manufacturingInfoDto.ChassisNo);
            }

            var             locationInfoDto = vehicleDto.LocationInfo;
            VehicleLocation vehicleLocation = null;

            if (locationInfoDto != null)
            {
                vehicleLocation = new VehicleLocation(locationInfoDto.CurrentLocationId);
            }

            var purchaseInfoDto = vehicleDto.PurchaseInfo;
            VehiclePurchaseInfo vehiclePurchaseInfo = null;

            if (purchaseInfoDto != null)
            {
                vehiclePurchaseInfo = VehiclePurchaseInfo.CreateVehiclePurchaseInfo(purchaseInfoDto.VendorId, purchaseInfoDto.Date, purchaseInfoDto.Price);
            }

            var          spexDto     = vehicleDto.Specs;
            VehicleSpecs vehicleSpex = null;

            if (spexDto != null)
            {
                vehicleSpex = VehicleSpecs.CreateVehicleSpex(spexDto.ColorId, spexDto.TrimLevelId,
                                                             spexDto.FuelTypeId, spexDto.FuelTankSize, spexDto.EngineSize);
            }

            var licenseInfoDto = vehicleDto.VehicleLicenseInfo;
            VehicleLicenseInfo vehicleLicenseInfo = null;

            if (licenseInfoDto != null)
            {
                vehicleLicenseInfo = VehicleLicenseInfo.Create(licenseInfoDto.LicenseTypeId, licenseInfoDto.UsageTypeId,
                                                               licenseInfoDto.PlateNo, licenseInfoDto.Number, licenseInfoDto.ExpiryDate);
            }

            return(vehicleManufacturingInfo, vehicleLocation, vehiclePurchaseInfo, vehicleSpex, vehicleLicenseInfo);
        }
Beispiel #3
0
 public async Task SetManufacturingInfo(VehicleManufacturingInfo manufacturingInfo)
 {
     VehicleManufacturingInfo = manufacturingInfo;
 }