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 }));
        }
예제 #2
0
 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(),
     });