public virtual ActionResult EditHolidayPeriod(HolidayPeriodViewModel holidayPeriodVM) { if (!ModelState.IsValid) { return(Json(new { success = false, message = "Data is not valid." })); } foreach (var employeeId in holidayPeriodVM.SelectedEmployeeIds) { var employee = _hmUnitOfWork.EmployeeRepository.GetSingle(employeeId); if (employee != null) { var holidayPeriod = new HolidayPeriod { StartDate = holidayPeriodVM.StartDate.Value, EndDate = holidayPeriodVM.EndDate.Value, Note = holidayPeriodVM.Note, EmployeeId = employee.Id, PurposeId = holidayPeriodVM.PurposeId.Value }; _hmUnitOfWork.HolidayPeriodRepository.Add(holidayPeriod); } } _hmUnitOfWork.Save(); return(Json(new { success = true })); }
public async Task Edit_POST_on_successful_validation_updates_the_holidayPeriod() { var holidayPeriodId = 7; var updatedHolidayPeriod = new HolidayPeriod() { HolidayPeriodID = holidayPeriodId, Description = "XXX" }; var redirectToActionResult = await controller.Edit(holidayPeriodId, updatedHolidayPeriod) as RedirectToActionResult; holidayPeriodsRepository.Verify(x => x.UpdateAsync(updatedHolidayPeriod), Times.Once); }
public async Task Edit_POST_returns_NotFound_when_provided_id_does_not_exist() { var holidayPeriodId = 7; var updatedHolidayPeriod = new HolidayPeriod() { HolidayPeriodID = holidayPeriodId, Description = "xxx" }; var notFoundResult = await controller.Edit(33, updatedHolidayPeriod) as NotFoundResult; Assert.IsNotNull(notFoundResult); }
public async Task Edit_POST_on_successful_validation_redirects_to_index() { var holidayPeriodId = 7; var updatedHolidayPeriod = new HolidayPeriod() { HolidayPeriodID = holidayPeriodId, Description = "XXX" }; var redirectToActionResult = await controller.Edit(holidayPeriodId, updatedHolidayPeriod) as RedirectToActionResult; Assert.IsNotNull(redirectToActionResult); Assert.That(redirectToActionResult.ActionName, Is.EqualTo("Index")); }
public async Task <IActionResult> Create([Bind("HolidayPeriodID,Description,StartDate,EndDate,CreatedDate,ModifiedDate")] HolidayPeriod holidayPeriod) { if (ModelState.IsValid) { await holidayPeriodsRepository.CreateAsync(holidayPeriod); return(RedirectToAction("Index")); } return(View(holidayPeriod)); }
public async Task Edit_POST_on_validation_error_redisplays_update_form() { var holidayPeriodId = 7; var updatedHolidayPeriod = new HolidayPeriod() { HolidayPeriodID = holidayPeriodId, Description = "XXX" }; controller.ModelState.AddModelError("Name", "The name is required."); var viewResult = await controller.Edit(holidayPeriodId, updatedHolidayPeriod) as ViewResult; Assert.IsNotNull(viewResult); holidayPeriodsRepository.Verify(x => x.UpdateAsync(It.IsAny<HolidayPeriod>()), Times.Never); }
public bool CheckForHolidayPeriodOverlap(HolidayPeriod possibleHolidayPeriod) { foreach (var holidayPeriod in _context.HolidayPeriods) { if ((holidayPeriod.Start <= possibleHolidayPeriod.Start && holidayPeriod.End >= possibleHolidayPeriod.Start) || (holidayPeriod.Start <= possibleHolidayPeriod.End && holidayPeriod.End >= possibleHolidayPeriod.End)) { return(true); } } return(false); }
public async Task <IActionResult> Edit(int?id) { if (id == null) { return(BadRequest()); } HolidayPeriod holidayPeriod = await holidayPeriodsRepository.FindByIdAsync(id.Value); if (holidayPeriod == null) { return(NotFound()); } return(View(holidayPeriod)); }
public async Task <IActionResult> Edit(int id, [Bind("HolidayPeriodID,Description,StartDate,EndDate,CreatedDate,ModifiedDate")] HolidayPeriod holidayPeriod) { if (id != holidayPeriod.HolidayPeriodID) { return(NotFound()); } if (ModelState.IsValid) { await holidayPeriodsRepository.UpdateAsync(holidayPeriod); return(RedirectToAction(nameof(Index))); } return(View(holidayPeriod)); }
public void CreatePeriod(HolidayPeriod newHolidayPeriod) { if (_DataAccessService.CheckForHolidayPeriodOverlap(newHolidayPeriod)) { Device.BeginInvokeOnMainThread(async() => { await App.Current.MainPage.DisplayAlert("Holiday period overlap", "Holiday period overlaps with existing one", "OK"); }); } else if (newHolidayPeriod.NumHolidays <= 0) { Device.BeginInvokeOnMainThread(async() => { await App.Current.MainPage.DisplayAlert("Number of Days missing", "You need to provide a number of days for holiday period", "OK"); }); } else { var webData = new WebData(_DataAccessService); webData.UpdatePublicHolidays(true); _DataAccessService.CreateHolidayPeriod(newHolidayPeriod); App.Current.MainPage = new MainView(new HolidaysView()); } }
public HolidaysView(HolidayPeriod holidayPeriod) { this.holidayPeriod = holidayPeriod; }
public static int DaysRemaining(IEnumerable <Holiday> holidays, HolidayPeriod holidayPeriod) { return(holidayPeriod.NumHolidays - DaysUsed(holidays)); }
public static int PercentageUsed(IEnumerable <Holiday> holidays, HolidayPeriod holidayPeriod) { return(holidayPeriod.NumHolidays / DaysUsed(holidays)); }
public void CreateHolidayPeriod(HolidayPeriod newHolidayPeriod) { _context.HolidayPeriods.Add(newHolidayPeriod); OnDataUpdate(EventArgs.Empty); }