private async Task AddSalaryArchive(int?id)
        {
            var orderCarWorkers = await _orderCarWashWorkers.SelectMonth(id, DateTime.Now.AddMonths(-1).Month, DateTime.Now.Year);

            var salaryExpenses = await _salaryExpenses.PayrollExpensesPerMonth(id, DateTime.Now.AddMonths(-1).Month, DateTime.Now.Year);

            SalaryArchiveBll salaryArchive = new SalaryArchiveBll();

            salaryArchive.carWashWorkersId            = id.Value;
            salaryArchive.date                        = new DateTime(DateTime.Now.Year, DateTime.Now.Month, 1).AddMonths(0).AddDays(-1);
            salaryArchive.amountOfCompletedOrders     = orderCarWorkers.Count();
            salaryArchive.monthlySalaryAmountEarned   = orderCarWorkers.Sum(x => x.Payroll);
            salaryArchive.monthlySalaryAmountReceived = salaryExpenses.Sum(x => x.Expenses.Amount);
            salaryArchive.balanceAtTheEndOfTheMonth   = (salaryArchive.monthlySalaryAmountReceived - salaryArchive.monthlySalaryAmountEarned);

            if (salaryArchive.balanceAtTheEndOfTheMonth == 0)
            {
                salaryArchive.salaryStatus = true;
            }
            else
            {
                salaryArchive.salaryStatus = false;
            }

            await _salaryArchive.Insert(salaryArchive);
        }
示例#2
0
        public async Task <ActionResult> Edit([Bind(Include = "idSalaryArchive,carWashWorkersId,date,amountOfCompletedOrders,monthlySalaryAmountEarned,monthlySalaryAmountReceived,balanceAtTheEndOfTheMonth,salaryStatus")] SalaryArchiveView salaryArchiveView)
        {
            if (ModelState.IsValid)
            {
                SalaryArchiveBll salaryArchive = Mapper.Map <SalaryArchiveView, SalaryArchiveBll>(salaryArchiveView);
                await _salaryArchive.Update(salaryArchive);

                return(RedirectToAction("Index"));
            }
            //ViewBag.carWashWorkersId = new SelectList(db.CarWashWorkersViews, "id", "Name", salaryArchiveView.carWashWorkersId);
            return(View(salaryArchiveView));
        }
 public async Task Insert(SalaryArchiveBll element)
 {
     _unitOfWork.salaryArchiveUnitOfWork.Insert(TransformAnEntity(element));
     await _unitOfWork.Save();
 }
 public salaryArchive TransformAnEntity(SalaryArchiveBll entity) =>
 Mapper.Map <SalaryArchiveBll, salaryArchive>(entity);
 public async Task Update(SalaryArchiveBll elementToUpdate)
 {
     _unitOfWork.salaryArchiveUnitOfWork.Update(TransformAnEntity(elementToUpdate));
     await _unitOfWork.Save();
 }