public PayslipDetailViewModel Update(PayslipDetailViewModel payslipDetail)
        {
            var temp = _mapper.Map <PayslipDetailViewModel, PayslipDetail>(payslipDetail);

            _payslipDetailReponsitory.Update(temp);
            return(payslipDetail);
        }
        public PayslipDetailViewModel GetPayslipDetailViewModelByWorkSheet(ExcelWorksheet worksheet, int row, int requestId, EmployeeViewModel e)
        {
            PayslipDetailViewModel payslipDetailViewModel = new PayslipDetailViewModel()
            {
                StandardWorkingDay = Convert.ToInt32(worksheet.Cells[row, 10].Value),
                UnpaidLeave        = Convert.ToInt32(worksheet.Cells[row, 11].Value),
                ActualWorkingDay   = Convert.ToInt32(worksheet.Cells[row, 12].Value),
                LeaveBalance       = Convert.ToInt32(worksheet.Cells[row, 13].Value),
                //Total grosss incom
                GrossSalary     = Convert.ToDouble(worksheet.Cells[row, 14].Value),
                ActuaSalary     = Convert.ToDouble(worksheet.Cells[row, 15].Value),
                BasicSalary     = Convert.ToDouble(worksheet.Cells[row, 16].Value),
                Allowance       = Convert.ToDouble(worksheet.Cells[row, 17].Value),
                Bonus           = Convert.ToDouble(worksheet.Cells[row, 18].Value),
                Salary13Th      = Convert.ToDouble(worksheet.Cells[row, 19].Value),
                IncomeOther     = Convert.ToDouble(worksheet.Cells[row, 20].Value),
                OtherDeductions = Convert.ToDouble(worksheet.Cells[row, 22].Value),
                ///Deductions
                SocialInsurance            = Convert.ToDouble(worksheet.Cells[row, 25].Value),
                HealthInsurance            = Convert.ToDouble(worksheet.Cells[row, 26].Value),
                UnemploymentInsurance      = Convert.ToDouble(worksheet.Cells[row, 27].Value),
                NoOfDependants             = Convert.ToInt32(worksheet.Cells[row, 31].Value),
                PersonalIncomeTax          = Convert.ToDouble(worksheet.Cells[row, 35].Value),
                PaymentFromSocialInsurance = Convert.ToDouble(worksheet.Cells[row, 36].Value),
                PaymentOther      = Convert.ToDouble(worksheet.Cells[row, 37].Value),
                FinalizationOfPIT = Convert.ToDouble(worksheet.Cells[row, 38].Value),
                NetIncome         = Convert.ToDouble(worksheet.Cells[row, 39].Value),
                Notes             = Convert.ToString(worksheet.Cells[row, 40].Value),
                EmployeeID        = e.Id,
                RequestID         = requestId
            };

            return(payslipDetailViewModel);
        }
        public PayslipDetailViewModel GetById(int id)
        {
            var item = _payslipDetailReponsitory.FindAll().Where(x => x.Id == id).FirstOrDefault();

            PayslipDetailViewModel payslipDetailViewModels = new PayslipDetailViewModel();

            return(payslipDetailViewModels = _mapper.Map <PayslipDetail, PayslipDetailViewModel>(item));
        }
        public void HandleExcelFile(FileInfo fileInfo, int requestId)
        {
            using (ExcelPackage excel = new ExcelPackage(fileInfo))
            {
                ExcelWorksheet worksheet = excel.Workbook.Worksheets[1];
                int            rowCount  = rowCount = worksheet.Dimension.Rows;

                for (int row = 6; row <= rowCount; row++)
                {
                    try
                    {
                        EmployeeViewModel      e = GetEmployeeViewModelByWorkSheet(worksheet, row);
                        PayslipDetailViewModel payslipDetailViewModel = GetPayslipDetailViewModelByWorkSheet(worksheet, row, requestId, e);

                        var      employee = _mapper.Map <EmployeeViewModel, Employee>(e);
                        Employee temp     = _employeeReponsitory.FindById(employee.Id);
                        if (temp == null)
                        {
                            _employeeReponsitory.Add(employee);
                        }
                        else
                        {
                            temp.Email    = employee.Email;
                            temp.FullName = employee.FullName;
                            temp.DeptTeam = employee.DeptTeam;
                            temp.StartDay = employee.StartDay;
                            temp.Position = employee.Position;
                        }
                        _employeeReponsitory.Commit();
                        var payslip = _mapper.Map <PayslipDetailViewModel, PayslipDetail>(payslipDetailViewModel);
                        _payslipDetailReponsitory.Add(payslip);
                        _payslipDetailReponsitory.Commit();
                    }
                    catch (Exception ex)
                    {
                        throw ex;
                    }
                }
            }
        }
 public void OnGet(EmployeeViewModel employeeViewModel, PayslipDetailViewModel payslipDetailViewModel)
 {
     _employeeViewModel      = employeeViewModel;
     _payslipDetailViewModel = payslipDetailViewModel;
 }