示例#1
0
        public async Task <int> Handle(CreateVehicleCommand request, CancellationToken cancellationToken)
        {
            if (await VehicleHelper.IsVehicleNumberOccupied(request.Number, _context))
            {
                throw new ConflictException("Vehicle number is occupied!");
            }

            var vehicle = new Domain.Entities.Vehicle
            {
                OwnerUserId = request.OwnerUserId,
                Brand       = request.Brand,
                Model       = request.Model,
                Year        = request.Year,
                Number      = request.Number,
                Country     = request.Country
            };

            await _context.Vehicle.AddAsync(vehicle);

            await _context.SaveChangesAsync(cancellationToken);

            return(vehicle.VehicleId);
        }