public void Handle(CreateParkingCommand command)
        {
            var places = Enumerable.Range(1, command.Capacity)
                         .Select(n =>
            {
                return(new ParkingPlace
                {
                    ParkingName = command.ParkingName,
                    Number = n,
                    IsFree = true
                });
            })
                         .ToList();

            var parking = new Models.Parking
            {
                Name     = command.ParkingName,
                IsOpened = true,
                Places   = places
            };

            _dbContext.Add(parking);
            _dbContext.SaveChanges();

            _commandStoreService.Push(command);
        }
Beispiel #2
0
        public async Task <ActionResult> Create([FromBody] Models.Parking parking)
        {
            Infrastracture.Entities.Parking parkingTable = new Infrastracture.Entities.Parking();
            parkingTable.Pid           = Guid.NewGuid();
            parkingTable.Date          = parking.Fromdate;
            parkingTable.NumberOfslots = 10 - parking.noOfSlots;
            parkingTable.BookedSlots   = parkingTable.NumberOfslots;
            parkingTable.Cars.Add(new Infrastracture.Entities.Car()
            {
                Cid       = Guid.NewGuid(),
                CarNumber = parking.CarNumber,
                Fromdate  = DateTime.UtcNow,
                Todate    = DateTime.UtcNow,
                Pid       = parkingTable.Pid
            });

            try
            {
                var result = _parkingManegmentContext.Add(parkingTable);
                await _parkingManegmentContext.SaveChangesAsync();

                return(Ok());
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
        public ActionResult Detail(int?id)
        {
            var parking = api.GetParking(id ?? 0);
            var model   = new Models.Parking()
            {
                Id        = parking.Id,
                ParkingId = parking.ParkingId,
                Name      = parking.Name,
                Latitude  = parking.Latitude,
                Longitude = parking.Longitude
            };

            return(View(model));
        }
        public ActionResult Detail(Models.Parking parking)
        {
            if (ModelState.IsValid)
            {
                Services.WebApi.Models.ApiParking apiParking = new Services.WebApi.Models.ApiParking()
                {
                    Id        = parking.Id,
                    ParkingId = parking.ParkingId,
                    Name      = parking.Name,
                    Latitude  = parking.Latitude,
                    Longitude = parking.Longitude
                };
                api.SetParking(apiParking);

                return(RedirectToAction("Index"));
            }

            return(View(parking));
        }
        public Task <Models.Parking> CreateParking(Models.Parking parking)
        {
            Infrastracture.Entities.Parking parkingTable = new Infrastracture.Entities.Parking();
            // parkingTable.Pid = 1;
            parkingTable.Date          = parking.Fromdate;
            parkingTable.NumberOfslots = 10;
            parkingTable.BookedSlots   = 1;
            parkingTable.Cars.Add(new Infrastracture.Entities.Car()
            {
                // Cid = 1,
                //CarNumber = "ap07",
                //Fromdate = DateTime.UtcNow,
                //Todate=DateTime.UtcNow,
                // Pid= parkingTable.Pid
            });
            var results = _parkingRepository.CreateParking(parkingTable);

            return(null);
        }
Beispiel #6
0
        public void Handle(CreateParkingCommand command)
        {
            var places = Enumerable.Range(1, command.Capacity)
                         .Select(number => new ParkingPlace
            {
                ParkingName = command.ParkingName,
                Number      = number,
                IsFree      = true
            }).ToList();

            var parking = new Models.Parking
            {
                Name     = command.ParkingName,
                IsOpened = true,
                Places   = places
            };

            _dbContext.Add(parking);
            _dbContext.SaveChanges();

            // Taking command handling all the way will remove the dependency to the command store service
            _commandStoreService.Push(command);
        }