public IActionResult SaveAccrual(AccrualViewModel accrualViewModel) { var validationResult = _humanPresentation.GetErrorsStringFromModelState(ModelState); if (validationResult != null) { return(Json(validationResult)); } _humanPresentation.SaveAccrual(accrualViewModel); return(RedirectToAction("Personnel")); }
public async Task <ActionResult> Create(string contractId) { var contract = await _contractRepository.GetByIdAsync(contractId); var accrualType = await _accrualTypeRepository.GetByIdAsync(contract.AccrualTypeId); var room = await _roomRepository.GetByIdAsync(contract.RoomId); var sum = 0m; var rate = 0.0; switch (accrualType.Name) { case "Аренда": rate = (await _calcCoefficientRepository .GetByIdAsync("73163d80-28fa-45bf-8636-54dd4c33e5f1")) .Coefficient; sum = (decimal)room.Square * (decimal)rate * room.ComfortCoef * room.IncreasingCoefToBaseRate * room.PlacementCoef * room.SocialOrientationCoef * room.Price; break; case "Техобслуживание": rate = (await _calcCoefficientRepository .GetByIdAsync("e557209d-ce5e-4924-952f-3b1751e346dc")) .Coefficient; sum = (decimal)(room.Square * rate); break; case "Капремонт": rate = (await _calcCoefficientRepository .GetByIdAsync("7cbbe0f0-b840-409f-aa38-4259f4e1ee82")) .Coefficient; sum = (decimal)(room.Square * rate); break; } var accrual = new AccrualViewModel { ContractId = contractId, Tenant = (await _tenantRepository.GetByIdAsync(contract.TenantId)).Name, Room = room.Address, InvoiceNumber = 0, AccrualType = (await _accrualTypeRepository.GetByIdAsync(contract.AccrualTypeId)).Name, AccrualDate = DateTime.Now.Date, Summ = sum }; return(View(accrual)); }
public AccrualViewModel GetAccrualViewModel(long employeId) { var accrualViewModel = new AccrualViewModel(); var employe = _employeRepository.Get(employeId); var accruals = _accrualRepository.GetEmployeAccrualsDate(employeId); accrualViewModel.EmployeId = employeId; accrualViewModel.DateFrom = (DateTime)employe.InviteDate; accrualViewModel.DateTo = DateTime.Today; accrualViewModel.NoAccrualsDates = _salaryService.PickUpMonths( new DateTime(accrualViewModel.DateFrom.Year, accrualViewModel.DateFrom.Month, 1), new DateTime(accrualViewModel.DateTo.Year, accrualViewModel.DateTo.Month, 1), accruals); return(accrualViewModel); }
public async Task <ActionResult> Edit(AccrualViewModel accrual) { if (!ModelState.IsValid) { return(View(accrual)); } try { await _accrualRepository.UpdateAsync(AccrualViewModel.FromAccrualViewModel(accrual)); return(RedirectToAction(nameof(Index))); } catch { return(View(accrual)); } }
public void SaveAccrual(AccrualViewModel accrualViewModel) { var accrual = _accrualRepository.GetExist(accrualViewModel.EmployeId, accrualViewModel.Date); if (accrual != null) { accrual.Amount = accrualViewModel.Amount; } else { accrual = new Accrual() { Date = accrualViewModel.Date, Amount = accrualViewModel.Amount, Employe = _employeRepository.Get(accrualViewModel.EmployeId) }; } _accrualRepository.Save(accrual); }
public async Task <ActionResult> Delete(string id) { var accrual = await _accrualRepository.GetByIdAsync(id); var contract = await _contractRepository.GetByIdAsync(accrual.ContractId); var tenant = await _tenantRepository.GetByIdAsync(contract.TenantId); var accrualType = await _accrualTypeRepository.GetByIdAsync(contract.AccrualTypeId); var room = await _roomRepository.GetByIdAsync(contract.RoomId); var vm = AccrualViewModel.FromAccrual(accrual); vm.Tenant = tenant.Name; vm.AccrualType = accrualType.Name; vm.Room = room.Address; return(View(vm)); }
public async Task <ActionResult> Create(AccrualViewModel accrualVM) { accrualVM.Id = System.Guid.NewGuid().ToString(); var accrual = AccrualViewModel.FromAccrualViewModel(accrualVM); if (!ModelState.IsValid) { return(View(accrualVM)); } try { await _accrualRepository.AddAsync(accrual); return(RedirectToAction(nameof(Index))); } catch (Exception e) { ModelState.AddModelError("", e.Message); return(View(accrualVM)); } }