public async Task <ActionResult <TimesheetViewModel> > GetTimesheet(int id) { var timeSheet = _timesheetService.GetById(id); if (timeSheet == null) { return(NotFound("Không tìm thấy id = " + id)); } return(await Task.FromResult(timeSheet)); }
public void Delete([FromRoute] int id) { var timesheet = _timesheetService.GetById(id); if (timesheet == null) { throw new Exception("Timesheet is not found."); } _timesheetService.Delete(timesheet); }
public async Task <Object> PayrollApprovalStaff(List <int> timeSheetList) { try { await Task.Run(() => { List <SalaryPay> salaryPays = new List <SalaryPay>(); foreach (var item in timeSheetList) { SalaryPay salaryPay = new SalaryPay(); var timeSheet = _timesheetService.GetById(item); salaryPay.PersonnelId = timeSheet.PersonnelId; salaryPay.TotalBasicSalary = timeSheet.Salary; salaryPay.TotalAllowance = timeSheet.Allowance; salaryPay.TotalBonus = timeSheet.Bonus; salaryPay.TotalAdvancePayment = timeSheet.AdvancePayment; salaryPay.TotalSalaryOfDay = timeSheet.SalaryOfDay; salaryPay.TotalWorkdays = timeSheet.TotalWorkday; salaryPay.TotalTheoreticalAmount = timeSheet.SalaryOfDay *Convert.ToDecimal(timeSheet.TotalWorkday) + timeSheet.Allowance + timeSheet.Bonus; // tổng lương salaryPay.TotalInsurancePremium = ((timeSheet.SalaryOfDay *Convert.ToDecimal(timeSheet.TotalWorkday) + timeSheet.Allowance + timeSheet.Bonus) * 8) / 100; // nhận đc bên dưới salaryPay.TotalRealityAmount = salaryPay.TotalSalaryOfDay *Convert.ToDecimal(salaryPay.TotalWorkdays) + salaryPay.TotalAllowance + salaryPay.TotalBonus - salaryPay.TotalInsurancePremium - salaryPay.TotalAdvancePayment; salaryPay.Month = timeSheet.Month; salaryPay.Year = timeSheet.Year; salaryPays.Add(salaryPay); } _context.SalaryPays.AddRange(salaryPays); _context.SaveChanges(); }); } catch { throw new Exception(string.Format("Có lỗi xảy ra !")); } return(Ok()); }