private void ConfirmContract(int?id) { IncidentalContract incidentalContract = db.IncidentalContracts.Find(id); if (incidentalContract == null) { return; } incidentalContract.IncidentalContracStatus = ContractStatus.Confirmed; switch (incidentalContract.IncidentalContracTypeId) { case 1: var servicecontract = db.ServiceIncidentalContracts.Where(w => w.IncidentalContractId == id).FirstOrDefault(); servicecontract.IncidentalContracStatus = ContractStatus.Confirmed; servicecontract.ControllerDeliverenceConfirmationDate = DateTime.Now.Date; break; case 2: var productcontract = db.ProductIncidentalContracts.Where(w => w.IncidentalContractId == id).FirstOrDefault(); productcontract.IncidentalContracStatus = ContractStatus.Confirmed; productcontract.ControllerDeliverenceConfirmationDate = DateTime.Now.Date; break; case 3: var trainningcontract = db.TrainningIncidentalContracts.Where(w => w.IncidentalContractId == id).FirstOrDefault(); trainningcontract.IncidentalContracStatus = ContractStatus.Confirmed; trainningcontract.ControllerDeliverenceConfirmationDate = DateTime.Now.Date; break; } db.SaveChanges(); }
public ActionResult ViewService(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } IncidentalContract incidentalContract = db.IncidentalContracts.Find(id); ServiceIncidentalContract serviceIncidentalContract = db.ServiceIncidentalContracts.Where(w => w.IncidentalContractId == id).FirstOrDefault(); List <IncidentalContractItem> incidentalContractItems = db.IncidentalContractItems.Where(w => w.IncidentalContractId == id).ToList(); ServiceContractViewModel serviceContractViewModel = Mapper.Map <ServiceContractViewModel>(incidentalContract); serviceContractViewModel = Mapper.Map <ServiceContractViewModel>(serviceIncidentalContract); serviceContractViewModel.ContractTitle = incidentalContract.ContractTitle; serviceContractViewModel.ContractItems = incidentalContractItems; if (serviceContractViewModel == null) { return(HttpNotFound()); } ViewBag.IncidentalContracOwnerId = new SelectList(db.UserAccounts, "UserAccountId", "UserName", serviceContractViewModel.IncidentalContracOwnerId); ViewBag.IncidentalContracControllerId = new SelectList(db.UserAccounts, "UserAccountId", "UserName", serviceContractViewModel.IncidentalContracControllerId); ViewBag.IncidentalContracProviderId = new SelectList(db.UserAccounts, "UserAccountId", "UserName", serviceContractViewModel.IncidentalContracProviderId); ViewBag.IncidentalContracTypeId = new SelectList(db.IncidentalContracTypes, "IncidentalContracTypeId", "IncidentalContracTypeTitle", serviceContractViewModel.IncidentalContracTypeId); ViewBag.OwnerMunicipalEntityId = new SelectList(db.MunicipalEntities, "MunicipalEntityId", "MunicipalEntityName", serviceContractViewModel.OwnerMunicipalEntityId); ViewBag.ProviderMunicipalEntityId = new SelectList(db.MunicipalEntities, "MunicipalEntityId", "MunicipalEntityName", serviceContractViewModel.ProviderMunicipalEntityId); return(View(serviceContractViewModel)); }
public ActionResult DeleteConfirmed(int id) { IncidentalContract incidentalContract = db.IncidentalContracts.Find(id); db.IncidentalContracts.Remove(incidentalContract); db.SaveChanges(); return(RedirectToAction("Index")); }
public ActionResult Edit([Bind(Include = "IncidentalContractId,ContractTitle,IncidentalContracType,OwnerMunicipalEntityId,IncidentalContracOwnerId,IncidentalContracOwnerName,IncidentalContracControllerId,IncidentalContracControllerName,ProviderMunicipalEntityId,IncidentalContracProviderId,IncidentalContracProviderName,IncidentalContracInvoiceNumber")] IncidentalContract incidentalContract) { if (ModelState.IsValid) { db.Entry(incidentalContract).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.OwnerMunicipalEntityId = new SelectList(db.MunicipalEntities, "MunicipalEntityId", "MunicipalEntityName", incidentalContract.OwnerMunicipalEntityId); ViewBag.ProviderMunicipalEntityId = new SelectList(db.MunicipalEntities, "MunicipalEntityId", "MunicipalEntityName", incidentalContract.ProviderMunicipalEntityId); return(View(incidentalContract)); }
// GET: IncidentalContracts/Details/5 public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } IncidentalContract incidentalContract = db.IncidentalContracts.Find(id); if (incidentalContract == null) { return(HttpNotFound()); } return(View(incidentalContract)); }
// GET: IncidentalContracts/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } IncidentalContract incidentalContract = db.IncidentalContracts.Find(id); if (incidentalContract == null) { return(HttpNotFound()); } ViewBag.OwnerMunicipalEntityId = new SelectList(db.MunicipalEntities, "MunicipalEntityId", "MunicipalEntityName", incidentalContract.OwnerMunicipalEntityId); ViewBag.ProviderMunicipalEntityId = new SelectList(db.MunicipalEntities, "MunicipalEntityId", "MunicipalEntityName", incidentalContract.ProviderMunicipalEntityId); return(View(incidentalContract)); }
// GET: Invoices/Details/5 public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Invoice invoice = db.Invoices.Find(id); invoice.InvoiceItems = db.InvoiceItems.Where(w => w.InvoiceId == id).ToList(); IncidentalContract contract = db.IncidentalContracts.Where(w => w.IncidentalContracInvoiceNumber == invoice.InvoiceNumber).FirstOrDefault(); ViewBag.IncidentalContracId = contract.IncidentalContractId; if (invoice == null) { return(HttpNotFound()); } return(View(invoice)); }
private void CreateInvoice(int?id) { IncidentalContract incidentalContract = db.IncidentalContracts.Find(id); if (incidentalContract == null) { return; } var invoice = new Invoice(); var issuer = db.UserAccounts.Find(incidentalContract.IncidentalContracProviderId).MunicipalEntity; var customer = db.UserAccounts.Find(incidentalContract.IncidentalContracOwnerId).MunicipalEntity; invoice.InvoiceIssuerName = issuer.MunicipalEntityName; invoice.InvoiceIssuerAddress = issuer.MunicipalEntityAddress; invoice.InvoiceIssuerBtw = issuer.MunicipalEntityBtw; invoice.InvoiceIssuerKvk = issuer.MunicipalEntityKvk; invoice.InvoiceIssuerIban = issuer.MunicipalEntityIban; invoice.InvoiceCustomerName = customer.MunicipalEntityName; invoice.InvoiceCustomeAddress = customer.MunicipalEntityAddress; invoice.InvoiceCustomeBtw = customer.MunicipalEntityBtw; invoice.InvoiceCustomeKvk = customer.MunicipalEntityKvk; invoice.InvoiceDescription = ""; invoice.InvoiceDate = DateTime.Now.Date; invoice.InvoiceDueDate = DateTime.Now.AddMonths(1).Date; decimal InvoiceValueSum = 0M; decimal InvoiceVatSum = 0M; foreach (var item in db.IncidentalContractItems.Where(w => w.IncidentalContractId == id).ToList()) { var invoiceItem = new InvoiceItem(); invoiceItem.Currency = "EUR"; invoiceItem.Description = item.IncidentalContractItemDescription; invoiceItem.Quantity = item.IncidentalContractItemQuantity; invoiceItem.UnitPrice = item.IncidentalContractItemValue; invoiceItem.VatPercent = item.IncidentalContractItemVat; invoiceItem.TotalPrice = item.IncidentalContractItemQuantity * item.IncidentalContractItemValue; invoiceItem.Description = item.IncidentalContractItemDescription; invoiceItem.ProductIncomeCode = item.ProductIncomeCode; invoiceItem.ProductExpenseCode = item.ProductExpenseCode; invoiceItem.BudgetCode = item.BudgetCodeId; InvoiceValueSum += invoiceItem.TotalPrice; InvoiceVatSum += (invoiceItem.TotalPrice * ((decimal)invoiceItem.VatPercent / 100)); invoice.InvoiceItems.Add(invoiceItem); } invoice.InvoiceValue = InvoiceValueSum; invoice.InvoiceVatTotal = InvoiceVatSum; invoice.InvoiceValueTotal = InvoiceValueSum + InvoiceVatSum; //here call rest API, for this exercise we will write it to the database directly db.Invoices.Add(invoice); db.SaveChanges(); foreach (var item in db.IncidentalContractItems.Where(w => w.IncidentalContractId == id).ToList()) { var budget = db.Budgets.Where(w => w.BudgetIdCode == item.BudgetCodeId).FirstOrDefault(); var transaction = new BudgetBalanceTransaction(); transaction.BudgetBalanceWithdrawal = item.IncidentalContractItemQuantity * item.IncidentalContractItemValue; transaction.BudgetBalanceWithdrawalSource = invoice.InvoiceNumber; transaction.OwnerBudgetId = budget.BudgetId; db.BudgetBalanceTransactions.Add(transaction); budget.BudgetBalance -= transaction.BudgetBalanceWithdrawal; } incidentalContract.IncidentalContracInvoiceNumber = invoice.InvoiceNumber; db.SaveChanges(); }