public int DeleteLeaveSchedule(LeaveSchedules schedule)
        {
            _context.LeaveSchedules.Remove(schedule);

            try
            {
                return(_context.SaveChanges());
            }
            catch (Exception ex)
            {
                Clf.CreateErrorLog(ErrorLogPath, "DB Transaction Error DeleteLeaveSchedule Method: " + ex.Message + ": " + ex.InnerException);
            }

            return(0);
        }
Esempio n. 2
0
        ///<summary>
        ///This method makes an api request to update an employee's leave schedule in the database
        ///</summary>
        /// <returns></returns>
        ///
        private void UpdateLeaveSchedule(LeaveSchedules schedule)
        {
            string apiUrl = "http://localhost/AbcHrApi/api/leave/UpdateSchedule";

            using (var client = new HttpClient())
            {
                try
                {
                    client.DefaultRequestHeaders.Accept.Clear();
                    client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

                    var response = client.PutAsync(apiUrl, new StringContent(JsonConvert.SerializeObject(schedule), Encoding.UTF8, "application/json"));

                    using (var updatedScheduleResponseContent = response.Result.Content)
                    {
                        var updatedScheduleResult   = updatedScheduleResponseContent.ReadAsStringAsync();
                        var updatedScheduleResponse = JsonConvert.DeserializeObject <RequestResponse>(updatedScheduleResult.Result);

                        if (updatedScheduleResponse.Status == "Success")
                        {
                            dgvEmpLeaveSchedule.DataSource = GetEmployeeLeaveSchedule(txtEmpId.Text);
                            dgvEmpLeaveSchedule.Refresh();

                            lblSystemMessage.ForeColor = Color.Blue;
                            lblSystemMessage.Text      = updatedScheduleResponse.Remarks;
                        }
                        else
                        {
                            lblSystemMessage.ForeColor = Color.Red;
                            lblSystemMessage.Text      = updatedScheduleResponse + ", kindly contact system administrator";
                        }
                    }
                }
                catch (Exception ex)
                {
                    Clf.CreateErrorLog(ErrorLogPath, "Error at UpdateSchedule Method: " + ex.Message + ": " + ex.InnerException);
                    lblSystemMessage.ForeColor = Color.Red;
                    lblSystemMessage.Text      = @"An error has occured, kindly contact system administrator";
                }
            }
        }
Esempio n. 3
0
        public ActionResult <RequestResponse> PutLeaveSchedule(LeaveSchedules schedule)
        {
            schedule.ModifiedOn = DateTime.Now;

            var result = _leaveSchedulesRepository.EditLeaveSchedule(schedule);

            if (result > 0)
            {
                return(new RequestResponse
                {
                    Status = "Success",
                    Remarks = "Leave schedule has been updated successfully"
                });
            }

            return(new RequestResponse
            {
                Status = "Failure",
                Remarks = "Update action failed"
            });
        }
Esempio n. 4
0
        ///<summary>
        ///This method is tagged save schedule button click event; enables and reset leave schedule form inputs for data entry
        ///</summary>
        /// <returns></returns>
        ///
        private void BtnSave_Click(object sender, EventArgs e)
        {
            if (ValidateLeaveScheduleFormInputs())
            {
                var schedule = new LeaveSchedules
                {
                    EmpId      = txtEmpId.Text.Trim(),
                    LeaveType  = cmbLeaveType.Text,
                    LeaveDays  = Convert.ToInt32(txtLeaveDays.Text),
                    FromDate   = dtpFromDate.Value,
                    ToDate     = dtpToDate.Value,
                    ReturnDate = dtpReturnDate.Value
                };

                if (_addOrEditSchedule == 'A')
                {
                    SaveLeaveSchedule(schedule);
                }
                else
                {
                    UpdateLeaveSchedule(schedule);
                }

                cmbLeaveType.Enabled  = false;
                cmbLeaveType.Text     = string.Empty;
                txtLeaveDays.Enabled  = false;
                txtLeaveDays.Text     = string.Empty;
                dtpFromDate.Enabled   = false;
                dtpFromDate.Value     = DateTime.Now;
                dtpToDate.Value       = DateTime.Now;
                dtpToDate.Enabled     = false;
                dtpReturnDate.Value   = DateTime.Now;
                dtpReturnDate.Enabled = false;

                btnSave.Enabled   = false;
                btnCancel.Enabled = false;
                btnAdd.Enabled    = true;
            }
        }
Esempio n. 5
0
        public ActionResult <RequestResponse> PostLeaveSchedule(LeaveSchedules schedule)
        {
            var currentDate = DateTime.Now;

            schedule.CreatedOn  = currentDate;
            schedule.ModifiedOn = currentDate;

            var result = _leaveSchedulesRepository.SaveLeaveSchedule(schedule);

            if (result > 0)
            {
                return(new RequestResponse
                {
                    Status = "Success",
                    Remarks = "Leave schedule added successfully"
                });
            }

            return(new RequestResponse
            {
                Status = "Failure",
                Remarks = "Add new record failed"
            });
        }