public async Task <IActionResult> CompleteScheduleByDealershipUser(InitScheduleByDealership model)
        {
            var dealership = await _dealershipRepository.GetByIdAsync(model.DealershipId);

            var service = await _serviceRepository.GetByIdAsync(model.ServiceId);

            var user = await _userHelper.GetUserByEmailAsync(model.UserName);


            if (user == null)
            {
                return(NotFound());
            }

            var vehicles = _vehicleRepository.GetUserVehicles(user.Id);

            if (vehicles == null)
            {
                ModelState.AddModelError(string.Empty, $"user {user.UserName} has no vehicles registered");
            }

            var dates = await GetDisabledDaysAsync(service.Id, dealership.Id);

            var days = Newtonsoft.Json.JsonConvert.SerializeObject(dates);

            var newModel = _converterHelper.ToCompleteScheduleByDealershipViewModel(vehicles, dealership, service);

            newModel.DaysToDisable = days;
            newModel.UserId        = user.Id;

            return(View(newModel));
        }
        public async Task <IActionResult> MakeScheduleForClientInit(InitScheduleByDealership model)
        {
            if (ModelState.IsValid)
            {
                var user = await _userHelper.GetUserByEmailAsync(model.UserName);


                if (user != null)
                {
                    return(RedirectToAction("CompleteScheduleByDealershipUser", model));
                }
                else
                {
                    ModelState.AddModelError(string.Empty, $"The user {user.UserName} does not exists");
                    var nouserReturn = await _userHelper.GetUserByEmailAsync(this.User.Identity.Name);

                    var noemployeeReturn = await _employeeRepository.GetFullEmployeeByUserAsync(nouserReturn.Id);

                    var noservicesReturn = _servicesSuppliedRepository.GetWithServicesByDealershipId(noemployeeReturn.Dealership.Id);

                    var nonModelReturn = _converterHelper.ToNewSchedulebyDealership(noemployeeReturn.Dealership.Id, noservicesReturn);
                    return(View(nonModelReturn));
                }
            }
            var userReturn = await _userHelper.GetUserByEmailAsync(this.User.Identity.Name);

            var employee = await _employeeRepository.GetFullEmployeeByUserAsync(userReturn.Id);

            var services = _servicesSuppliedRepository.GetWithServicesByDealershipId(employee.Dealership.Id);

            var newModel = _converterHelper.ToNewSchedulebyDealership(employee.Dealership.Id, services);

            return(View(newModel));
        }