Ejemplo n.º 1
0
 public ManageParkingSpaceController(ApplicationDbContext context, IParkingManagement parkingManagementManager, IParking parkingManager, IParkingDetailsOnDate parkingDetailsManager)
 {
     _context = context;
     _parkingManagementManager = parkingManagementManager;
     _parkingManager           = parkingManager;
     _parkingDetailsManager    = parkingDetailsManager;
 }
Ejemplo n.º 2
0
 private async Task AssignClassVariables(int daysToAddInAdvance, IParking parkingManager, IParkingDetailsOnDate parkingDetailsManager, IParkingManagement parkingManagementManager)
 {
     _parkingManager           = parkingManager;
     _parkingDetailsManager    = parkingDetailsManager;
     _parkingManagementManager = parkingManagementManager;
     this.daysToAddInAdvance   = daysToAddInAdvance;
 }
Ejemplo n.º 3
0
 public HomeController(ApplicationDbContext context, UserManager <User> userManager, SignInManager <User> signInManager, IParkingManagement parkingManagementManager, IParking parkingManager, IParkingDetailsOnDate parkingDetailsManager)
 {
     _userManager = userManager;
     _parkingManagementManager = parkingManagementManager;
     _parkingManager           = parkingManager;
     _parkingDetailsManager    = parkingDetailsManager;
     _context = context;
 }
Ejemplo n.º 4
0
 public ManageUserAssignmentsToParkingController(ApplicationDbContext context, UserManager <User> userManager, IParkingManagement parkingManagementManager, IParkingDetailsOnDate parkingDetailsManager, IParking parkingManager)
 {
     _context     = context;
     _userManager = userManager;
     _parkingManagementManager = parkingManagementManager;
     _parkingDetailsManager    = parkingDetailsManager;
     _parkingManager           = parkingManager;
 }
Ejemplo n.º 5
0
        public async Task CreateNextParkingDaysIfNeccesary(int daysToAddInAdvance, IParking parkingManager, IParkingDetailsOnDate parkingDetailsManager, IParkingManagement parkingManagementManager)
        {
            await AssignClassVariables(daysToAddInAdvance, parkingManager, parkingDetailsManager, parkingManagementManager);

            var LastExistingDateInTheDB = await _parkingDetailsManager.GetLastExistingDate();

            var allNeededDaysExist = await CheckIfAllNeededDaysExist(LastExistingDateInTheDB);

            if (allNeededDaysExist)
            {
                return;
            }

            var isThereAnyMissingDate = await _parkingManager.GetAllParkingSpacesWithMissingDate(LastExistingDateInTheDB.AddBusinessDays(this.daysToAddInAdvance).Date, false);

            var numberOfPArkingSpaces = await _parkingManager.GetAllParkingSpaces();

            if (isThereAnyMissingDate.Count() == numberOfPArkingSpaces.Count())
            {
                return;
            }

            var numberOfDaysToCheck = await GetTotalNumberOfDaysToCheck(LastExistingDateInTheDB);

            await CheckIfRecordExistIOnDateAndCreateIfNot(numberOfDaysToCheck);
        }