Пример #1
0
        public void OfferRequest(string userEmail, Guid requestId, Guid vehicleId)
        {
            RequestOffer ro = new RequestOffer();

            ro.RequestOfferID  = Guid.NewGuid();
            ro.RequestSenderID = userEmail;
            ro.RequestID       = requestId;
            ro.VehicleID       = vehicleId;

            _context.RequestOffers.Add(ro);
            _context.SaveChanges();
        }
Пример #2
0
        public ActionResult OfferFortiva(int id)
        {
            using (db = new ChargeAfterEntities())
            {
                try
                {
                    var     offer          = new RequestOffer();
                    var     item           = (List <Item>)Session["cart"];
                    float   subTot         = 0;
                    float   pay            = 0;
                    decimal approvedAmount = 0;
                    if (item != null)
                    {
                        foreach (Item itemPro in (List <Item>)Session["cart"])
                        {
                            float price = Convert.ToSingle(@itemPro.Pro.Price) * 1;
                            subTot = subTot + price;
                            Session["Subtotal"] = subTot;
                        }

                        pay            = Convert.ToSingle(100 + subTot);
                        approvedAmount = Math.Round((decimal)pay, 0);
                    }
                    decimal monthly    = approvedAmount / 6;
                    decimal monthlyPay = Math.Round((decimal)monthly, 0);
                    int?    intIdt     = db.Users.Max(u => (int?)u.Id);
                    offer.UserID = intIdt;

                    offer.TotalPayback    = 6;
                    offer.IncreasePercent = 0;
                    offer.ApprovedAmmount = approvedAmount;
                    offer.MonthlyAmount   = monthlyPay;
                    offer.Lender          = "Fortiva";
                    offer.MonthCount      = 6;

                    db.RequestOffers.Add(offer);
                    var     req   = (from r in db.Requests where r.UserID == intIdt select r).FirstOrDefault();
                    long    reqID = req.ReqID;
                    Request model = db.Requests.Find(reqID);
                    model.RequestStatus   = "Authorized";
                    db.Entry(model).State = EntityState.Modified;
                    db.SaveChanges();
                    TempData["PayBack"] = "6";
                    Session["PayBack"]  = "6";
                    return(RedirectToAction("ReviewSubmit"));
                }
                catch (Exception ex)
                {
                    TempData["message"] = "We can not proceed your request right now !!! Fill all the fields carefully and try again";
                    return(RedirectToAction("Payment"));
                }
            }
        }
Пример #3
0
        public ActionResult OfferFortiva(int id)
        {
            using (db = new ChargeAfterEntities())
            {
                var     offer          = new RequestOffer();
                var     item           = (List <Item>)Session["cart"];
                float   subTot         = 0;
                float   pay            = 0;
                decimal approvedAmount = 0;
                if (item != null)
                {
                    foreach (Item itemPro in (List <Item>)Session["cart"])
                    {
                        float price = Convert.ToSingle(@itemPro.Pro.Price) * 1;
                        subTot = subTot + price;
                        Session["Subtotal"] = subTot;
                    }

                    pay            = Convert.ToSingle(100 + subTot);
                    approvedAmount = Math.Round((decimal)pay, 0);
                }
                decimal monthly    = approvedAmount / 6;
                decimal monthlyPay = Math.Round((decimal)monthly, 0);
                // var Oid = user
                offer.UserID = id;

                offer.TotalPayback    = 6;
                offer.IncreasePercent = 0;
                offer.ApprovedAmmount = approvedAmount;
                offer.MonthlyAmount   = monthlyPay;
                offer.Lender          = "Fortiva";
                db.RequestOffers.Add(offer);
                var     req   = (from r in db.Requests where r.UserID == id select r).FirstOrDefault();
                long    reqID = req.ReqID;
                Request model = db.Requests.Find(reqID);
                model.RequestStatus   = "Authorized";
                db.Entry(model).State = EntityState.Modified;
                db.SaveChanges();
            }
            TempData["PayBack"] = "6";
            Session["PayBack"]  = "6";
            return(RedirectToAction("Approved"));
        }
Пример #4
0
        public void MakeRequestOffer(Guid requestId, RequestOfferDto requestOfferDto)
        {
            Guard.ArgNotEmpty(requestId, nameof(requestId));
            Guard.ArgNotEmpty(requestOfferDto, nameof(requestOfferDto));

            IIdentity requestIdentity = requestId.ToIdentity();

            ProductRequest productRequest = requestRepository.GetEntityById(requestIdentity);

            if (productRequest == null)
            {
                throw new Exception("Product request not found");
            }

            RequestOffer requestOffer = new RequestOffer(requestOfferDto.Price);

            productRequest.MakeRequestOffer(requestOffer);

            requestRepository.Update(productRequest);
        }
