Esempio n. 1
0
        public async Task <Vehicle> PostVehicle(Vehicle vehicle)
        {
            var company = await this._context.Companies.FindAsync(vehicle.CompanyId);

            var driver = !string.IsNullOrWhiteSpace(vehicle.DriverId)
                             ? await this._context.Drivers.FindAsync(vehicle.DriverId) : null;

            var newVehicle = new Data.Models.Vehicle
            {
                VIN            = vehicle.VIN,
                PlateNumber    = vehicle.PlateNumber,
                Type           = vehicle.Type,
                Brand          = vehicle.Brand,
                ProductionYear = vehicle.ProductionYear,
                Model          = vehicle.Model,
                Company        = company,
                Driver         = driver,
            };

            var addedVehicle = this._context.Vehicles.Add(newVehicle);

            await this._context.SaveChangesAsync();

            var mappedVehicle = this._mapper.Map <Data.Models.Vehicle, Vehicle>(addedVehicle);

            return(await Task.Run(() => mappedVehicle));
        }
Esempio n. 2
0
        public static VMS.Data.Models.Vehicle ToVehicleModel(this ViewModels.VehicleViewModel vehicle)
        {
            var model = new Data.Models.Vehicle();

            model.Id              = vehicle.Id;
            model.VehicleTypeId   = vehicle.VehicleTypeId;
            model.Make            = vehicle.Make;
            model.Model           = vehicle.Model;
            model.AttributeValues = new System.Collections.Generic.List <Data.Models.AttributeValue>();
            vehicle.Attributes.ForEach(q =>
            {
                model.AttributeValues.Add(new Data.Models.AttributeValue()
                {
                    AttributeId = int.Parse(q.Key), Value = q.Value, VehicleId = vehicle.Id
                });
            });

            return(model);
        }