public bool UpdateEmployeeLeaveBalance(EmployeeLeaveBalance employeeLeaveBalance) { bool isSuccess = true; try { employeeLeaveBalanceRepository.Update(employeeLeaveBalance); this.SaveRecord(); ServiceUtil <EmployeeLeaveBalance> .WriteActionLog(employeeLeaveBalance.Id, ENUMOperation.UPDATE, employeeLeaveBalance); } catch (Exception ex) { isSuccess = false; logger.Error("Error in updating EmployeeLeaveBalance", ex); } return(isSuccess); }
public async Task <EmployeeLeaveBalanceResponse> EmployeeLeaveBalanceDetails(string token, int emp) { string url = ConfigurationManager.AppSettings["url"]; HttpClient cons = new HttpClient(); cons.BaseAddress = new Uri(url); cons.DefaultRequestHeaders.Accept.Clear(); cons.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json")); cons.DefaultRequestHeaders.Add("Authorization", token); var emp_id = new EmployeeLeaveBalance { EmployeeID = emp }; string apireq = JsonConvert.SerializeObject(emp_id); HttpContent apicontent = new StringContent(emp_id.ToString(), Encoding.UTF8, "application/json"); HttpResponseMessage apires = cons.PostAsync(url + "api/EmployeeLeaveBalance/GetEmployeeLeaveBalanceListDetails", new StringContent(@"{""RequestJSON"":" + apireq + "}", Encoding.Default, "application/json")).Result; var data = await apires.Content.ReadAsAsync <EmployeeLeaveBalanceResponse>(); return(data); }
public bool CheckIsExist(EmployeeLeaveBalance employeeLeaveBalance) { return(employeeLeaveBalanceRepository.Get(chk => chk.Year == employeeLeaveBalance.Year) != null); }
public string UpdateLeaveBalance(List <EmployeeLeaveBalanceDetails> empLeaveBalanceDetails, Int64 LoginUserId, bool isElCredit = false) { try { int isSaved = 0; using (var context = new NLTDDbContext()) { EmployeeDac employeeDac = new EmployeeDac(); string userRole = string.Empty; if (LoginUserId != 0) { userRole = employeeDac.GetEmployeeRole(LoginUserId); } else { userRole = "System"; } if (userRole == "HR" || userRole == "System") { using (var transaction = context.Database.BeginTransaction()) { int creditYear = Convert.ToDateTime(context.LeaveType.Where(x => x.Type == "Earned Leave").FirstOrDefault().lastCreditRun).Year; foreach (var item in empLeaveBalanceDetails) { if (item.NoOfDays > 0) { EmployeeLeaveBalance leaveBalance; if (isElCredit == false) { leaveBalance = context.EmployeeLeaveBalance.Where(x => x.UserId == item.UserId && x.LeaveTypeId == item.LeaveTypeId && x.LeaveBalanceId == item.LeaveBalanceId && x.Year == DateTime.Now.Year).FirstOrDefault(); } else { leaveBalance = context.EmployeeLeaveBalance.Where(x => x.UserId == item.UserId && x.LeaveTypeId == item.LeaveTypeId && x.LeaveBalanceId == item.LeaveBalanceId && x.Year == creditYear).FirstOrDefault(); } if (leaveBalance != null) { leaveBalance.TotalDays = item.CreditOrDebit == "C" ? (leaveBalance.TotalDays + item.NoOfDays) : (leaveBalance.TotalDays - item.NoOfDays); leaveBalance.ModifiedBy = LoginUserId; leaveBalance.ModifiedOn = DateTime.Now; leaveBalance.BalanceDays = item.TotalDays; isSaved = context.SaveChanges(); } else { leaveBalance = new EmployeeLeaveBalance { UserId = Convert.ToInt64(item.UserId) }; if (isElCredit == false) { leaveBalance.Year = DateTime.Now.Year; } else { leaveBalance.Year = creditYear; } leaveBalance.LeaveTypeId = Convert.ToInt64(item.LeaveTypeId); leaveBalance.TotalDays = item.TotalDays; leaveBalance.LeaveTakenDays = 0; leaveBalance.PendingApprovalDays = 0; leaveBalance.BalanceDays = item.TotalDays; leaveBalance.CreatedBy = LoginUserId; leaveBalance.CreatedOn = DateTime.Now; leaveBalance.ModifiedBy = LoginUserId; leaveBalance.ModifiedOn = DateTime.Now; context.EmployeeLeaveBalance.Add(leaveBalance); isSaved = context.SaveChanges(); } LeaveTransactionHistory leaveTransactionHistory = new LeaveTransactionHistory { UserId = Convert.ToInt64(item.UserId), LeaveTypeId = Convert.ToInt64(item.LeaveTypeId), LeaveId = -1, TransactionDate = DateTime.Now, TransactionType = item.CreditOrDebit, NumberOfDays = item.NoOfDays, TransactionBy = LoginUserId, Remarks = item.Remarks }; context.LeaveTransactionHistory.Add(leaveTransactionHistory); isSaved = context.SaveChanges(); if (isSaved > 0) { continue; } else { break; } } } if (isSaved > 0 && isElCredit == true) { var leaveType = context.LeaveType.Where(x => x.Type.ToUpper() == "EARNED LEAVE").FirstOrDefault(); if (leaveType != null) { leaveType.lastCreditRun = System.DateTime.Now; leaveType.ModifiedBy = LoginUserId; leaveType.Modifiedon = System.DateTime.Now; isSaved = context.SaveChanges(); } } if (isSaved > 0) { transaction.Commit(); } else { transaction.Rollback(); } } } else { return("Need Role"); } } if (isSaved > 0) { return("Saved"); } else { return("Failed"); } } catch (Exception ex) { return(ex.Message); } }