Example #1
0
        // GET: StoreShow
        public ActionResult Index(int?store_id)
        {
            string          Sql       = "SELECT ID,NAME,TYPE,FILE_NAME FROM TB_STORE NATURAL JOIN TB_STORE_TYPE NATURAL JOIN TB_DECORATION WHERE ID= " + store_id.ToString();
            List <StoreMes> storemess = db.Database.SqlQuery <StoreMes>(Sql).ToList();

            IndexModel.name     = storemess.First().NAME;
            IndexModel.filename = storemess.First().FILE_NAME;
            IndexModel.types    = new List <string>();
            foreach (StoreMes item in storemess)
            {
                IndexModel.types.Add(item.TYPE);
            }
            IndexModel.store_id = store_id;

            string            SqlString    = "SELECT * FROM TB_PRODUCT P WHERE P.S_ID = " + store_id.ToString() + "ORDER BY (SELECT SUM(NUM) FROM TB_CONTAINS GROUP BY S_ID,P_ID HAVING S_ID = P.S_ID AND P_ID = P.ID) DESC";
            List <TB_PRODUCT> hot_products = db.Database.SqlQuery <TB_PRODUCT>(SqlString).ToList();
            int min_num = Math.Min(4, hot_products.Count);
            int num     = 0;
            int i       = 0;

            while (num < min_num && i < hot_products.Count)
            {
                TB_PRODUCT temp_product = hot_products[i];
                string     Sql2         = "SELECT COUNT(*) FROM TB_CONTAINS WHERE S_ID = " + temp_product.S_ID.ToString() + "AND P_ID = " + temp_product.ID.ToString();
                var        list         = db2.TB_CONTAINS.Where(a => a.P_ID == temp_product.ID && a.S_ID == temp_product.S_ID).ToList();
                if (list.Count > 0)
                {
                    HotProductView product = new HotProductView();
                    product.name  = temp_product.NAME;
                    product.price = temp_product.PRICE;
                    product.s_id  = (int?)temp_product.S_ID;
                    product.id    = (int?)temp_product.ID;
                    Pro_pics   pics = new Pro_pics();
                    TB_PRO_PIC pic  = pics.TB_PRO_PIC.Where(a => a.P_ID == temp_product.ID && a.S_ID == temp_product.S_ID).FirstOrDefault();
                    if (pic != null)
                    {
                        product.picture = pic.PICTURE;
                    }
                    hot_product_models.Add(product);
                    num--;
                }
                else
                {
                    min_num--;
                    min_num = Math.Min(min_num, 4);
                }
                i++;
            }
            IndexModel.hot_products  = hot_product_models;
            IndexModel.low_products  = db.Database.SqlQuery <TB_PRODUCT>("SELECT * FROM TB_PRODUCT WHERE S_ID = " + store_id.ToString() + "AND DISCOUNT_RATE < 0.5").ToList();
            IndexModel.high_products = db.Database.SqlQuery <TB_PRODUCT>("SELECT * FROM TB_PRODUCT WHERE S_ID = " + store_id.ToString() + "AND DISCOUNT_RATE < 1 AND DISCOUNT_RATE > 0.5").ToList();
            return(View(IndexModel));
        }
Example #2
0
        public ActionResult AllStoreShow(string keyString)
        {
            keyString = Request.Form["keyString"];
            List <AllStoreViewModel> models = new List <AllStoreViewModel>();

            foreach (TB_STORE store in db.TB_STORE.Where(a => a.NAME.Contains(keyString)).ToList())
            {
                AllStoreViewModel item = new AllStoreViewModel();
                item.store_name = store.NAME;
                item.rank       = (int?)store.QUALITY_RATING;
                item.store_id   = (int?)store.ID;
                List <ProductWithPicture_2_0> products = new List <ProductWithPicture_2_0>();
                Products p_db = new Products();
                foreach (TB_PRODUCT temp_item in p_db.TB_PRODUCT.Where(a => a.S_ID == store.ID).ToList())
                {
                    ProductWithPicture_2_0 pwp = new ProductWithPicture_2_0();
                    Pro_pics pic_db            = new Pro_pics();
                    pwp.product = temp_item;

                    TB_PRO_PIC pic = pic_db.TB_PRO_PIC.Where(a => a.P_ID == temp_item.ID && a.S_ID == temp_item.S_ID).First();
                    if (pic != null)
                    {
                        pwp.PICTURE = pic.PICTURE;
                    }
                    products.Add(pwp);
                }

                item.products = new List <ProductWithPicture_2_0>();
                int i = 0;
                while (i < 5 && i < products.Count)
                {
                    item.products.Add(products[i]);
                    i++;
                }
                models.Add(item);
            }
            ViewData["StoreKeyString"] = "所有";
            return(View(models));
        }
Example #3
0
        public ActionResult Index()
        {
            string            Sql          = "SELECT * FROM TB_PRODUCT P ORDER BY (SELECT SUM(NUM) FROM TB_CONTAINS GROUP BY S_ID,P_ID HAVING S_ID = P.S_ID AND P_ID = P.ID) DESC";
            List <TB_PRODUCT> hot_products = db.Database.SqlQuery <TB_PRODUCT>(Sql).ToList();
            int min_num = Math.Min(8, hot_products.Count);
            int num     = 0;
            int i       = 0;

            while (num < min_num && i < hot_products.Count)
            {
                TB_PRODUCT temp_product = hot_products[i];
                string     Sql2         = "SELECT COUNT(*) FROM TB_CONTAINS WHERE S_ID = " + temp_product.S_ID.ToString() + "AND P_ID = " + temp_product.ID.ToString();
                var        list         = db.TB_CONTAINS.Where(a => a.P_ID == temp_product.ID && a.S_ID == temp_product.S_ID).ToList();
                if (list.Count > 0)
                {
                    HotProductView product = new HotProductView();
                    product.name  = temp_product.NAME;
                    product.price = temp_product.PRICE;
                    product.id    = (int?)temp_product.ID;
                    product.s_id  = (int?)temp_product.S_ID;
                    Pro_pics   pics = new Pro_pics();
                    TB_PRO_PIC pic  = pics.TB_PRO_PIC.Where(a => a.P_ID == temp_product.ID && a.S_ID == temp_product.S_ID).FirstOrDefault();
                    if (pic != null)
                    {
                        product.picture = pic.PICTURE;
                    }
                    hot_product_models.Add(product);
                    num--;
                }
                else
                {
                    min_num--;
                    min_num = Math.Min(min_num, 8);
                }
                i++;
            }
            return(View(hot_product_models));
        }