From 0057bcd28e8f1c9d6f6fb29b79517d5439752a28 Mon Sep 17 00:00:00 2001 From: ghusermoon <2673031505@qq.com> Date: Wed, 5 Aug 2020 17:38:11 +0800 Subject: [PATCH] store 8.5 --- common/api/shop.js | 17 ++- common/api/user.js | 5 +- components/shop/group/index.vue | 6 +- components/shop/list/index.vue | 18 ++- pageB/sdetails/index.vue | 11 +- pageC/cart/ConfirmOrder.vue | 5 +- pageC/merchant/classifyGoods.vue | 215 +++++++++++++++++++++++++++++++ pageC/merchant/details.vue | 19 +-- pageC/merchant/goods.vue | 200 ++++++++++++++++++++++++++++ pageC/merchant/index.vue | 136 +++++++++++-------- pageC/merchant/storeClassify.vue | 88 +++++++++++++ pageE/mine/StoreCollection.vue | 14 +- pages.json | 47 +++++-- pages/mine/index.vue | 8 +- static/fonts/more.ttf | Bin 0 -> 1664 bytes static/image/shop/10.png | Bin 0 -> 1931 bytes static/image/shop/11.png | Bin 0 -> 1764 bytes static/image/shop/12.png | Bin 0 -> 2003 bytes static/image/shop/13.png | Bin 0 -> 2144 bytes static/image/shop/8.png | Bin 0 -> 1251 bytes static/image/shop/9.png | Bin 0 -> 2030 bytes 21 files changed, 688 insertions(+), 101 deletions(-) create mode 100644 pageC/merchant/classifyGoods.vue create mode 100644 pageC/merchant/goods.vue create mode 100644 pageC/merchant/storeClassify.vue create mode 100644 static/fonts/more.ttf create mode 100644 static/image/shop/10.png create mode 100644 static/image/shop/11.png create mode 100644 static/image/shop/12.png create mode 100644 static/image/shop/13.png create mode 100644 static/image/shop/8.png create mode 100644 static/image/shop/9.png diff --git a/common/api/shop.js b/common/api/shop.js index 9771263..2db23d5 100644 --- a/common/api/shop.js +++ b/common/api/shop.js @@ -173,10 +173,17 @@ export default { goods_id: id }); }, - getStoreGoodsList({ id, page = 0}){ + getStoreGoodsList({ id, page, order, gc_id }){ return vm.$u.post('Store/getStoreGoodsList', { id: id, - page:page + page: page, + order: order, + gc_id: gc_id, + }); + }, + getStoreClassifyList({ id }) { + return vm.$u.post('Store/getStoreClassifyList', { + id: id }); }, getStoreImgVideoList({id}){ @@ -306,7 +313,11 @@ export default { // 达人上架商品 goodsShelves({live_id}){ return vm.$u.post('Specialci/goodsShelves',{live_id}) - } + }, + // + addFavoriteStore({ id }) { + return vm.$u.post('member/addFavoriteStore',{ fid: id }) + }, } } diff --git a/common/api/user.js b/common/api/user.js index 2eafe9e..19d6fd8 100644 --- a/common/api/user.js +++ b/common/api/user.js @@ -175,9 +175,10 @@ export default { return vm.$u.post('Member/getFavoritesList', params); }, // 取消收藏(商品/店铺) - removeFavorite({ id }) { + removeFavorite({ id, type }) { return vm.$u.post('Member/removeFavorite', { - id: id, + fav_id: id, + type: type, }); }, // 设置-用户信息 diff --git a/components/shop/group/index.vue b/components/shop/group/index.vue index 5c69287..f954b6e 100644 --- a/components/shop/group/index.vue +++ b/components/shop/group/index.vue @@ -7,7 +7,7 @@ - + @@ -97,8 +97,8 @@ export default { box-sizing: border-box; padding: 0 30rpx; display: flex; - &:not(:nth-child(3n)) { - > view { + > view { + &:not(:nth-child(3n)) { margin-right: 20rpx; } } diff --git a/components/shop/list/index.vue b/components/shop/list/index.vue index 35f2e4f..b301b7b 100644 --- a/components/shop/list/index.vue +++ b/components/shop/list/index.vue @@ -2,7 +2,7 @@ 商品推荐 - + @@ -39,6 +39,7 @@ export default { watch: { current(index) { this.page = 1; + this.goodsList = []; const id = this.classifyList[index].gc_id; this.getGoodsRecommend({gc_id: id}); } @@ -68,7 +69,7 @@ export default { this.page--; }) }, - getGoodsClassRecommend(gc_id) { + getGoodsClassRecommend() { this.$u.api.getGoodsClassRecommend().then(res => { if (res.errCode == 0) { // 初始化 current @@ -82,6 +83,7 @@ export default { page: page, gc_id: gc_id, }) + // this.swiperCurrent = this.current; if (res.errCode == 0) { this.timer = true; if(reload) this.goodsList = res.data.goodsList; @@ -93,13 +95,14 @@ export default { }, setSwiperHeight() { // height: 230px, margin-bottom: 13 - // const height = Math.ceil(this.goodsList.length / 2) * (510 + 26); - // this.swiperHeight = height == 0 ? '230rpx' : height + 'rpx'; - this.swiperHeight = Math.ceil(this.goodsList.length / 2) * (270 + 13) + 'px'; + const height = Math.ceil(this.goodsList.length / 2) * (540 + 26); + this.swiperHeight = height == 0 ? '230rpx' : height + 'rpx'; + // this.swiperHeight = Math.ceil(this.goodsList.length / 2) * (270 + 13) + 'px'; }, // tabs通知swiper切换 tabsChange(index) { - this.swiperCurrent = index; + this.current = index; + // this.getGoodsRecommend({ gc_id: this.classifyList[this.current].gc_id }); }, // swiper-item左右移动,通知tabs的滑块跟随移动 transition(e) { @@ -111,8 +114,9 @@ export default { animationfinish(e) { let current = e.detail.current; this.$refs.uTabs.setFinishCurrent(current); - this.swiperCurrent = current; this.current = current; + this.swiperCurrent = current; + // this.getGoodsRecommend({ gc_id: this.classifyList[this.current].gc_id }); }, } } diff --git a/pageB/sdetails/index.vue b/pageB/sdetails/index.vue index acf6c69..76ceb0b 100644 --- a/pageB/sdetails/index.vue +++ b/pageB/sdetails/index.vue @@ -135,7 +135,7 @@ - + 店铺 @@ -155,7 +155,7 @@ - + 店铺 @@ -183,7 +183,8 @@ export default { data() { return { list: [], // 轮播图列表 - goodsInfo: {}, // 商品信息 + goodsInfo: {}, // 商品信息 + storeInfo: {}, glist: [], // 规格列表 id: 0, // 商品id/秒杀id/拼团 id type: '', // 商品类型 商品详情 1普通 2拼团 3秒杀 4优惠券 @@ -311,6 +312,7 @@ export default { if (res.errCode == 0) { this.evaluate = res.data.goods_evaluate_info; this.goodsInfo = res.data.goods; + this.storeInfo = res.data.store; this.setSwiperList(res.data.goods_image); this.glist = res.data.spec_list; // console.log(this.goodsInfo.mobile_body); @@ -452,6 +454,9 @@ export default { title: title }); }, + toOthersPage(url) { + this.$u.route(url); + }, viewComment() { this.$u.route({ url: 'pageB/comment/index', diff --git a/pageC/cart/ConfirmOrder.vue b/pageC/cart/ConfirmOrder.vue index de275a3..5437805 100644 --- a/pageC/cart/ConfirmOrder.vue +++ b/pageC/cart/ConfirmOrder.vue @@ -200,11 +200,13 @@ export default { if(!this.debounce) return; this.debounce = false; if(this.orderType == 2) { + // this.sendOrder(0); this.withImmediate(); } else if(this.orderType == 1) { this.sendOrder(0); + } else { + this.sendOrder(1); } - else this.sendOrder(1); }, // @params {Number} ifcart 是否是购物车商品 sendOrder(ifcart) { @@ -254,6 +256,7 @@ export default { // console.log(params); this.$u.api.sendOrder(params).then(res => { if(res.errCode == 0) { + // this.withImmediate(); this.$u.route({ type: 'redirect', url: '/pageC/cart/cashier', diff --git a/pageC/merchant/classifyGoods.vue b/pageC/merchant/classifyGoods.vue new file mode 100644 index 0000000..469cf36 --- /dev/null +++ b/pageC/merchant/classifyGoods.vue @@ -0,0 +1,215 @@ + + + \ No newline at end of file diff --git a/pageC/merchant/details.vue b/pageC/merchant/details.vue index dd9f66a..e8514c2 100644 --- a/pageC/merchant/details.vue +++ b/pageC/merchant/details.vue @@ -3,14 +3,14 @@ {{info.store_name}} - 创建时间:{{store_addtime|date}} | {{info.live_store_address}} + 创建时间:{{ info.store_addtime | date('yyyy年mm月dd日') }} | {{ info.live_store_address || '暂无地址' }} {{info.store_collect}} 粉丝数 - 23435 + {{ info.evaluatecount }} 评价 @@ -22,9 +22,9 @@ 工商执照 - + - + @@ -37,9 +37,9 @@ export default { info:{} } }, - onLoad(){ - this.$u.api.getStoreInfo({id:1}).then((res)=>{ - console.log(res) + onLoad(option){ + this.$u.api.getStoreInfo({id: option.id}).then((res)=>{ + // console.log(res) this.info = res.data }) } @@ -113,11 +113,6 @@ export default { font-weight: 500; color: rgba(51,51,51,1); } - > image { - width: 24rpx; - height: 14rpx; - background-color: aqua; - } } .image-list { background-color: #ffffff; diff --git a/pageC/merchant/goods.vue b/pageC/merchant/goods.vue new file mode 100644 index 0000000..423e43c --- /dev/null +++ b/pageC/merchant/goods.vue @@ -0,0 +1,200 @@ + + + \ No newline at end of file diff --git a/pageC/merchant/index.vue b/pageC/merchant/index.vue index 798eaa6..5f3fc26 100644 --- a/pageC/merchant/index.vue +++ b/pageC/merchant/index.vue @@ -1,6 +1,6 @@ \ No newline at end of file diff --git a/pageC/merchant/storeClassify.vue b/pageC/merchant/storeClassify.vue new file mode 100644 index 0000000..fd62b9d --- /dev/null +++ b/pageC/merchant/storeClassify.vue @@ -0,0 +1,88 @@ + + + \ No newline at end of file diff --git a/pageE/mine/StoreCollection.vue b/pageE/mine/StoreCollection.vue index 29818d0..fd796ca 100644 --- a/pageE/mine/StoreCollection.vue +++ b/pageE/mine/StoreCollection.vue @@ -3,13 +3,13 @@ - + @@ -46,12 +46,15 @@ export default { getStoreFavoritesList() { this.$u.api.getFavoritesList({ type: 2 // 店铺 type: 2 + }).then(res => { + this.list = res.data; }) }, removeFavorite(id) { console.log(id); this.$u.api.removeFavorite({ - id: id + id: id, + type: 'store' }).then(res => { this.$u.toast(res.message); if(res.errCode == 0) { @@ -59,6 +62,11 @@ export default { } }) }, + toDetailsPage(id) { + this.$u.route('pageC/merchant/index', { + id: id + }); + }, open(index) { // 先将正在被操作的swipeAction标记为打开状态,否则由于props的特性限制, // 原本为'false',再次设置为'false'会无效 diff --git a/pages.json b/pages.json index 99adf7c..b26be16 100644 --- a/pages.json +++ b/pages.json @@ -301,23 +301,28 @@ { "path": "merchant/index", "style": { + "enablePullDownRefresh": true, "app-plus": { "titleSize": "36px", "titleNView": { "titleColor": "#333333", "backgroundColor": "rgba(255,255,255,0)", "buttons": [ - { - "type":"none", - "text":"...", - "float":"right", - "fontSize":"16" - }, + // { + // "type":"none", + // "text":"\ue62b", + // "float":"right", + // "fontSize":"20", + // "fontSrc": "/static/fonts/more.ttf", + // "color": "#FFFFFF" + // }, { "type":"none", - "text":"\ue582", + "text":"\ue636", "float":"right", - "fontSize":"16" + "fontSize":"22", + "fontSrc": "/static/fonts/cart.ttf", + "color": "#FFFFFF" } ], "searchInput": { @@ -345,6 +350,32 @@ } } }, + { + "path": "merchant/storeClassify", + "style": { + "navigationBarTitleText": "商品分类", + "app-plus": { + "titleSize": "36px", + "titleNView": { + "titleColor": "#333333", + "backgroundColor": "#FFFFFF" + } + } + } + }, + { + "path": "merchant/classifyGoods", + "style": { + "navigationBarTitleText": "", + "app-plus": { + "titleSize": "36px", + "titleNView": { + "titleColor": "#333333", + "backgroundColor": "#FFFFFF" + } + } + } + }, { "path": "cart/ConfirmOrder", "style": { diff --git a/pages/mine/index.vue b/pages/mine/index.vue index 8c5f496..cb68eba 100644 --- a/pages/mine/index.vue +++ b/pages/mine/index.vue @@ -22,8 +22,8 @@ + @@ -248,8 +248,8 @@ export default { box-sizing: border-box; padding: 0 30rpx; display: flex; - justify-content: space-around; - // justify-content: flex-start; + // justify-content: space-between; + justify-content: flex-start; > view { margin-right: 80rpx; text-align: center; diff --git a/static/fonts/more.ttf b/static/fonts/more.ttf new file mode 100644 index 0000000000000000000000000000000000000000..025b5816686188e4081a478cae00d7c86a17a60b GIT binary patch literal 1664 zcmd^9&ubGw7=5#wv^A|&OzJOeS=y>4DQO!;L_~|$MzCnHwI@N=Wb;F^*=4g83km@# z=t=(tFXBx>@FaTkVtW%WYVlMLB6tyR);F`WD%JnM4LkGR``&!>ebebe0O&>=CdP|% zmrgzT@$?HIj#52!VQ#E&{K46N@|)xfCD-;p%{|MJzvt^$8%vc#Z@<3<%z4J|)Ev9K z=f%TE#2@({sZr=$Gj9_==Q~_;!y8=$T>FMYSHmmWn3CL_;n3mQH+-=JhZ)~ZZZ&P! zIWhm^7USH{aDA^8u6$neX_fv7uy(V((Z=NjDZo*7^XFqIh3d!R>a8o=j(wn2ZW4 zLS>BV6x{VblISw-8Y_(7i)Qf|1;MojlBV8m(==N-Q^w?aZao+EZ?@5jpZ}udzveSmOjS@3zX4 zO#R4xO@fb;+uiyk^B~hN&1_bgGLDJBVpKFE~M~?lrB6{CF%C zou(7Sd0N-2g)ppGmB4eYX(n_U4bSoe@0wEz^R+PakByDVjijD0c`pBXPP1(XHbRbN zSh$KMj&+pap^1tbL;5x=7wNBJ5e=>l{)%pPFVG#JMW4)S@#B}r_+P7vbTyT8b3H9w z=WYd78L}peZ@^40(X_76VI>V>3%-h7W1bS-dDPS@AIC7pU))jb&#O*dc~RnTr~FR- T>oJ7Ezh`IFX;#aNo^t#IdG*#1 literal 0 HcmV?d00001 diff --git a/static/image/shop/10.png b/static/image/shop/10.png new file mode 100644 index 0000000000000000000000000000000000000000..8d35be753df753e4f6b684716a9a000a0bf33094 GIT binary patch literal 1931 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 KRG*{W`qMuto%%}v literal 0 HcmV?d00001 diff --git a/static/image/shop/12.png b/static/image/shop/12.png new file mode 100644 index 0000000000000000000000000000000000000000..982b65c4e71b41c7c44330dba02ce8cee9faa174 GIT binary patch literal 2003 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 KtR%Bj7ybq|Jf2Jd literal 0 HcmV?d00001 -- 2.45.2