public async Task <IActionResult> GetHolidayDetailsByIdAsync(int holidayId) { ApplicationUser currentUser = await _userManager.FindByEmailAsync(User.Identity.Name); AddHolidayAc holidayAc = await _instituteHolidayManagementRepository.GetHolidayDetailsByIdAsync(holidayId, currentUser); List <HolidayOccuranceTypeEnumDetailsListAc> occuranceTypesList = _instituteHolidayManagementRepository.GetOccuranceTypesList(); InstituteAcademicYear academicYear = await _imsDbContext.InstituteAcademicYears.FirstOrDefaultAsync(x => x.Id == holidayAc.AcademicYearId); return(Ok(new { Holiday = holidayAc, OccuranceTypesList = occuranceTypesList, AcademicYear = academicYear })); }
public async Task <IActionResult> UpdateHolidayAsync(int id, [FromBody] AddHolidayAc updatedHolidayAc) { if (ModelState.IsValid) { ApplicationUser currentUser = await _userManager.FindByEmailAsync(User.Identity.Name); return(Ok(await _instituteHolidayManagementRepository.UpdateHolidayAsync(id, updatedHolidayAc, currentUser))); } else if (updatedHolidayAc.AcademicYearId == 0) { return(Ok(new { Message = "Academic year can not be null or empty", HasError = true })); } else { return(Ok(new { Message = "Holiday date can not be null or empty", HasError = true })); } }
/// <summary> /// Method for adding new holiday /// </summary> /// <param name="newHoliday"></param> /// <returns></returns> public async Task AddNewHoliday(AddHolidayAc newHolidayAc, ApplicationUser currentUser) { int currentUserInstituteId = await _instituteUserMappingHelperService.GetUserCurrentSelectedInstituteIdAsync(currentUser.Id, true); Holiday newHoliday = new Holiday { AcademicYearId = newHolidayAc.AcademicYearId, HolidayDate = newHolidayAc.FromDate, HolidayToDate = newHolidayAc.ToDate, Description = newHolidayAc.Description, OccuranceType = newHolidayAc.OccuranceType, InstitutionId = currentUserInstituteId, CreatedBy = currentUser.Id, CreatedOn = currentUser.CreatedOn }; _imsDbContext.Add(newHoliday); await _imsDbContext.SaveChangesAsync(); }
/// <summary> /// Method for updating holiday /// </summary> /// <param name="id"></param> /// <param name="updatedHoliday"></param> /// <returns></returns> public async Task <dynamic> UpdateHolidayAsync(int id, AddHolidayAc updatedHolidayAc, ApplicationUser currentUser) { int currentUserInstituteId = await _instituteUserMappingHelperService.GetUserCurrentSelectedInstituteIdAsync(currentUser.Id, true); Holiday holiday = await _imsDbContext.Holidays.FirstOrDefaultAsync(x => x.Id == id && x.InstitutionId == currentUserInstituteId); if (holiday == null) { return(new { Message = "No holiday exists with this id", HasError = true }); } else { holiday.HolidayDate = updatedHolidayAc.FromDate; holiday.HolidayToDate = updatedHolidayAc.ToDate; holiday.OccuranceType = updatedHolidayAc.OccuranceType; holiday.Description = updatedHolidayAc.Description; holiday.UpdatedBy = currentUser.Id; holiday.UpdatedOn = DateTime.UtcNow; _imsDbContext.Holidays.Update(holiday); await _imsDbContext.SaveChangesAsync(); return(new { Message = "Holiday updated successfully" }); } }