public ActionResult VinDecode(string vin)
 {
     ClearChromeSession();
     if (Session["Dealership"] != null)
     {
         var             dealer = (DealershipViewModel)Session["Dealership"];
         JavaScriptModel model  = DataHelper.GetJavaScripModel(vin.Trim().ToUpper(), dealer);
         return(Json(model));
     }
     return(RedirectToAction("LogOff", "Account"));
 }
Exemple #2
0
        public static JavaScriptModel GetJavaScripModel(string vin, DealershipViewModel dealer)
        {
            var autoService = new ChromeAutoService();
            var model       = new JavaScriptModel();

            if (SQLHelper.CheckVinExist(vin, dealer))
            {
                var context = new whitmanenterprisewarehouseEntities();
                var row     = context.whitmanenterprisedealershipinventories.FirstOrDefault(x => x.VINNumber == vin && x.DealershipId == dealer.DealershipId);
                model.ListingId = row.ListingID.ToString(CultureInfo.InvariantCulture);
                model.Status    = "Inventory";
            }
            else if (SQLHelper.CheckVinExistInSoldOut(vin, dealer))
            {
                var context = new whitmanenterprisewarehouseEntities();
                var row     = context.whitmanenterprisedealershipinventorysoldouts.FirstOrDefault(x => x.VINNumber == vin && x.DealershipId == dealer.DealershipId);
                model.ListingId = row.ListingID.ToString(CultureInfo.InvariantCulture);
                model.Status    = "SoldOut";
            }
            else if (SQLHelper.CheckVinExistInAppraisal(vin, dealer))
            {
                var context = new whitmanenterprisewarehouseEntities();
                var row     = context.whitmanenterpriseappraisals.FirstOrDefault(x => x.VINNumber == vin && x.DealershipId == dealer.DealershipId);
                model.AppraisalId = row.idAppraisal.ToString(CultureInfo.InvariantCulture);
                model.Status      = "Appraisal";
                //return RedirectToAction("ViewProfileForAppraisal", "Appraisal", new { AppraisalId = row["AppraisalID"].ToString() });
            }
            else
            {
                var vehicleInfo = autoService.GetVehicleInformationFromVin(vin);
                if (vehicleInfo != null)
                {
                    model.Vin    = vin;
                    model.Status = "VinProcessing";
                }
                else
                {
                    model.Vin    = vin;
                    model.Status = "VinInvalid";
                }
            }

            return(model);
        }
        public void PlaceScriptInTheEndOfTheBodyTag_LiteralMarker()
        {
            var page = new Page();

            page.Controls.Add(new Button());

            // The mvc master page has literal control that is used to mark the body end and there are inserted all scripts.
            page.Controls.Add(new LiteralControl()
            {
                Text = "marker"
            });

            var model = new JavaScriptModel();

            model.PlaceScriptBeforeBodyEnd(page, "script");

            var expectedScriptControl = page.Controls[1];

            Assert.IsInstanceOfType(expectedScriptControl, typeof(LiteralControl));

            var expectedScriptLiteral = (LiteralControl)expectedScriptControl;

            Assert.AreEqual("script", expectedScriptLiteral.Text);
        }
        public ActionResult SearchStock(string stock)
        {
            if (Session["Dealership"] == null)
            {
                return(RedirectToAction("LogOff", "Account"));
            }

            var dealer = (DealershipViewModel)Session["Dealership"];

            stock = CommonHelper.RemoveSpecialCharactersForSearchStock(stock);

            int numberofResultFromSearchStock;

            var sessionSingle = SessionHandler.Single;

            if (sessionSingle)
            {
                numberofResultFromSearchStock = SQLHelper.CheckStockExist(stock, dealer);
            }
            else
            {
                var dealerGroup = (DealerGroupViewModel)Session["DealerGroup"];
                numberofResultFromSearchStock = SQLHelper.CheckStockExistInGroup(stock, dealerGroup);
            }

            if (numberofResultFromSearchStock > 0)
            {
                if (numberofResultFromSearchStock == 1)
                {
                    var context = new whitmanenterprisewarehouseEntities();

                    var row = InventoryQueryHelper.GetSingleOrGroupInventory(context).First(x => x.StockNumber.ToLower().Contains(stock.ToLower()));

                    var model = new JavaScriptModel()
                    {
                        ListingId = row.ListingID.ToString(CultureInfo.InvariantCulture),
                        Status    = "Inventory"
                    };

                    return(Json(model));
                }
                else
                {
                    var model = new JavaScriptModel()
                    {
                        Status = "MutilpleInventoryResultFromStock",
                    };

                    return(Json(model));
                }
            }

            int numberofResultFromSearchVin;

            if (sessionSingle)
            {
                numberofResultFromSearchVin = SQLHelper.CheckSimilarVinExist(stock, dealer);
            }
            else
            {
                var dealerGroup = (DealerGroupViewModel)Session["DealerGroup"];
                numberofResultFromSearchVin = SQLHelper.CheckVinExistInGroup(stock, dealerGroup);
            }

            if (numberofResultFromSearchVin > 0)
            {
                if (numberofResultFromSearchVin == 1)
                {
                    var context = new whitmanenterprisewarehouseEntities();

                    var row = InventoryQueryHelper.GetSingleOrGroupInventory(context).First(x => x.VINNumber != null && x.VINNumber.ToLower() == stock.ToLower());

                    var model = new JavaScriptModel()
                    {
                        ListingId = row.ListingID.ToString(CultureInfo.InvariantCulture),
                        Status    = "Inventory"
                    };

                    return(Json(model));
                }
                else
                {
                    var model = new JavaScriptModel()
                    {
                        Status = "MutilpleInventoryResultFromVin"
                    };

                    return(Json(model));
                }
            }
            else
            {
                var model = new JavaScriptModel()
                {
                    Stock  = stock,
                    Status = "StockNotExisted"
                };

                return(Json(model));
            }
        }