Ejemplo n.º 1
0
        ///<summary>
        ///This method is tagged save leave balances button click event; enables and reset leave balances form inputs for data entry
        ///</summary>
        /// <returns></returns>
        ///
        private void BtnSave_Click(object sender, EventArgs e)
        {
            if (ValidateLeaveBalanceFormInputs())
            {
                var balance = new LeaveBalances
                {
                    EmpId        = txtEmpId.Text.Trim(),
                    LeaveYear    = Convert.ToInt32(txtLeaveYear.Text),
                    LeaveType    = cmbLeaveType.Text,
                    LeaveBalance = Convert.ToInt32(txtLeaveDays.Text)
                };

                if (_addOrEditBalance == 'A')
                {
                    SaveLeaveBalance(balance);
                }
                else
                {
                    UpdateLeaveBalance(balance);
                }

                txtLeaveYear.Enabled = false;
                txtLeaveYear.Text    = string.Empty;
                cmbLeaveType.Enabled = false;
                cmbLeaveType.Text    = string.Empty;
                txtLeaveDays.Enabled = false;
                txtLeaveDays.Text    = string.Empty;

                btnSave.Enabled   = false;
                btnCancel.Enabled = false;
                btnAdd.Enabled    = true;
            }
        }
Ejemplo n.º 2
0
        public int DeleteLeaveBalance(LeaveBalances balance)
        {
            _context.LeaveBalances.Remove(balance);

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

            return(0);
        }
Ejemplo n.º 3
0
        public ActionResult <RequestResponse> PutLeaveBalance(LeaveBalances balance)
        {
            balance.ModifiedOn = DateTime.Now;

            var result = _leaveBalancesRepository.EditLeaveBalance(balance);

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

            return(new RequestResponse
            {
                Status = "Failure",
                Remarks = "Update action failed"
            });
        }
Ejemplo n.º 4
0
        ///<summary>
        ///This method makes an api request to update an employee's leave application in the database
        ///</summary>
        /// <returns></returns>
        ///
        private void UpdateLeaveBalance(LeaveBalances balance)
        {
            string apiUrl = "http://localhost/AbcHrApi/api/leave/UpdateBalance";

            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(balance), Encoding.UTF8, "application/json"));

                    using (var updatedBalanceResponseContent = response.Result.Content)
                    {
                        var updatedBalanceResult   = updatedBalanceResponseContent.ReadAsStringAsync();
                        var updatedBalanceResponse = JsonConvert.DeserializeObject <RequestResponse>(updatedBalanceResult.Result);

                        if (updatedBalanceResponse.Status == "Success")
                        {
                            dgvEmpLeaveBalances.DataSource = GetEmployeeLeaveBalances(txtEmpId.Text);
                            dgvEmpLeaveBalances.Refresh();
                            lblSystemMessage.ForeColor = Color.Blue;
                            lblSystemMessage.Text      = updatedBalanceResponse.Remarks;
                        }
                        else
                        {
                            lblSystemMessage.ForeColor = Color.Red;
                            lblSystemMessage.Text      = updatedBalanceResponse + ", kindly contact system administrator";
                        }
                    }
                }
                catch (Exception ex)
                {
                    Clf.CreateErrorLog(ErrorLogPath, "Error at UpdateLeaveBalance Method: " + ex.Message + ": " + ex.InnerException);
                    lblSystemMessage.ForeColor = Color.Red;
                    lblSystemMessage.Text      = @"An error has occured, kindly contact system administrator";
                }
            }
        }
Ejemplo n.º 5
0
        public ActionResult <RequestResponse> PostLeaveBalance(LeaveBalances balance)
        {
            var currentDate = DateTime.Now;

            balance.CreatedOn  = currentDate;
            balance.ModifiedOn = currentDate;

            var result = _leaveBalancesRepository.SaveLeaveBalance(balance);

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

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