public async Task ProcessApplication(CardApplication creditApplication)
        {
            _applicationRepository.InsertApplication(creditApplication);
            await _applicationRepository.Save();



            var availableCards = _cardRepository.GetCards().Result;

            foreach (Card product in availableCards)
            {
                bool acceptance = product.MeetsCriteria(creditApplication, _ageCalculator);

                CardApplicationResult result = new CardApplicationResult(product, creditApplication, acceptance);
                _cardApplicationResultRepository.InsertApplicationResult(result);
            }
            await _cardApplicationResultRepository.Save();

            //set to results complete
            creditApplication.ResultsComplete = true;
            _applicationRepository.UpdateApplication(creditApplication as CardApplication);
            await _applicationRepository.Save();

            //return products.AsEnumerable();
        }
Ejemplo n.º 2
0
        public void TestCardApplicationSettingDob()
        {
            DateTime testingDob = new DateTime(1976, 5, 8);

            CardApplication sut = CardApplicationTestExtensionMethods.SetupWithDefaultValues().PrepareCardApplicationWithDob(testingDob);

            Assert.AreEqual(sut.DateOfBirth, testingDob);
        }
Ejemplo n.º 3
0
        public void TestCardApplicationSettingIncome()
        {
            decimal incomeToSet = 10000;

            CardApplication sut = CardApplicationTestExtensionMethods.SetupWithDefaultValues().PrepareCardApplicationWithAnnualIncome(incomeToSet);

            Assert.AreEqual(sut.AnnualIncomeGbp, incomeToSet);
        }
Ejemplo n.º 4
0
        public static CardApplication SetupWithDefaultValues()
        {
            CardApplication creditApplication = new CardApplication()
            {
                DateOfBirth = System.DateTime.Now.Date, AnnualIncomeGbp = 0
            };

            return(creditApplication);
        }
Ejemplo n.º 5
0
        public void TestCardApplicationInCompleteWithFutureDob()
        {
            DateTime testingDob = DateTime.Now.AddYears(1);

            CardApplication sut = CardApplicationTestExtensionMethods.SetupWithDefaultValues().PrepareCardApplicationWithDob(testingDob).PrepareCardApplicationWithAnnualIncome(30);


            Assert.IsFalse(sut.IsApplicationComplete());
        }
Ejemplo n.º 6
0
        public void TestCardApplicationComplete()
        {
            DateTime testingDob = new DateTime(1976, 5, 8);

            CardApplication sut = CardApplicationTestExtensionMethods.SetupWithDefaultValues().PrepareCardApplicationWithDob(testingDob).PrepareCardApplicationWithAnnualIncome(30);


            Assert.IsTrue(sut.IsApplicationComplete());
        }
        public async Task <IActionResult> Create([Bind("FirstName,LastName,DateOfBirth,AnnualIncomeGbp")] CardApplication cardApplication)
        {
            if (ModelState.IsValid)
            {
                await _applicationProcessingService.ProcessApplication(cardApplication);

                return(RedirectToAction(nameof(Details), new { id = cardApplication.ID, validationToken = cardApplication.ValidationToken }));
            }
            return(View(cardApplication));
        }
Ejemplo n.º 8
0
 internal static string GetCode(CardApplication cardApplication)
 {
     if (CardApplication.CREDITO == cardApplication)
     {
         return("01");
     }
     else
     {
         return("02");
     }
 }
Ejemplo n.º 9
0
 internal static string GetDescription(CardApplication cardApplication)
 {
     if (CardApplication.CREDITO == cardApplication)
     {
         return("Crédito");
     }
     else
     {
         return("Débito");
     }
 }
Ejemplo n.º 10
0
        /// <summary>
        /// 初始化Shortcut
        /// </summary>
        protected void InitShortcutManager()
        {
            _shortcuts = new ShortcutManager();
            string settingsPath = CardApplication.GetShortcutSettingsFileName();

            if (File.Exists(settingsPath))
            {
                _shortcuts.LoadSettings(settingsPath);
            }
            else
            {
                using (Stream settingsStream = Framework.Core.Resource.Manager.GetStream("ShortcutSettings.xml"))
                {
                    _shortcuts.LoadSettings(settingsStream);
                }
            }
        }
Ejemplo n.º 11
0
 public static CardApplication PrepareCardApplicationWithAnnualIncome(this CardApplication application, decimal income)
 {
     application.AnnualIncomeGbp = income;
     return(application);
 }
Ejemplo n.º 12
0
 public static CardApplication PrepareCardApplicationWithDob(this CardApplication application, DateTime dob)
 {
     application.DateOfBirth = dob;
     return(application);
 }
Ejemplo n.º 13
0
 public WinGuiMain(CardApplication theGuiOwner)
 {
     InitializeComponent();
     GuiOwner = theGuiOwner;
     Init();
 }
        public IEnumerable <CardApplication> Get()
        {
            using (var db = new ACardApiAppContext())
            {
                var query = from b in db.CardApplications
                            where b.Status == false
                            orderby b.CardName
                            select b;

                if (query.Count() <= 0)
                {
                    //Returnera en tom objekt i de fall det inte finns några
                    //Cardapplications att föra över
                    var CardApplicationObjects = new CardApplication[1];
                    var application            = new CardApplication();
                    CardApplicationObjects[0] = application;
                    return(CardApplicationObjects);
                }
                else
                {
                    var CardApplicationObjects = new CardApplication[query.Count()];
                    int i = 0;
                    foreach (var item in query)
                    {
                        if (item.Status == false)
                        {
                            var application = new CardApplication();
                            application.ID = item.ID;
                            application.AccountAgreement     = item.AccountAgreement;
                            application.Address              = item.Address;
                            application.ApprovedAmount       = item.ApprovedAmount;
                            application.CoAddress            = item.CoAddress;
                            application.Country              = item.Country;
                            application.Currency             = item.Currency;
                            application.DateOfBirth          = item.DateOfBirth;
                            application.CardName             = item.CardName;
                            application.FirstName            = item.FirstName;
                            application.SurName              = item.SurName;
                            application.Gender               = item.Gender;
                            application.HandlingOfficer      = item.HandlingOfficer;
                            application.Language             = item.Language;
                            application.Office               = item.Office;
                            application.PostalCity           = item.PostalCity;
                            application.PostalCode           = item.PostalCode;
                            application.ProductID            = item.ProductID;
                            application.SocialSecurityNumber = item.SocialSecurityNumber;
                            application.SpendingLimit        = item.SpendingLimit;

                            CardApplicationObjects[i] = application;
                            i++;

                            // updatera status= true=överförd, false=ej överförd
                            var ApplicationStatus = db.CardApplications.Find(item.ID);
                            ApplicationStatus.Status = true;
                        }
                    }
                    db.SaveChanges();
                    return(CardApplicationObjects);
                }
            }
        }
Ejemplo n.º 15
0
 public void UpdateApplication(CardApplication cardApplication)
 {
     _context.Entry(cardApplication).State = EntityState.Modified;
 }
Ejemplo n.º 16
0
 public void InsertApplication(CardApplication cardApplication)
 {
     _context.CardApplication.Add(cardApplication);
 }