private void get_good_list(HttpContext context) { int page = DTRequest.GetQueryInt("page", 1); string flag = DTRequest.GetQueryString("flag"); int pagesize = DTRequest.GetQueryInt("pagesize", 12); string order = DTRequest.GetQueryString("order"); string keyword = DTRequest.GetQueryString("keyword"); int category = DTRequest.GetQueryInt("category"); string property = DTRequest.GetQueryString("property"); string strwhere = " is_put=1 "; string strorder = "sort_id asc ,add_time desc"; int totalcount = 0; DataSet ds = new DataSet(); if (!string.IsNullOrEmpty(property)) { //strwhere += " and id in ( select good_id from td_property_good where property_value_id in (" + property + ")) "; string where_pro = ""; string[] str_arr = property.Split(','); for (int i = 0; i < str_arr.Length; i++) { if (i == 0) { where_pro += " select good_id from td_property_good where property_value_id in(" + str_arr[i] + ") "; } else { where_pro = "select good_id from td_property_good where good_id in (" + where_pro + ") and property_value_id=" + str_arr[i]; } } strwhere += " and id in (" + where_pro + ")"; } if (!string.IsNullOrEmpty(keyword)) { strwhere += " and (id in (select good_id from td_property_good where property_value_id in ( select id from td_property_value where value like '%" + keyword + "%')) or id in (select good_id from td_tag_good where tag_id in( select id from td_tag where title like '%" + keyword + "%')) or id in (select good_id from td_alias_good where alias_id in( select id from td_alias where title like '%" + keyword + "%'))or title like '%" + keyword + "%') "; } if (order == "moneya") { strorder = "sell_price asc"; } if (order == "moneyd") { strorder = "sell_price desc"; } BLL.article bll = new BLL.article(); DataTable dt = bll.GetList("goods", category, pagesize, page, strwhere, strorder, out totalcount).Tables[0]; DataTable dt_goods = new DataTable(); dt_goods.Columns.Add("id"); dt_goods.Columns.Add("title"); dt_goods.Columns.Add("sell_price"); dt_goods.Columns.Add("img_url"); dt_goods.Columns.Add("standard"); foreach (DataRow dr in dt.Rows) { DataRow new_dr = dt_goods.NewRow(); new_dr["id"] = dr["id"]; new_dr["title"] = dr["title"]; new_dr["sell_price"] = dr["sell_price"]; new_dr["img_url"] = dr["img_url"]; BLL.standard_price bll_standard_price = new BLL.standard_price(); DataTable dt_standard_price = bll_standard_price.GetList("good_id=" + Convert.ToInt32(dr["id"])).Tables[0]; if (dt_standard_price != null && dt_standard_price.Rows.Count > 0) { //有库存 new_dr["standard"] = 1; } else { //没库存 new_dr["standard"] = 2; } dt_goods.Rows.Add(new_dr); } dt_goods.TableName = "dt_good"; if (dt_goods != null && dt_goods.Rows.Count > 0) { ds.Tables.Add(dt_goods.Copy()); } //刷新属性列表 单个类别绑定属性 if (flag == "default" || flag == "self_category" || flag == "self") { DataTable dt_property = new DataTable(); dt_property.Columns.Add("id"); dt_property.Columns.Add("title"); dt_property.Columns.Add("parent_id"); dt_property.TableName = "dt_property"; BLL.property bll_property = new BLL.property(); DataTable old_dt_property = bll_property.GetList(0, "category_id in (select id from dt_article_category where class_list like '%," + category + ",%')", "add_time desc").Tables[0]; foreach (DataRow dr in old_dt_property.Rows) { DataRow new_dr = dt_property.NewRow(); new_dr["id"] = 0; new_dr["title"] = dr["title"]; new_dr["parent_id"] = 0; dt_property.Rows.Add(new_dr); BLL.property_value bll_value = new BLL.property_value(); DataTable dt_property_value = bll_value.GetList(0, "property_id=" + dr["id"].ToString(), "add_time desc").Tables[0]; foreach (DataRow dr_value in dt_property_value.Rows) { DataRow new_dr_value = dt_property.NewRow(); new_dr_value["id"] = dr_value["id"]; new_dr_value["title"] = dr_value["value"]; new_dr_value["parent_id"] = dr["id"]; dt_property.Rows.Add(new_dr_value); } } if (dt_property != null && dt_property.Rows.Count > 0) { ds.Tables.Add(dt_property.Copy()); } } //多个类别绑定属性 if (flag == "other") { DataTable dt_good = bll.GetList(0, " id in (select good_id from td_property_good where property_value_id in ( select id from td_property_value where value like '%" + keyword + "%')) or id in (select good_id from td_tag_good where tag_id in( select id from td_tag where title like '%" + keyword + "%')) or id in (select good_id from td_alias_good where alias_id in( select id from td_alias where title like '%" + keyword + "%'))or title like '%" + keyword + "%' ", "sort_id asc,add_time desc").Tables[0]; DataTable dt_category = new DataTable(); dt_category.Columns.Add("id"); dt_category.Columns.Add("title"); BLL.article_category bll_category = new BLL.article_category(); Model.article_category model_category; string category_ids = ","; foreach (DataRow dr in dt_good.Rows) { if (category_ids.IndexOf("," + dr["category_id"].ToString() + ",") <= -1) { category_ids += dr["category_id"].ToString() + ","; model_category = bll_category.GetModel(Convert.ToInt32(dr["category_id"])); if (model_category != null) { DataRow new_dr = dt_category.NewRow(); new_dr["id"] = model_category.id; new_dr["title"] = model_category.title; dt_category.Rows.Add(new_dr); } } } if (dt_category != null && dt_category.Rows.Count > 0) { dt_category.TableName = "dt_category"; ds.Tables.Add(dt_category.Copy()); } if (!string.IsNullOrEmpty(category_ids.Trim(','))) { DataTable dt_property = new DataTable(); dt_property.Columns.Add("id"); dt_property.Columns.Add("title"); dt_property.Columns.Add("parent_id"); dt_property.TableName = "dt_property"; BLL.property bll_property = new BLL.property(); DataTable old_dt_property = bll_property.GetList(0, "category_id in (" + category_ids.Substring(1, category_ids.Length - 2) + ")", "add_time desc").Tables[0]; foreach (DataRow dr in old_dt_property.Rows) { DataRow new_dr = dt_property.NewRow(); new_dr["id"] = 0; new_dr["title"] = dr["title"]; new_dr["parent_id"] = 0; dt_property.Rows.Add(new_dr); BLL.property_value bll_value = new BLL.property_value(); DataTable dt_property_value = bll_value.GetList(0, "property_id=" + dr["id"].ToString(), "add_time desc").Tables[0]; foreach (DataRow dr_value in dt_property_value.Rows) { DataRow new_dr_value = dt_property.NewRow(); new_dr_value["id"] = dr_value["id"]; new_dr_value["title"] = dr_value["value"]; new_dr_value["parent_id"] = dr["id"]; dt_property.Rows.Add(new_dr_value); } } if (dt_property != null && dt_property.Rows.Count > 0) { ds.Tables.Add(dt_property.Copy()); } } } DataTable dt_page = new DataTable(); dt_page.Columns.Add("page"); dt_page.TableName = "dt_page"; BasePage _basepage = new BasePage();//(page, pagesize, category, property, order, keyword, flag) DataRow dr_page = dt_page.NewRow(); dr_page["page"] = myJson.String2Json(_basepage.get_page_links(pagesize, page, totalcount, "javascript:get_good_list(__id__,12,'" + category + "','" + property + "','" + order + "','" + keyword + "','" + flag + "')")); dt_page.Rows.Add(dr_page); if (dt_page != null && dt_page.Rows.Count > 0) { ds.Tables.Add(dt_page); } if (ds != null && ds.Tables.Count > 0) { context.Response.Write(myJson.getJson(ds)); return; } else { context.Response.Write("Null"); return; } }
private void get_productdate_page(HttpContext context) { try { int category = DTRequest.GetFormInt("category", 0); string keyword = DTRequest.GetFormString("keyword"); int propty = DTRequest.GetFormInt("propty", 0); int page = DTRequest.GetFormInt("page", 1); int pagesize = DTRequest.GetFormInt("pagesize", 8); string _orderby = "sort_id asc,add_time desc"; int _recordCount = 0; string pagelist = ""; BLL.article bll = new BLL.article(); string sqlwhere = ""; if (keyword != "" && keyword.Length > 0 && DTcms.Common.Utils.IsSafeSqlString(keyword)) { sqlwhere = " id in (select good_id from td_property_good where property_value_id in ( select id from td_property_value where value like '%"+keyword+"%')) or id in (select good_id from td_tag_good where tag_id in( select id from td_tag where title like '%"+keyword+"%')) or id in (select good_id from td_alias_good where alias_id in( select id from td_alias where title like '%"+keyword+"%'))or title like '%"+keyword+"%'"; if (propty > 0)//属性筛选 { sqlwhere += " and id in (select distinct good_id from dbo.td_property_good where property_value_id in(" + propty + "))"; } } else { if (propty > 0)//属性筛选 { sqlwhere = "id in (select distinct good_id from dbo.td_property_good where property_value_id in(" + propty + "))"; if (keyword != "" && keyword.Length > 0 && DTcms.Common.Utils.IsSafeSqlString(keyword)) { sqlwhere += " and id in select good_id from td_property_good where property_value_id in ( select id from td_property_value where value like '%" + keyword + "%'))orid in (select good_id from td_tag_good where tag_id in( select id from td_tag where title like '%" + keyword + "%'))or id in (select good_id from td_alias_good where alias_id in( select id from td_alias where title like '%" + keyword + "%'))or title like '%" + keyword + "%'"; } } } //DataSet ds = bll.get_article_list(,pagesize, page, "*", _where + "and attr1='1' and id in", _orderby, out _recordCount); DataSet ds = bll.GetList("goods", category, pagesize, page, sqlwhere, _orderby, out _recordCount); DataTable dt = ds.Tables[0]; BasePage _basepage = new BasePage(); if (keyword.Length<=0) { pagelist = _basepage.get_page_links(pagesize, page, _recordCount, "javascript:getpagedata(''," + propty + "," + category + ",__id__);"); } else { pagelist = _basepage.get_page_links(pagesize, page, _recordCount, "javascript:getpagedata(" + keyword + "," + propty + "," + category + ",__id__);"); } StringBuilder strhtml = new StringBuilder(); foreach (DataRow dr in dt.Rows) { strhtml.Append("<li>"); strhtml.Append("<div class=\"Procurement_list_li_top\">"); strhtml.Append("<input type=\"checkbox\" class=\"select_buy\" name=\"computer\" /></div>"); strhtml.Append("<div class=\"img_describe\">"); strhtml.Append("<a href=\"/good_show.aspx?id="+dr["id"].ToString()+"\"><img src=\"" + dr["img_url"].ToString() + "\" width=\"235\" height=\"229\" />"); strhtml.Append("" + dr["title"] + " " + get_category_title(int.Parse(dr["category_id"].ToString()), "") + " 红色 </a> </div>"); strhtml.Append("<span><strong>¥" + dr["sell_price"] + "</strong></span>"); strhtml.Append("<div class=\"Procurement_list_li_bottom\">"); strhtml.Append("<img class=\"reduce_btn\" src=\"../../../../templates/ql/images/reduce.jpg\" width=\"14\" height=\"14\" />"); strhtml.Append("<input type=\"text\" id=\"inputCount\" value=\"1\" name=\"\" />"); strhtml.Append("<img class=\"add_btn\" src=\"../../../../templates/ql/images/add.jpg\" width=\"14\" height=\"14\" /><a href=\"/good_show.aspx?id="+dr["id"].ToString()+"\" class=\"enter_shoppingcar\">进购物车</a>"); strhtml.Append("<a href=\"javascript:;\" onclick=\"Submit4('" + dr["id"].ToString() + "')\">收藏</a></div>"); strhtml.Append("</li>"); } context.Response.Write("{ \"info\":\"获取数据成功!\", \"status\":\"1\" ,\"html\":\"" + myJson.String2Json(strhtml.ToString()) + "\",\"pagelist\":\"" + myJson.String2Json(pagelist) + "\"}"); return; } catch (Exception ex) { context.Response.Write("{ \"info\":\"获取数据失败!\", \"status\":\"0\" }"); return; } }