public async Task <IActionResult> Create(DraftContract contract) { if (ModelState.IsValid == false) { return(View(contract)); } var toSave = new Core.Domain.Model.Contract() { Currency = contract.Currency.Value, Name = contract.Name, Note = contract.Note, Type = contract.Type.Value }; var saved = contractRepository.Add(toSave); await contractRepository.Save(); draftRepository.Add(new ContractDraft() { ContractId = saved.Id, Step = 1 }); await draftRepository.Save(); return(RedirectToAction("Step", new { contractId = saved.Id })); }
private void SetContract(Core.Domain.Model.Contract contract, RentViewModel model) { contract.PaymentTermType = model.PaymentTermType; contract.ValidFrom = model.ValidFrom; contract.ValidUntil = model.ValidUntil; contract.PaymentTermData = new PaymentTerm() { Day = model.Day, }; }
private IActionResult ContractInitialization(long contractId, Core.Domain.Model.Contract contract) { return(contract.Type switch { ContractType.Undefined => throw new ArgumentException(), ContractType.Rent => RedirectToAction(nameof(RentBuilderController.Rent), nameof(RentBuilderController).Replace("Controller", ""), new { contractId }), ContractType.CombinedRent => RedirectToAction(nameof(RentBuilderController.CombinedRent), nameof(RentBuilderController).Replace("Controller", ""), new { contractId }), ContractType.VariableRent => RedirectToAction(nameof(RentBuilderController.VariableRent), nameof(RentBuilderController).Replace("Controller", ""), new { contractId }), ContractType.Loan => RedirectToAction(nameof(LoanBuilderController.Loan), nameof(LoanBuilderController).Replace("Controller", ""), new { contractId }), ContractType.LoanWithInterest => RedirectToAction(nameof(LoanBuilderController.LoanWithInterest), nameof(LoanBuilderController).Replace("Controller", ""), new { contractId }), _ => throw new ArgumentException(), });