public JsonResult GetValidLeaveDates(GetDaysRequest request) { var token = _tokenValidator.Validate(HttpContext); if (!token.Success) { return(Json(new ReturnData <string> { Success = false, NotAuthenticated = true, Message = $"Unauthorized:-{token.Message}", })); } if (token.Role != Role.Staff) { return(Json(new ReturnData <string> { Success = false, NotAuthenticated = true, Message = "Sorry, you are not authorized to perform this action", })); } var days = _unisolApiProxy.GetValidLeaveDays(request).Result; var jdata = JsonConvert.DeserializeObject <ReturnData <List <string> > >(days); return(Json(jdata)); }
public JsonResult RemoveNonLeaveDays(GetDaysRequest request) { if (request.Dates.Count > 0) { var isCalenderDays = _context.HrpLeaveType.Any(t => t.Names.ToUpper().Equals(request.LeaveType.ToUpper()) && (bool)t.CalendarDays); if (!isCalenderDays) { var nonWorkingDays = NonWorkingWeekDays(); foreach (var day in nonWorkingDays) { request.Dates.RemoveAll(x => DateTime.Parse(x).ToLongDateString().CaseInsensitiveContains(day)); } var yearHolidays = YearHolidayDays(request.LeavePeriod, request.SDate, request.EDate); if (yearHolidays.Count > 0) { foreach (var holiday in yearHolidays) { request.Dates.RemoveAll(x => DateTime.Parse(x).Date.Equals(holiday.Hdate)); } } } return(Json(new ReturnData <List <string> > { Success = true, Message = "Valid leave dates", Data = request.Dates })); } return(Json(new ReturnData <string> { Success = false, Message = "Leave dates not valid" })); }
public Task <string> GetValidLeaveDays(GetDaysRequest request) { var response = Post("leave/removeNonLeaveDays", request); return(response); }