public void LinkAbsenceWithLeaveRequest(List <ReportedAbsenceEntity> t, LeaveRequestEntity request) { SqlConnection conn = null; SqlCommand cmd = null; try { conn = DALHelper.CreateSqlDbConnection(); foreach (ReportedAbsenceEntity ae in t) { cmd = new SqlCommand("usp_LinkAbsenceWithLeaveRequest", conn); cmd.CommandType = System.Data.CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@ReportedAbsenceId", ae.Id); cmd.Parameters.AddWithValue("@LeaveRequestId", request.Id); conn.Close(); cmd.Dispose(); cmd.ExecuteNonQuery(); } } catch (Exception) { throw; } finally { conn.Close(); cmd.Dispose(); conn.Dispose(); } }
public async Task <ActionResult> SaveLeaveStatus() { try { string UnParse = Request.Form["hdnLeaveStatus"].ToString(); Dictionary <int, int> StatusList = new Dictionary <int, int>(); List <string> tempstr = new List <string>(); tempstr = UnParse.Split(',').ToList(); foreach (string item in tempstr) { string data; data = item.Trim('('); data = data.Trim(')'); StatusList.Add(int.Parse(data.Split('|').ToArray()[0]), int.Parse(data.Split('|').ToArray()[1])); } foreach (var item in StatusList) { try { LeaveRequestEntity ob = new LeaveRequestEntity(); ob = LeaveServices.GetLeaveByRequestId(item.Key); ob.RequestId = item.Key; ob.LeaveStatusId = item.Value; ob.UpdatedBy = HRMHelper.CurrentUser.UserId; LeaveServices.InsertUpdateLeave(ob); if (item.Value != (int)LeaveServices.Leave_status_Type.PendingApproval) { string Heading = GetHeading(item.Value); string MailMessage = "Your " + Heading + " from " + ob.StartTime.ToString("MM/dd/yy") + " to " + ob.EndTime.ToString("MM/dd/yy"); try { string CCMail = AppSettings.HRMail; ArrayList Urltext = new ArrayList(); ArrayList Urls = new ArrayList(); Urltext.Add("Click Here to check status"); Urls.Add(AppSettings.SiteURL + Url.Action("LeaveRecords", "Leave")); UserEntity tempUser = UserServices.GetUserByID(ob.UserId); await MailUtil.MailSend(Heading, tempUser.Name, MailMessage, Urltext, Urls, tempUser.Email, CCMail, Heading); } catch { } } } catch { } } TempData[HRMWeb.Helpers.AlertStyles.Success] = "Leave Status Updated Successfully."; } catch { } return(RedirectToAction("LeaveRecords", "Leave")); }
public static int InsertUpdateLeave(LeaveRequestEntity ob) { try { int LeaveId = 0; using (HRMEntities db = new HRMEntities()) { System.Data.Entity.Core.Objects.ObjectParameter OutPut = new System.Data.Entity.Core.Objects.ObjectParameter("Output", typeof(int)); db.sp_InsertUpdateLeaveRequest(ob.RequestId, ob.UserId, ob.LeaveStatusId, ob.LeaveTypeId, ob.LeaveDurationId, ob.StartTime, ob.EndTime, ob.Description, ob.UpdatedBy, OutPut); LeaveId = int.Parse(OutPut.Value.ToString()); } return(LeaveId); } catch { throw; } }
protected void ProceedButton_Click(object sender, EventArgs e) { LeaveRequestEntity entity = new LeaveRequestEntity(); entity.LeaveTypeId = Convert.ToInt32(LeaveTypeDropDownList.SelectedValue); entity.RequestDate = DateTime.Now; DateTime dt; if (DateTime.TryParseExact(StartDateTextBox.Text, "dd.MM.yyyy", null, System.Globalization.DateTimeStyles.None, out dt)) { entity.StartDate = dt; } if (!IsHalfDayCheckBox.Checked) { if (DateTime.TryParseExact(EndDateTextBox.Text, "dd.MM.yyyy", null, System.Globalization.DateTimeStyles.None, out dt)) { entity.EndDate = dt; } } entity.Notes = OtherInfoTextBox.Text; entity.EmployeeId = new UserMapper().GetUserByUserName(UserPrincipal.Current.SamAccountName).EmployeeId; entity.AlternatePersonId = Convert.ToInt32(AlternateEmployeeDropDownList.SelectedValue); #warning set Manager to managerEmployeeId //entity.ManagerEmployeeId = entity.PaymentTypeId = Convert.ToInt32(PaymentTypeDropDownList.SelectedValue); entity.LeaveStatus = RequestsEnum.Request; new LeaveRequestMapper().RequestLeave(entity); #warning set this to a good mail message string[] to = { "*****@*****.**" }; SendMail.Send(to, "Hi", ("HR Test from system. LeaveRequest by employee Id" + entity.EmployeeId)); Response.Redirect("List.aspx"); }
public void RequestLeave(LeaveRequestEntity t) { SqlConnection conn = null; SqlCommand cmd = null; try { conn = DALHelper.CreateSqlDbConnection(); cmd = new SqlCommand("usp_RequestLeave", conn); cmd.CommandType = System.Data.CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@LeaveTypeId", t.LeaveTypeId); cmd.Parameters.AddWithValue("@LeaveLevelTypeId", t.PaymentTypeId); cmd.Parameters.AddWithValue("@RequestDate", t.RequestDate); cmd.Parameters.AddWithValue("@StartDate", t.StartDate); cmd.Parameters.AddWithValue("@EndDate", t.EndDate); cmd.Parameters.AddWithValue("@IsHalfDay", t.IsHalfDay); cmd.Parameters.AddWithValue("@Notes", t.Notes); cmd.Parameters.AddWithValue("@EmployeeId", t.EmployeeId); cmd.Parameters.AddWithValue("@AlternatePersonId", t.AlternatePersonId); cmd.Parameters.AddWithValue("@ManagerEmployeeId", t.ManagerEmployeeId); cmd.Parameters.AddWithValue("@Status", t.LeaveStatus); t.Id = Convert.ToInt32(cmd.ExecuteScalar()); } catch (Exception) { throw; } finally { conn.Close(); cmd.Dispose(); conn.Dispose(); } }
public static int InsertUpdateLeave(LeaveRequestEntity ob) { return(LeaveProvider.InsertUpdateLeave(ob)); }
public async Task <ActionResult> ApplyLeave(LeaveModel model) { ViewBag.LeaveType = LeaveServices.GetAllLeaveType(); ViewBag.LeaveDuration = LeaveServices.GetAllLeaveDuration(); if (ModelState.IsValid) { DateTime StartDate; DateTime EndDate; LeaveRequestEntity ob = new LeaveRequestEntity(); if (model.StartTime == null) { TempData[HRMWeb.Helpers.AlertStyles.Warning] = "Please Input Start Date"; return(View(model)); } if (model.EndTime == null) { TempData[HRMWeb.Helpers.AlertStyles.Warning] = "Please Input End Date"; return(View(model)); } StartDate = model.StartTime == null ? DateTime.Now.Date : (DateTime)model.StartTime; EndDate = model.EndTime == null ? DateTime.Now.Date : (DateTime)model.EndTime; if (StartDate > EndDate) { TempData[HRMWeb.Helpers.AlertStyles.Warning] = "Start Date can not exceed End Date"; return(View(model)); } ob.RequestId = 0; ob.UserId = HRMHelper.CurrentUser.UserId; ob.LeaveStatusId = (int)LeaveServices.Leave_status_Type.PendingApproval; ob.LeaveTypeId = model.LeaveTypeId; ob.LeaveDurationId = model.LeaveDurationId == 0 ? (int)LeaveServices.Leave_Duration.FullDay : model.LeaveDurationId; ob.StartTime = StartDate; ob.EndTime = EndDate; ob.Description = model.Description; ob.UpdatedBy = HRMHelper.CurrentUser.UserId; int x = LeaveServices.InsertUpdateLeave(ob); if (x > 0) { ob.RequestId = x; TempData[HRMWeb.Helpers.AlertStyles.Success] = "Leave Applied Successfully"; string MailMessage = "You applied for leave from " + ob.StartTime.ToString("MM/dd/yy") + " to " + ob.EndTime.ToString("MM/dd/yy"); string Heading = "Leave Applied"; try { UserEntity manager = UserServices.GetUserByID(HRMHelper.CurrentUser.ManagerId); string CCMail = manager.Email + "," + AppSettings.HRMail; ArrayList Urltext = new ArrayList(); ArrayList Urls = new ArrayList(); Urltext.Add("Click Here to check status"); Urls.Add(AppSettings.SiteURL + Url.Action("LeaveRecords", "Leave")); await MailUtil.MailSend(Heading, HRMHelper.CurrentUser.Name, MailMessage, Urltext, Urls, HRMHelper.CurrentUser.Email, CCMail, Heading); } catch { } } else { TempData[HRMWeb.Helpers.AlertStyles.Danger] = "Leave Apply Fails"; return(View(model)); } } model = new LeaveModel(); return(View(model)); }