Пример #5
0
        public ActionResult ConfirmPayment(FormCollection form)
        {
            var   items  = (List <Item>)Session["cart"];
            float subTot = 0;
            float total  = 0;

            if (items != null)
            {
                foreach (Item itemPro in (List <Item>)Session["cart"])
                {
                    float price = Convert.ToSingle(itemPro.Pro.Price) * 1;
                    subTot = subTot + price;
                }
                total = subTot + 100;
            }
            decimal amount = Math.Round((decimal)total, 0);


            try
            {
                Applicant applicant = new Applicant();
                Address   address   = new Address();
                //var loanAmount = form["loanAmmount"];

                applicant.firstName = form["name"];
                applicant.lastName  = form["name"];

                string tempDate    = (form["DOB"]);
                string createddate = Convert.ToDateTime(tempDate).ToString("yyyy-MM-dd");
                applicant.dateOfBirth          = createddate;
                applicant.mobile               = form["mobile"];
                applicant.email                = form["email"];
                applicant.identificationNumber = form["ssn"];
                if (form["housingType"] != null)
                {
                    applicant.housingType = form["housingType"];
                }
                else
                {
                    applicant.housingType = "";
                }
                applicant.salaryFrequency  = form["salaryFrequency"];
                applicant.employmentStatus = form["employmentStatus"];


                address.street1 = Session["address"].ToString();
                address.city    = Session["City"].ToString();
                address.state   = Session["state"].ToString();
                address.zipCode = Session["Zip"].ToString();
                address.country = Session["country"].ToString();

                applicant.address = address;

                var grossIncome = form["grossIncome"];



                TempData["matches"] = new OfferService().GetOffers(amount.ToString(), grossIncome, applicant);


                //   IEnumerable<OfferViewModel> ResponceOffer = new OfferService().GetOffers(loanAmount, grossIncome, applicant);



                if (TempData["matches"] != null)
                {
                    using (db = new ChargeAfterEntities())
                    {
                        var user        = new User();
                        var userAddress = new UserAdress();
                        var req         = new Request();
                        var name        = form["name"];
                        var email       = form["email"];
                        user.FirstName             = form["name"];
                        user.Mobile                = form["mobile"];
                        user.Email                 = form["email"];
                        user.DOB                   = Convert.ToDateTime(form["DOB"]);
                        user.EstimatedCreditRange  = form["CreditScore"];
                        user.EmploymentStatus      = form["employmentStatus"];
                        user.HousingStatus         = form["housingType"];
                        user.GrossAnnualIndividual = form["grossIncome"];
                        user.NetMonthlyIncome      = form["netMonthly"];
                        user.SalaryFrequency       = form["salaryFrequency"];



                        db.Users.Add(user);
                        db.SaveChanges();

                        userAddress.UserId     = user.Id;
                        tempID                 = user.Id;
                        Session["id"]          = user.Id;
                        userAddress.Country    = Session["country"].ToString();
                        userAddress.Adress     = Session["address"].ToString();
                        userAddress.City       = Session["City"].ToString();
                        userAddress.State      = Session["state"].ToString();
                        userAddress.PostalCode = Session["Zip"].ToString();
                        db.UserAdresses.Add(userAddress);



                        req.UserID        = user.Id;
                        req.RequestDate   = DateTime.Now;
                        req.RequestAmount = amount;
                        req.RequestStatus = "Pending";
                        TempData["id"]    = user.Id;
                        db.Requests.Add(req);
                        db.SaveChanges();

                        ViewData["message"] = "Sucessful";
                    }
                    using (db = new ChargeAfterEntities())
                    {
                        var     offer          = new RequestOffer();
                        var     item           = (List <Item>)Session["cart"];
                        float   subTots        = 0;
                        float   pay            = 0;
                        decimal approvedAmount = 0;
                        if (item != null)
                        {
                            foreach (Item itemPro in (List <Item>)Session["cart"])
                            {
                                float price = Convert.ToSingle(@itemPro.Pro.Price) * 1;
                                subTots             = subTots + price;
                                Session["Subtotal"] = subTots;
                            }

                            pay            = Convert.ToSingle(100 + subTots);
                            approvedAmount = Math.Round((decimal)pay, 0);
                        }
                        decimal monthly    = approvedAmount / 12;
                        decimal monthlyPay = Math.Round((decimal)monthly, 0);


                        IEnumerable <OfferViewModel> offered = (IEnumerable <OfferViewModel>)TempData["matches"];


                        foreach (var itms in offered)
                        {
                            if (offered.Count() == 0)
                            {
                                offer.Lender   = "No Lender Avaialable";
                                offer.Ammount  = 0;
                                offer.Duration = " ";
                                offer.Intrest  = " ";
                                ////viewmodel.loanId = "f8c5774a-d532-49eb-8cac-c5cdb5a6b52c";
                                offer.LoanId = "0";
                                offer.OffID  = 0;
                            }

                            offer.UserID          = long.Parse(tempID.ToString());
                            offer.TotalPayback    = itms.term;
                            offer.IncreasePercent = int.Parse(itms.interestRate.ToString());
                            offer.ApprovedAmmount = decimal.Parse(itms.loanAmount.ToString());
                            try
                            {
                                offer.MonthlyAmount = decimal.Parse(itms.monthlyPayment.ToString());
                            }


                            catch (Exception ex)
                            {
                                offer.MonthlyAmount = 0;
                            }
                            offer.annualFee         = itms.annualFee;
                            offer.Duration          = itms.Duration;
                            offer.eligibility       = itms.eligibility;
                            offer.Intrest           = itms.Intrest;
                            offer.minApr            = itms.apr.ToString();
                            offer.isPreQualifyOffer = itms.isPreQualifyOffer;
                            //offer.legalDisclosure = itms.legalDisclosure.ToString();
                            offer.LoanId = itms.loanId;
                            //offer.maxMonthlyPayment = itms.maxMonthlyPayment.ToString();
                            //offer.minApr = itms.minApr.ToString();
                            offer.MonthCount = itms.term;
                            //offer.pendingOffers = itms.pendingOffers.ToString();
                            offer.status = itms.status;
                            offer.term   = itms.term;
                            offer.Lender = itms.Lender;


                            db.RequestOffers.Add(offer);
                            db.SaveChanges();
                        }
                        return(RedirectToAction("Offers"));
                    }
                }
                else
                {
                    return(View());
                }
            }
            catch (Exception ex)
            {
                ViewData["message"] = "Sorry " + ex.Message;
                return(View());
            }
        }
Пример #6
0
 public void MakeRequestOffer(RequestOffer offer)
 {
     requestOffer = offer;
     AddEvent(new RequestOfferMadeEvent(offer.Price));
 }