public ContractPaymentModel preparePaymentbyContractAcceptance(ContractAcceptance Accep) { var model = new ContractPaymentModel(); model.Amount = (Accep.TotalAmount.GetValueOrDefault(0) * Accep.Ratio.GetValueOrDefault(0)).ToVNStringNumber(); var map = _contractService.GetAllContractAcceptanceTaskMapping(AcepptanceId: Accep.Id).FirstOrDefault(); model.TaskId = map.task.Id; model.TaskName = map.task.Name; model.ContractName = map.task.contract.Name; return(model); }
public virtual IActionResult Create(ContractPaymentAdvanceModel model) { var noti = "admin.common.Added"; var item = new ContractPaymentAdvance(); //var ListAcceptance = model.ListContractAcceptance.Where(c => c.TotalAmount.ToNumber() > 0).ToList(); if (ModelState.IsValid && model.ListContractAcceptance.Count > 0) { if (model.Id > 0) { var acceptances = _contractService.getAllContractAcceptanceByAdvanceId(model.Id); foreach (ContractAcceptance acceptance in acceptances) { _contractService.DeleteContractAcceptance(acceptance); _contractService.DeleteContractAcceptanceTaskMappingbyAcceptanceId(acceptance.Id); } item = _paymentAdvanceService.GetPaymentAdvanceById(model.Id); _paymentAdvanceFactory.PrepareContractPaymentAdvance(model, item); _paymentAdvanceService.UpdatePaymentAdvance(item); noti = "admin.common.Updated"; } else { _paymentAdvanceFactory.PrepareContractPaymentAdvance(model, item); _paymentAdvanceService.InsertPaymentAdvance(item); } foreach (ContractAcceptanceModel accep in model.ListContractAcceptance) { //add contractAcceptance var accepitem = new ContractAcceptance(); accep.ApprovalDate = model.PayDate; accep.PaymentAdvanceId = item.Id; accep.TypeId = (int)ContractAcceptancesType.TamUng; _contractModelFactory.PrepareContractAcceptance(accep, accepitem); _contractService.InsertContractAcceptance(accepitem); //add ContractAcceptamce_Task_Mapping var AcceptanceTask = new ContractAcceptanceTaskMapping { TaskId = (int)accep.TaskId, ContractAcceptanceId = accepitem.Id }; _contractService.InsertContractAcceptanceTaskMapping(AcceptanceTask); } return(JsonSuccessMessage(_localizationService.GetResource(noti))); } var list = ModelState.Values.Where(c => c.Errors.Count > 0).ToList(); return(JsonErrorMessage("Error", list)); }
public ContractAcceptanceModel PrepareContractAcceptance(ContractAcceptance item) { var mapping = _contractService.GetAllContractAcceptanceTaskMapping(AcepptanceId: item.Id).FirstOrDefault(); var task = _workTaskService.GetTaskById(mapping.TaskId); var model = new ContractAcceptanceModel { TaskName = task.Name }; model.TaskId = task.Id; model.ContractId = task.ContractId; model.TaskTotalMoneyText = _priceFormatter.FormatPrice(task.TotalMoney.GetValueOrDefault(0), true, task.currency); //so da tam ung var acceps = _contractService.getAllContractAcceptance(ContractId: task.ContractId, TaskId: task.Id, TypeId: (int)ContractAcceptancesType.TamUng).Where(c => c.Id != item.Id).ToList(); model.ToltalAmountAdvanced = acceps.Sum(c => (Int64)c.TotalAmount); model.SumToltalAmount = (Int64)task.TotalMoney; model.TotalAmount = item.TotalAmount.ToVNStringNumber(); model.Ratio = item.Ratio * 100; model.ToltalAmountAdvancedText = _priceFormatter.FormatPrice(model.ToltalAmountAdvanced, true, task.currency); return(model); }
public virtual IActionResult Create(ContractAcceptanceModel model) { var noti = "admin.common.Added"; var item = new ContractAcceptance(); if (ModelState.IsValid && model.listAcceptanceSub.Count > 0) { if (model.Id > 0) { item = _contractService.getContractAcceptancebyId(model.Id); _contractModelFactory.PrepareContractAcceptanceNoiboForUnit(model, item); //remove listAcceptanceSub cu _contractService.DeleteContractAcceptanceSubByAcceptanceId(AccepId: model.Id, TypeId: (int)ContractAcceptancesType.NoiBo); } // add ContractAcceptanceNoibo _contractModelFactory.PrepareContractAcceptanceNoiboForUnit(model, item); if (model.Id > 0) { _contractService.UpdateContractAcceptance(item); // Insert ContractLog var contractLog = new ContractLog() { ContractId = item.Id, CreatedDate = DateTime.Now, CreatorId = _workContext.CurrentCustomer.Id, ContractData = item.ToModel <ContractAcceptanceModel>().toStringJson() }; _contractLogService.InsertContractLog(contractLog, "Sửa nghiệm thu nội bộ: " + item.Name); noti = "admin.common.updated"; } else { _contractService.InsertContractAcceptance(item); // Insert ContractLog var contractLog = new ContractLog() { ContractId = item.Id, CreatedDate = DateTime.Now, CreatorId = _workContext.CurrentCustomer.Id, ContractData = item.ToModel <ContractAcceptanceModel>().toStringJson() }; _contractLogService.InsertContractLog(contractLog, "Thêm mới nghiệm thu nội bộ: " + item.Name); } //var _cas = new ContractAcceptanceSub(); foreach (ContractAcceptanceSubModel _casModel in model.listAcceptanceSub) { _casModel.Description = item.Name; var _cas = _contractModelFactory.PrepareContractAcceptanceSubByTask(_casModel, null); _cas.AcceptanceId = item.Id; _contractService.InsertContractAcceptionSub(_cas); if (model.SelectedListFileId.Count > 0) { foreach (int FileId in model.SelectedListFileId) { var contractFile = new ContractFile { ContractId = _cas.ContractId, FileId = FileId, TypeId = (int)ContractFileType.AcceptanceNoiBo, EntityId = item.Id.ToString(), }; _contractService.InsertContractFile(contractFile); } } } return(JsonSuccessMessage(_localizationService.GetResource(noti))); } else { var list = ModelState.Values.Where(c => c.Errors.Count > 0).ToList(); return(JsonErrorMessage("Error", list)); } }