Commit 6356e780a42a02d57c1a3bb82770f59bb09e338a
1 parent
3e245bf3
门店搜索
Showing
5 changed files
with
210 additions
and
12 deletions
packageC/pages/presell/goodsInfo/goodsInfo.js
| ... | ... | @@ -257,6 +257,8 @@ Page({ | 
| 257 | 257 | hiddenCS: true, | 
| 258 | 258 | |
| 259 | 259 | is_retail_price: 0, | 
| 260 | + keyword:'', //门店搜索 | |
| 261 | + sec_i:-1,//选中分类门店 下标 | |
| 260 | 262 | }, | 
| 261 | 263 | |
| 262 | 264 | //------初始化加载---------- | 
| ... | ... | @@ -2009,7 +2011,93 @@ Page({ | 
| 2009 | 2011 | }, 200) | 
| 2010 | 2012 | |
| 2011 | 2013 | }, | 
| 2014 | + //获取搜索门店输入的值 | |
| 2015 | + input_store: function(e) { | |
| 2016 | + this.setData({ | |
| 2017 | + keyword: e.detail.value | |
| 2018 | + }) | |
| 2019 | + }, | |
| 2020 | + //搜索门店 | |
| 2021 | + searchfn(){ | |
| 2022 | + let choice_sort_store = this.data.choice_sort_store | |
| 2023 | + if (choice_sort_store==0) { //全局搜索 | |
| 2024 | + let all_pick_list = this.data.all_pick_list | |
| 2025 | + let def_pickpu_list = this.data.def_pickpu_list | |
| 2026 | + let keyword = this.data.keyword | |
| 2027 | + if (keyword) { | |
| 2028 | + let arr=all_pick_list.filter( item =>{ | |
| 2029 | + let i = item.pickup_name.indexOf(keyword) | |
| 2030 | + if (i > -1) { | |
| 2031 | + return true | |
| 2032 | + }else{ | |
| 2033 | + return false | |
| 2034 | + } | |
| 2035 | + }) | |
| 2036 | + if (arr && arr.length>0) { | |
| 2037 | + if(this.data.is_show_sto_cat==1){ | |
| 2038 | + this.setData({ | |
| 2039 | + def_pickpu_list:arr | |
| 2040 | + }) | |
| 2041 | + }else{ | |
| 2042 | + this.setData({ | |
| 2043 | + only_pk:arr | |
| 2044 | + }) | |
| 2045 | + } | |
| 2046 | + }else{ | |
| 2047 | + wx.showToast({ | |
| 2048 | + title: '没有搜索到门店', | |
| 2049 | + icon: 'none', | |
| 2050 | + duration: 2000 | |
| 2051 | + }) | |
| 2052 | + } | |
| 2053 | + }else{ | |
| 2054 | + if (this.data.is_show_sto_cat==1) { | |
| 2055 | + this.setData({ | |
| 2056 | + def_pickpu_list:all_pick_list.slice(0,10) | |
| 2057 | + }) | |
| 2058 | + }else{ | |
| 2059 | + this.setData({ | |
| 2060 | + only_pk:all_pick_list | |
| 2061 | + }) | |
| 2062 | + } | |
| 2063 | + | |
| 2064 | + } | |
| 2065 | + }else{ //分类下搜索 | |
| 2066 | + let sec_i=this.data.sec_i | |
| 2067 | + let all_sto = this.data.all_sto | |
| 2068 | + let sec_sto= this.data.sec_sto | |
| 2069 | + let sec_arr = sec_sto.s_arr | |
| 2070 | + let keyword = this.data.keyword | |
| 2071 | + let text='sec_sto.s_arr' | |
| 2072 | + if (keyword) { | |
| 2073 | + let arr=sec_arr.filter( item =>{ | |
| 2074 | + let i = item.pickup_name.indexOf(keyword) | |
| 2075 | + if (i > -1) { | |
| 2076 | + return true | |
| 2077 | + }else{ | |
| 2078 | + return false | |
| 2079 | + } | |
| 2080 | + }) | |
| 2081 | + if (arr && arr.length>0) { | |
| 2082 | + this.setData({ | |
| 2083 | + [text]:arr | |
| 2084 | + }) | |
| 2085 | + }else{ | |
| 2086 | + wx.showToast({ | |
| 2087 | + title: '没有搜索到门店', | |
| 2088 | + icon: 'none', | |
| 2089 | + duration: 2000 | |
| 2090 | + }) | |
| 2091 | + } | |
| 2092 | + }else{ | |
| 2093 | + this.setData({ | |
| 2094 | + [text]:all_sto[sec_i].s_arr | |
| 2095 | + }) | |
| 2096 | + } | |
| 2097 | + | |
| 2012 | 2098 | |
| 2099 | + } | |
| 2100 | + }, | |
| 2013 | 2101 | |
| 2014 | 2102 | //------------处理门店--------------- | 
| 2015 | 2103 | deal_pickup(e) { | 
| ... | ... | @@ -3886,6 +3974,7 @@ Page({ | 
| 3886 | 3974 | sort_store: 0, | 
| 3887 | 3975 | choice_sort_store: 1, | 
| 3888 | 3976 | sec_sto: item, | 
| 3977 | + sec_i:index, | |
| 3889 | 3978 | sec_pick_index: 0 | 
| 3890 | 3979 | }); | 
| 3891 | 3980 | }, | ... | ... | 
packageC/pages/presell/goodsInfo/goodsInfo.wxml
| ... | ... | @@ -831,6 +831,12 @@ | 
| 831 | 831 | </view> | 
| 832 | 832 | </view> | 
| 833 | 833 | </view> | 
| 834 | + <view class="searchbar flex-vertical-between storeListpadd"> | |
| 835 | + <input class="inputstore fs28" placeholder="输入要搜索的门店" value="{{keyword}}" placeholder-class="fs28" maxlength="16" bindinput="input_store" bindconfirm="searchfn" /> | |
| 836 | + <view class="search flex-center" bindtap="searchfn"> | |
| 837 | + <view class="fs28">搜索</view> | |
| 838 | + </view> | |
| 839 | + </view> | |
| 834 | 840 | <!-- 门店列表,最外层的门店列表,一开始 --> | 
| 835 | 841 | <view class="store-list"> | 
| 836 | 842 | <!-- 如果还没有点击更多门店的时候 --> | ... | ... | 
packageC/pages/presell/goodsInfo/goodsInfo.wxss
| ... | ... | @@ -2993,4 +2993,27 @@ button.custom-service::after{ | 
| 2993 | 2993 | top: -1000px; | 
| 2994 | 2994 | } | 
| 2995 | 2995 | |
| 2996 | +.searchbar { | |
| 2997 | + height: 95rpx; | |
| 2998 | + border-bottom: 2rpx solid rgb(238, 238, 238); | |
| 2999 | +} | |
| 3000 | +.storeListpadd { | |
| 3001 | + padding: 0rpx 31rpx; | |
| 3002 | +} | |
| 3003 | +.search { | |
| 3004 | + width: 125rpx; | |
| 3005 | + height: 45rpx; | |
| 3006 | + line-height: 45rpx; | |
| 3007 | + background-color: rgb(219, 27, 52); | |
| 3008 | + border-radius: 30rpx; | |
| 3009 | + color: rgb(255, 255, 255); | |
| 3010 | +} | |
| 3011 | +.inputstore { | |
| 3012 | + width: 510rpx; | |
| 3013 | + height: 43rpx; | |
| 3014 | + line-height: 43rpx; | |
| 3015 | + border-radius: 30rpx; | |
| 3016 | + border: 2rpx solid rgb(238, 238, 238); | |
| 3017 | + padding-left: 30rpx; | |
| 3018 | +} | |
| 2996 | 3019 | ... | ... | 
pages/goods/goodsInfo/goodsInfo.js
| ... | ... | @@ -269,6 +269,7 @@ Page({ | 
| 269 | 269 | base_nor_goods_id:0, | 
| 270 | 270 | user_pre_buynum:0, //用户优惠促销参与次数 | 
| 271 | 271 | keyword:'', //门店搜索 | 
| 272 | + sec_i:-1,//选中分类门店 下标 | |
| 272 | 273 | }, | 
| 273 | 274 | |
| 274 | 275 | //------初始化加载---------- | 
| ... | ... | @@ -3595,12 +3596,7 @@ Page({ | 
| 3595 | 3596 | }) | 
| 3596 | 3597 | |
| 3597 | 3598 | }, | 
| 3598 | - //获取搜索门店输入的值 | |
| 3599 | - input_store: function(e) { | |
| 3600 | - this.setData({ | |
| 3601 | - keyword: e.detail.value | |
| 3602 | - }) | |
| 3603 | - }, | |
| 3599 | + | |
| 3604 | 3600 | |
| 3605 | 3601 | |
| 3606 | 3602 | //---------拿出门店分类和门店------------ | 
| ... | ... | @@ -3650,10 +3646,7 @@ Page({ | 
| 3650 | 3646 | } | 
| 3651 | 3647 | clearInterval(timer_get); | 
| 3652 | 3648 | |
| 3653 | - //门店搜索关键字 | |
| 3654 | - if (th.data.keyword) { | |
| 3655 | - dd.keyword=th.data.keyword | |
| 3656 | - } | |
| 3649 | + | |
| 3657 | 3650 | |
| 3658 | 3651 | |
| 3659 | 3652 | //如果会员是有默认的门店话 | 
| ... | ... | @@ -3727,7 +3720,93 @@ Page({ | 
| 3727 | 3720 | }, 200) | 
| 3728 | 3721 | |
| 3729 | 3722 | }, | 
| 3723 | + //获取搜索门店输入的值 | |
| 3724 | + input_store: function(e) { | |
| 3725 | + this.setData({ | |
| 3726 | + keyword: e.detail.value | |
| 3727 | + }) | |
| 3728 | + }, | |
| 3729 | + //搜索门店 | |
| 3730 | + searchfn(){ | |
| 3731 | + let choice_sort_store = this.data.choice_sort_store | |
| 3732 | + if (choice_sort_store==0) { //全局搜索 | |
| 3733 | + let all_pick_list = this.data.all_pick_list | |
| 3734 | + let def_pickpu_list = this.data.def_pickpu_list | |
| 3735 | + let keyword = this.data.keyword | |
| 3736 | + if (keyword) { | |
| 3737 | + let arr=all_pick_list.filter( item =>{ | |
| 3738 | + let i = item.pickup_name.indexOf(keyword) | |
| 3739 | + if (i > -1) { | |
| 3740 | + return true | |
| 3741 | + }else{ | |
| 3742 | + return false | |
| 3743 | + } | |
| 3744 | + }) | |
| 3745 | + if (arr && arr.length>0) { | |
| 3746 | + if(this.data.is_show_sto_cat==1){ | |
| 3747 | + this.setData({ | |
| 3748 | + def_pickpu_list:arr | |
| 3749 | + }) | |
| 3750 | + }else{ | |
| 3751 | + this.setData({ | |
| 3752 | + only_pk:arr | |
| 3753 | + }) | |
| 3754 | + } | |
| 3755 | + }else{ | |
| 3756 | + wx.showToast({ | |
| 3757 | + title: '没有搜索到门店', | |
| 3758 | + icon: 'none', | |
| 3759 | + duration: 2000 | |
| 3760 | + }) | |
| 3761 | + } | |
| 3762 | + }else{ | |
| 3763 | + if (this.data.is_show_sto_cat==1) { | |
| 3764 | + this.setData({ | |
| 3765 | + def_pickpu_list:all_pick_list.slice(0,10) | |
| 3766 | + }) | |
| 3767 | + }else{ | |
| 3768 | + this.setData({ | |
| 3769 | + only_pk:all_pick_list | |
| 3770 | + }) | |
| 3771 | + } | |
| 3772 | + | |
| 3773 | + } | |
| 3774 | + }else{ //分类下搜索 | |
| 3775 | + let sec_i=this.data.sec_i | |
| 3776 | + let all_sto = this.data.all_sto | |
| 3777 | + let sec_sto= this.data.sec_sto | |
| 3778 | + let sec_arr = sec_sto.s_arr | |
| 3779 | + let keyword = this.data.keyword | |
| 3780 | + let text='sec_sto.s_arr' | |
| 3781 | + if (keyword) { | |
| 3782 | + let arr=sec_arr.filter( item =>{ | |
| 3783 | + let i = item.pickup_name.indexOf(keyword) | |
| 3784 | + if (i > -1) { | |
| 3785 | + return true | |
| 3786 | + }else{ | |
| 3787 | + return false | |
| 3788 | + } | |
| 3789 | + }) | |
| 3790 | + if (arr && arr.length>0) { | |
| 3791 | + this.setData({ | |
| 3792 | + [text]:arr | |
| 3793 | + }) | |
| 3794 | + }else{ | |
| 3795 | + wx.showToast({ | |
| 3796 | + title: '没有搜索到门店', | |
| 3797 | + icon: 'none', | |
| 3798 | + duration: 2000 | |
| 3799 | + }) | |
| 3800 | + } | |
| 3801 | + }else{ | |
| 3802 | + this.setData({ | |
| 3803 | + [text]:all_sto[sec_i].s_arr | |
| 3804 | + }) | |
| 3805 | + } | |
| 3806 | + | |
| 3730 | 3807 | |
| 3808 | + } | |
| 3809 | + }, | |
| 3731 | 3810 | |
| 3732 | 3811 | //------------处理门店--------------- | 
| 3733 | 3812 | deal_pickup(e) { | 
| ... | ... | @@ -6969,6 +7048,7 @@ Page({ | 
| 6969 | 7048 | sort_store: 0, | 
| 6970 | 7049 | choice_sort_store: 1, | 
| 6971 | 7050 | sec_sto: item, | 
| 7051 | + sec_i:index, | |
| 6972 | 7052 | sec_pick_index: 0 | 
| 6973 | 7053 | }); | 
| 6974 | 7054 | }, | ... | ... | 
pages/goods/goodsInfo/goodsInfo.wxml
| ... | ... | @@ -1601,8 +1601,8 @@ | 
| 1601 | 1601 | </view> | 
| 1602 | 1602 | </view> | 
| 1603 | 1603 | <view class="searchbar flex-vertical-between storeListpadd"> | 
| 1604 | - <input class="inputstore fs28" placeholder="{{keyword==''?'输入要搜索的门店':keyword}}" placeholder-class="fs28" maxlength="16" bindinput="input_store" bindconfirm="get_sto" /> | |
| 1605 | - <view class="search flex-center" bindtap="get_sto"> | |
| 1604 | + <input class="inputstore fs28" placeholder="输入要搜索的门店" value="{{keyword}}" placeholder-class="fs28" maxlength="16" bindinput="input_store" bindconfirm="searchfn" /> | |
| 1605 | + <view class="search flex-center" bindtap="searchfn"> | |
| 1606 | 1606 | <view class="fs28">搜索</view> | 
| 1607 | 1607 | </view> | 
| 1608 | 1608 | </view> | ... | ... |