Exemple #1
0
        }        // constructor

        public ActionResult Download(decimal amount, string viewName, int loanType, int repaymentPeriod)
        {
            var oLog = new SafeILog(LogManager.GetLogger(GetType()));

            oLog.Info("Download agreement: amount = {0}, view = {1}, loan type = {2}, repayment period = {3}", amount, viewName, loanType, repaymentPeriod);

            var lastCashRequest = this.customer.LastCashRequest;

            if (this.customer.IsLoanTypeSelectionAllowed == 1)
            {
                var oDBHelper = ObjectFactory.GetInstance <IDatabaseDataHelper>() as DatabaseDataHelper;
                lastCashRequest.RepaymentPeriod = repaymentPeriod;
                lastCashRequest.LoanType        = oDBHelper.LoanTypeRepository.Get(loanType);
            }             // if

            var loan = this.loanBuilder.CreateLoan(lastCashRequest, amount, DateTime.UtcNow);

            var model = this.builder.Build(this.customer, amount, loan);

            var productSubTypeID = loan.CashRequest.ProductSubTypeID;
            var originId         = loan.CashRequest.Customer.CustomerOrigin.CustomerOriginID;
            var isRegulated      = this.customer.PersonalInfo.TypeOfBusiness.IsRegulated();

            LoanAgreementTemplate loanAgreementTemplate = this.serviceClient.Instance.GetLegalDocs(this.customer.Id, this.context.UserId, originId, isRegulated, productSubTypeID ?? 0).LoanAgreementTemplates.FirstOrDefault(x => x.TemplateTypeName == viewName);

            if (loanAgreementTemplate != null)
            {
                var template = loanAgreementTemplate.Template;
                var pdf      = this.agreementRenderer.RenderAgreementToPdf(template, model);
                return(File(pdf, "application/pdf", viewName + " Summary_" + DateTime.Now + ".pdf"));
            }
            return(null);
        }         // Download
        public ActionResult SaveLegalDoc(LoanAgreementTemplate loanAgreementTemplate)
        {
            loanAgreementTemplate.ReleaseDate = DateTime.UtcNow;

            var data = this.serviceClient.Instance.SaveLegalDoc(1, 1, loanAgreementTemplate).Value;

            var result = new { Success = "True", Data = data };

            return(Json(result, JsonRequestBehavior.AllowGet));
        }
Exemple #3
0
        public BoolActionResult SaveLegalDoc(int customerID, int userID, LoanAgreementTemplate loanAgreementTemplate)
        {
            SaveLegalDoc strategy;
            var          metadata = ExecuteSync(out strategy, customerID, userID, loanAgreementTemplate);

            return(new BoolActionResult()
            {
                MetaData = metadata,
                Value = strategy.Result
            });
        }
Exemple #4
0
        public LegalDocActionResult AddLegalDoc(int customerID, int userID, LoanAgreementTemplate loanAgreementTemplate)
        {
            AddLegalDoc strategy;
            var         metadata = ExecuteSync(out strategy, customerID, userID, loanAgreementTemplate);

            return(new LegalDocActionResult()
            {
                MetaData = metadata,
                LoanAgreementTemplate = strategy.LoanAgreementTemplate
            });
        }
        public ActionResult AddLegalDoc(LoanAgreementTemplate loanAgreementTemplate)
        {
            loanAgreementTemplate.Id          = 0;
            loanAgreementTemplate.IsApproved  = false;
            loanAgreementTemplate.IsReviewed  = false;
            loanAgreementTemplate.ReleaseDate = DateTime.UtcNow;

            var data = this.serviceClient.Instance.AddLegalDoc(1, 1, loanAgreementTemplate).LoanAgreementTemplate;

            var result = new { Success = "True", Data = data };

            return(Json(result, JsonRequestBehavior.AllowGet));
        }
        public ActionResult Download(int id)
        {
            var agreement = this.agreements.Get(id);

            try {
                if (this.context.Customer != null && agreement.Loan.Customer != this.context.Customer)
                {
                    return(new HttpNotFoundResult());
                }
            }
            catch (InvalidCustomerException) {
                //if customer is not found, assume that it is underwriter
            }

            var agreementModel = JsonConvert.DeserializeObject <AgreementModel>(agreement.Loan.AgreementModel);

            var customer = agreement.Loan.Customer;

            if (string.IsNullOrEmpty(agreementModel.FullName))
            {
                agreementModel.FullName = customer.PersonalInfo.Fullname;
                var company = customer.Company;
                if (company != null)
                {
                    agreementModel.CompanyName   = company.ExperianCompanyName ?? company.CompanyName;
                    agreementModel.CompanyNumber = company.ExperianRefNum ?? company.CompanyNumber;
                    try {
                        agreementModel.CompanyAdress = company.CompanyAddress.First()
                                                       .FormattedAddress;
                    } catch {
                        //nothing
                    }
                }
            }

            LoanAgreementTemplate loanAgreementTemplate = this.serviceClient.Instance.GetLegalDocById(customer.Id, this.context.UserId, agreement.TemplateID).LoanAgreementTemplate;

            var pdf = this.agreementRenderer.RenderAgreementToPdf(loanAgreementTemplate.Template, agreementModel);

            return(File(pdf, "application/pdf", GenerateFileName(agreement)));
        }
Exemple #7
0
 public AddLegalDoc(LoanAgreementTemplate loanAgreementTemplate)
 {
     LoanAgreementTemplate = loanAgreementTemplate;
 }