public async Task <IActionResult> LeaveApply(LeaveApplyModel leaveApplyModel) { string user = User.FindFirst("Index").Value; var Currentuser = await _taskRepository.GetCurrentUser(user); ViewBag.photo = Currentuser.PhotoURL; leaveApplyModel.EmpId = Currentuser.EmpId; int Eid = leaveApplyModel.EmpId; DateTime date = leaveApplyModel.Startdate; bool existOne = _leaveRepository.CheckExist(Eid, date); if (existOne) { return(RedirectToAction(nameof(LeaveApply), new { isExist = true })); } else { TimeSpan differ = (TimeSpan)(leaveApplyModel.EndDate - leaveApplyModel.Startdate); leaveApplyModel.NoOfDays = differ.Days; if (leaveApplyModel.EvidencePDF != null) { String folder = "images/evidencePDF/"; leaveApplyModel.PdfURL = await UploadPDF(folder, leaveApplyModel.EvidencePDF); } int id = await _leaveRepository.AddLeave(leaveApplyModel); if (id > 0) { return(RedirectToAction(nameof(LeaveApply), new { isSucceess = true, leaveId = id })); } } return(View()); }
public async Task <bool> UpdateLeave(LeaveApplyModel leaveApplyModel) { var leave = await _context.LeaveApply.FindAsync(leaveApplyModel.LeaveApplyId); leave.LeaveType = leaveApplyModel.LeaveType; leave.Startdate = leaveApplyModel.Startdate; leave.EndDate = leaveApplyModel.EndDate; leave.Reason = leaveApplyModel.Reason; leave.NoOfDays = leaveApplyModel.NoOfDays; leave.PdfURL = leaveApplyModel.PdfURL; _context.Entry(leave).State = EntityState.Modified; await _context.SaveChangesAsync(); return(true); }
public async Task <int> AddLeave(LeaveApplyModel LeaveApplyModel) { var leaveApply = new LeaveApply() { LeaveType = LeaveApplyModel.LeaveType, Startdate = LeaveApplyModel.Startdate, EndDate = LeaveApplyModel.EndDate, Reason = LeaveApplyModel.Reason, EmpId = LeaveApplyModel.EmpId, AppliedDate = DateTime.Now, NoOfDays = LeaveApplyModel.NoOfDays, Status = "Waiting for Recommendation", Visible = "Show", PdfURL = LeaveApplyModel.PdfURL }; await _context.LeaveApply.AddAsync(leaveApply); await _context.SaveChangesAsync(); return(leaveApply.LeaveApplyId); }
public async Task <IActionResult> EditLeave(LeaveApplyModel leaveApplyModel) { string user = User.FindFirst("Index").Value; var Currentuser = await _taskRepository.GetCurrentUser(user); ViewBag.photo = Currentuser.PhotoURL; leaveApplyModel.EmpId = Currentuser.EmpId; TimeSpan differ = (TimeSpan)(leaveApplyModel.EndDate - leaveApplyModel.Startdate); leaveApplyModel.NoOfDays = differ.Days; if (leaveApplyModel.EvidencePDF != null) { String folder = "images/evidencePDF/"; leaveApplyModel.PdfURL = await UploadPDF(folder, leaveApplyModel.EvidencePDF); } bool success = await _leaveRepository.UpdateLeave(leaveApplyModel); if (success == true) { return(RedirectToAction(nameof(LeaveApply), new { isUpdate = true, leaveId = leaveApplyModel.LeaveApplyId })); } return(View()); }