var t = function(t) { return t && t.__esModule ? t : { default: t }; }(require("../../../utils/LoadMore.js")), ut = require("../../../utils/util.js"), a = getApp(), e = new t.default(), rq = a.request, oo = a.globalData.setting; Page({ data: { url: a.globalData.setting.imghost, resourceUrl: a.globalData.setting.resourceUrl, currentPage: 1, requestData: null, allData: null, openFilterModal: !1, openSearchModal: !1, baseUrl: "/api/weshop/goods/page?1=1", requestUrl: "", //hotWords: [ [ "手机", "小米", "iphone" ], [ "三星", "华为", "冰箱" ] ] hotWords: null, tabname: "sort", //排序的字段 adname: "asc", //升降的字段 rq_data:null, searchRecord: [], keyword: '', }, onLoad: function(t) { this.data.rq_data=t; //接受有没有导购的参数 var first_leader=t.first_leader; if(first_leader){ getApp().globalData.first_leader=first_leader; //调用接口判断是不是会员 getApp().request.promiseGet("/api/weshop/shoppingGuide/get/"+oo.stoid+"/"+first_leader,{}).then(res=>{ if(res.data.code==0){ getApp().globalData.guide_id=res.data.data.id; } }) } var th=this; a.getConfig2(function(rs){ var arr=new Array(),arr2=new Array(); if (rs.hot_keywords != null && ut.trim(rs.hot_keywords)!="" ){ var arr1 = rs.hot_keywords.split('|'); for (var i = 0; i < arr1.length;i++){ if(i%5==0 && i!=0){ arr.push(arr2); arr2=[]; }else{ arr2.push(arr1[i]); } } if (arr2.length > 0) arr.push(arr2); th.setData({ hotWords: arr}); } //计算等级价相关 var swithc_list=rs.switch_list; var sw_arr=JSON.parse(swithc_list); //---如果后台又开等级卡的开关--- if(sw_arr.rank_switch && sw_arr.rank_switch=="2"){ th.setData({rank_switch:true}); var user=getApp().globalData.userInfo; var ti=setInterval(function(){ if(!user) return false; clearInterval(ti); //---回调卡的列表--- th.getPlusCardType(function(ob){ th.setData({card_list:ob.card_list}); if(user.card_field ){ var str = user['card_expiredate'].replace(/-/g, '/'); var end = new Date(str); end = Date.parse(end) / 1000; var now = ut.gettimestamp(); //--- 判断是等级会员,且在有效期范围内 --- if(user.card_field && now7) card_name=card_name.substring(0,8); th.setData({card_field:user.card_field,card_name:card_name,card_list:ob.card_list}); } } }) },500) } }) e.init(this, "", "requestData"); var url = this.data.baseUrl; //扫一扫过来,显示搜索的内容 var s_key = t.s_key; if (s_key){ this.search(s_key); this.openSearchModal(); return; } if (0 != t.brand_id && t.brand_id!=undefined){ url += "&brand_id=" + t.brand_id;} if (0 != t.nation_id && t.nation_id!=undefined) { url += "&nation_id=" + t.nation_id;} if (0 != t.max_price && t.max_price!=undefined) { url += "&min_pirce=" + t.min_pirce + "&max_price=" + t.max_price;} if (url != this.data.baseUrl) return this.requestSearch(url); this.openSearchModal(); // 获取历史搜索记录 this.getHistorySearch(); }, changeTab: function(t) { var ord = t.currentTarget.dataset.href; var ad = t.currentTarget.dataset.ad; var url = this.data.requestUrl; if (this.data.tabname != ord) { this.setData({ tabname: ord, adname: "desc" }); } else { ad = ad == "desc" ? "asc" : "desc"; this.setData({ adname: ad }); } this.resetData(), this.requestSearch(url); }, //-----------真的调用地址进行搜索------------ requestSearch: function(t) { var a = this; if(getApp().globalData.userInfo){ t += "&user_id=" + getApp().globalData.userInfo.user_id; } this.data.requestUrl = t, //t += "&orderField=" + a.data.tabname; //t += "&orderType=" + a.data.adname; //t += "&page=" + a.data.currentPage, e.request(t, function(t) { a.data.currentPage++ , null == a.data.allData && (a.data.allData = t.data.data.pageData), a.closeSearchModal(); }, null, { is_mainshow: 1, isonsale: 1, store_id: oo.stoid, orderField: a.data.tabname, orderType: a.data.adname, page: a.data.currentPage} ); }, onReachBottom: function() { this.data.openSearchModal || e.canloadMore() && this.requestSearch(this.data.requestUrl); }, openFilterModal: function() { this.setData({ openFilterModal: !0 }); }, closeFilterModal: function() { this.setData({ openFilterModal: !1 }); }, filterGoods: function(t) { this.resetData(), this.requestSearch(t.currentTarget.dataset.href), this.closeFilterModal(); }, resetData: function() { e.resetConfig(), this.data.requestData = null, this.data.currentPage = 1; }, //---回复最初的设置---显示全部分类-- restoreData: function() { this.setData({ requestData: this.data.allData, }); this.data.currentPage=2; }, openSearchModal: function() { this.setData({ openSearchModal: !0 }); }, closeSearchModal: function() { this.setData({ openSearchModal: !1 }); }, submitSearch: function(t) { console.log(111); this.search(t.detail.value.word); }, //热搜关键字 searchHotWord: function(t) { this.historyRecord(); this.search(t.currentTarget.dataset.word); }, //-----点击搜索按钮---- search: function(t) { if ("string" != typeof t || "" == t) return a.showWarning("请输入搜索关键词"); this.data.key_str=t; this.historyRecord(); this.resetData(), this.requestSearch(this.data.baseUrl + "&key_str=" + encodeURIComponent(t)); }, //---------分享配置-------- onShareAppMessage: function (e) { var curPage=this; var pagePath = curPage.route; //当前页面url if (pagePath.indexOf('/') != 0) { pagePath = '/' + pagePath; } if(this.data.key_str) { pagePath += "?s_key=" + this.data.key_str; } if(getApp().globalData.user_id){ if(pagePath.indexOf("?")>0){ pagePath+="&first_leader="+getApp().globalData.user_id; }else{ pagePath+="?first_leader="+getApp().globalData.user_id; } } console.log("11-11"+pagePath); return { title: "商品搜索", path:pagePath, } }, //---------图片失败,默认图片-------- bind_bnerr: function (e) { var _errImg = e.target.dataset.errorimg; var _errObj = {}; _errObj[_errImg] = this.data.url+ "/miniapp/images/default_g_img.gif"; this.setData(_errObj) //注意这里的赋值方式,只是将数据列表中的此项图片路径值替换掉 ; }, //--- 获取卡类列表 --- getPlusCardType: function (func) { var storid = oo.stoid; var th = this; getApp().request.promiseGet("/api/weshop/plus/vip/mem/bership/list?" + "storeId=" + storid, {}).then(res => { var plusCard = res.data.data; var arr = [1219, 2089, 3031]; var new_arr = new Array(); var card_name_map=new Map(); var user = getApp().globalData.userInfo; for (var i = 0; i < plusCard.length; i++) { if ((!user || user.card_field==null || user.card_field=="") && (plusCard[i].IsStopBuy==true)) { continue; } var name="card"+plusCard[i].CorrPrice.toLowerCase(); card_name_map.set(name,plusCard[i].CardName); new_arr.push(plusCard[i]); } var ob={"card_list":new_arr,"name_map":card_name_map}; func(ob); }) }, getInput(e) { this.setData({ keyword: e.detail.value }); }, historyRecord() { let self = this; let keyword = this.data.key_str; let searchRecord = this.data.searchRecord; if(keyword) { if(searchRecord.indexOf(keyword) > -1) { // 已经存在该值 return; } else { if(searchRecord.length >= 10) { searchRecord.pop(); // 删除最早的一条记录 }; searchRecord.unshift(keyword); // // 将历史记录添加到缓存中 wx.setStorage({ key: 'searchRecord', data: searchRecord, success: function(res) { self.setData({ searchRecord, }) } }) }; }; }, getHistorySearch() { this.setData({ searchRecord: wx.getStorageSync('searchRecord') || [] //若无存储则为空 }); }, clearSearchRecord() { wx.clearStorageSync('searchRecord'); this.setData({ searchRecord: [] }); }, });