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();
            }
        }
Exemple #2
0
        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();
            }
        }