Ejemplo n.º 1
0
        public ActionResult NewLoan(CallInstructions model)
        {
            var logger = Logger.GetLogger();

            var c = new CustomerRepository().FindCustomer(model.Personnummer);

            if (c == null)
            {
                c = new Customer {
                    PersonNummer = model.Personnummer
                };
                new CustomerRepository().SaveCustomer(c);
                logger.LogAction(Logger.Actions.CreatingCustomer, model.Personnummer);
                SendEmailToBoss("New customer!", model.Personnummer);
            }

            var loan = new Loan
            {
                LoanNo       = DateTime.Now.Ticks.ToString(),
                Belopp       = model.HowMuchDoYouNeed,
                FromWhen     = DateTime.Now,
                InterestRate = model.RateWeCanOffer
            };

            c.Loans.Add(loan);
            SaveLoanToFile(c, loan);
            SendEmailToBoss("New loan!", model.Personnummer + " " + loan.LoanNo);
            ReportNewLoanToFinansInspektionen(model.Personnummer, loan);

            logger.LogAction(Logger.Actions.CreatingLoan, $"{model.Personnummer} {loan.LoanNo}  {loan.Belopp}");

            return(View(loan));
        }
Ejemplo n.º 2
0
        public ActionResult Ringinstruktioner()
        {
            var logger = Logger.GetLogger();

            logger.LogAction(Logger.Actions.CallReceived, " some more useless info...");
            var model = new CallInstructions();

            return(View(model));
        }
Ejemplo n.º 3
0
        public ActionResult Ringinstruktioner(CallInstructions model)
        {
            var c = new CustomerRepository().FindCustomer(model.Personnummer);

            model.Result = true;
            if (c == null)
            {
                model.Customer = c;
            }

            int     age             = GetAge(model.Personnummer);
            var     interestService = new InterestService();
            decimal baseRate        = new InterestServicesCachingDecorator(interestService).GetRiksbankensBaseRate();

            if (c == null)
            {
                if (age < 18)
                {
                    model.RateWeCanOffer = 30.22m + baseRate;
                }
                else if (age < 35)
                {
                    model.RateWeCanOffer = 32.18m + baseRate;
                }
                else if (age < 65)
                {
                    model.RateWeCanOffer = 22.30m + baseRate;
                }
                else
                {
                    model.RateWeCanOffer = 45.30m + baseRate;
                }
            }
            else
            {
                if (age < 18)
                {
                    model.RateWeCanOffer = 29.32m + baseRate;
                }
                else if (age < 35)
                {
                    model.RateWeCanOffer = 31.38m + baseRate;
                }
                else if (age < 65)
                {
                    model.RateWeCanOffer = 21.20m + baseRate;
                }
                else
                {
                    model.RateWeCanOffer = 41.12m + baseRate;
                }


                if (c.HasEverBeenLatePaying)
                {
                    model.RateWeCanOffer += 10.0m;
                }
            }

            return(View(model));
        }