From fb14fa911bde1ed360fe89a1c41d74b158db9ab5 Mon Sep 17 00:00:00 2001 From: xuxueyang <xuxy@fengyuntec.com> Date: 星期五, 09 八月 2024 15:26:28 +0800 Subject: [PATCH] update 花店样式等 --- pages/user/supplier-user.vue | 480 ++++++++++++++++++++++++++++++++++++++++++++++------------- 1 files changed, 372 insertions(+), 108 deletions(-) diff --git a/pages/user/supplier-user.vue b/pages/user/supplier-user.vue index a92ca40..c9f1c83 100644 --- a/pages/user/supplier-user.vue +++ b/pages/user/supplier-user.vue @@ -1,8 +1,8 @@ <template> <view class="main-container user-container"> <!-- <view> - 我的 - </view> --> + 我的 + </view> --> <!-- 背景图 --> <view class="top-bg img100 relative" :style="{'padding-top':(StatusBar)+'px','line-height':CustomBar+'rpx' }"> <image class="component-bg" @@ -16,39 +16,56 @@ <!-- v-if="currentInfo&&(currentInfo.id)" --> <view class="flex user-info"> <!-- 头像 --> - <image class="user-icon" v-if="!currentInfo.picture" src="../../static/imgs/home/home-shop-top-icon.png" - mode="aspectFit"></image> - <image class="user-icon" v-if="currentInfo.picture" :src="currentInfo.picture" mode="aspectFit"></image> - + <image class="user-icon" v-if=" + currentInfo.customerDTO&¤tInfo.customerDTO.cover + ||currentInfo.supplierDTO&¤tInfo.supplierDTO.cover + || currentInfo.picture + " :src=" + currentInfo.customerDTO&¤tInfo.customerDTO.cover + ||currentInfo.supplierDTO&¤tInfo.supplierDTO.cover + || currentInfo.picture + " mode="scaleToFill"></image> + <image class="user-icon" v-else + src='https://youzhen123.oss-cn-huhehaote.aliyuncs.com/WechatOwnerProperty/images/mrtx.png' + mode="scaleToFill"></image> <view class="name" v-if="currentInfo.id"> - <view class="t1" > - {{ (!!currentInfo.supplierDTO?(currentInfo.supplierDTO.name):"") || currentInfo.nickName || currentInfo.loginName || '-'}}<span - v-if="currentInfo.supplierDTO&¤tInfo.supplierDTO.status!=='P'"> - ({{currentInfo.supplierDTO?currentInfo.supplierDTO.statusStr:''}})</span> + <view class="t1"> + {{ + (!!currentInfo.partnerDTO ? (currentInfo.partnerDTO.name) : "") || (!!currentInfo.supplierDTO ? (currentInfo.supplierDTO.name) : "") || (!!currentInfo.customerDTO ? (currentInfo.customerDTO.name) : "") || currentInfo.nickName || currentInfo.loginName || '-' + }} + <span v-if="currentInfo.supplierDTO&¤tInfo.supplierDTO.status!=='P'"> + ({{ currentInfo.supplierDTO ? currentInfo.supplierDTO.statusStr : '' }})</span> + <span v-if="currentInfo.partnerDTO&¤tInfo.partnerDTO.status!=='P'"> + ({{ currentInfo.partnerDTO ? currentInfo.partnerDTO.statusStr : '' }})</span> </view> - <view class="t2">{{currentInfo.tel || '暂无电话'}}</view> + <view class="t2">{{ currentInfo.tel || '暂无电话' }}</view> </view> - <view class="name" v-if="!currentInfo.id" open-type="getUserInfo" @click.stop="getUserProfile" style="font-size: 48rpx;margin-top: 16rpx;"> - {{'点击登陆'}} + <view class="name" v-if="!currentInfo.id" open-type="getUserInfo" @click.stop="toCustomerLogin" + style="font-size: 48rpx;margin-top: 16rpx;"> + <!-- getUserProfile --> + {{ '点击登陆/注册' }} </view> - <image class="icon-setting" src="../../static/common/icon-setting.png" mode="aspectFit"></image> + <image class="icon-setting" @click="toInfo" src="../../static/common/icon-setting.png" mode="aspectFit"> + </image> </view> <!-- #ifdef PUB_CUSTOMER --> <view class="customer-info-records"> - <view class="item"> - <view class="num">59</view> + <view class="item" @click="goto('/sub_pages/customer/self/collect',true)"> + <view class="num">{{ tj.collectNum || 0 }} + </view> <view class="name">我的收藏</view> </view> <view class="line"></view> - <view class="item"> - <view class="num">5</view> + <view class="item" @click="goto('/sub_pages/customer/self/follow',true)"> + <view class="num">{{ tj.followNum || 0 }} + </view> <view class="name">关注店铺</view> </view> <view class="line"></view> - <view class="item"> - <view class="num">87</view> + <view class="item" @click="goto('/sub_pages/customer/self/history',true)"> + <view class="num">{{ tj.browseNum || 0 }}</view> <view class="name">浏览记录</view> </view> </view> @@ -61,27 +78,32 @@ <view class="user-util m-t-12"> <view class="title flex"> <view class="flex1">我的订单</view> - <view class="m-r-a m-r-0 more">全部订单<uni-icons class="" type="right" - size="12"></uni-icons></view> + <view class="m-r-a m-r-0 more" @click="goto('/pages/order/order',true)">全部订单 + <uni-icons class="" type="right" size="12"></uni-icons> + </view> </view> <view class="flex order-icons-container"> - <view class="order-icons"> - <image src="../../static/images/customer/order/order-type-1.png" class="order-icon dfk"></image> + <view class="order-icons" style="position: relative;" + @click="goto('/pages/order/order?status=PENDING',true)"> + <image src="../../static/images/customer/order/order-type-1.png" class="order-icon dfk" + style="position: relative;"> + <view class="image-shop-number" v-if="order_pendding_num">{{order_pendding_num||''}}</view> + </image> <view>待付款</view> </view> - <view class="order-icons"> + <view class="order-icons" @click="goto('/pages/order/order?status=SEND',true)"> <image src="../../static/images/customer/order/order-type-2.png" class="order-icon dfh"></image> <view>待发货</view> </view> - <view class="order-icons"> + <view class="order-icons" @click="goto('/pages/order/order?status=RECEIVE',true)"> <image src="../../static/images/customer/order/order-type-3.png" class="order-icon dsh"></image> <view>待收货</view> </view> - <view class="order-icons"> + <view class="order-icons" @click="goto('/pages/order/order?status=EVALUATE',true)"> <image src="../../static/images/customer/order/order-type-4.png" class="order-icon dpj"></image> <view>待评价</view> </view> - <view class="order-icons"> + <view class="order-icons" @click="goto('/pages/order/order-sale/order-sale',true)"> <image src="../../static/images/customer/order/order-type-5.png" class="order-icon sh"></image> <view>售后</view> </view> @@ -94,12 +116,12 @@ <view>我的服务</view> </view> <view class="flex service-icons-container"> - <view class="service-icons"> + <view class="service-icons" @click="goto('/sub_pages/customer/self/follow',true)"> <image src="../../static/images/customer/service/service-icon-1.png" class="service-icon "> </image> <view>关注店铺</view> </view> - <view class="service-icons"> + <view class="service-icons" @click="goto('/sub_pages/customer/self/collect',true)"> <image src="../../static/images/customer/service/service-icon-2.png" class="service-icon "> </image> <view>我的收藏</view> @@ -109,23 +131,26 @@ </image> <view>地址管理</view> </view> - <view class="service-icons"> + <view class="service-icons" @click="goto('/pages/help/content?id=售后规则',false)"> <image src="../../static/images/customer/service/service-icon-4.png" class="service-icon "> </image> <view>售后规则</view> </view> </view> <view class="flex service-icons-container"> - <view class="service-icons"> + <view class="service-icons" @click="goto('/pages/help/content?id=新手帮助',false)"> <image src="../../static/images/customer/service/service-icon-5.png" class="t2 service-icon "> </image> <view>新手帮助</view> </view> - <view class="service-icons"> + <!-- <view class="service-icons" @click.stop="$meesage.showToast('敬请期待')"> <image src="../../static/images/customer/service/service-icon-6.png" class="t2 service-icon "> </image> <view>运费详查</view> - </view> + </view> --> + + <view class="service-icons"></view> + <view class="service-icons"></view> <view class="service-icons"></view> </view> @@ -133,18 +158,54 @@ </view> <!-- #endif --> <view class="user-utils m-20"> - <view class="user-util m-t-12 flex" @click="goto('/pages/user/user-info/user-info',true)"> + <view class="user-util m-t-12 flex" v-if="selftype==='customer'||!selftype" + @click="goto('/sub_pages/customer/customer-info/customer-info',true)"> <view class="title">个人信息</view> - <view class="right-icon"> - <uni-icons type="right"></uni-icons> + <view class="right-icon"> + <uni-icons type="right"></uni-icons> </view> - </view> - <view class="user-util m-t-12 flex" v-if="selftype==='partner'" - @click="goto('/sub_pages/partner/partner-info/partner-info',true)"> - <view class="title">合伙人信息</view> - <view class="right-icon"> - <uni-icons type="right"></uni-icons> - </view> + </view> + <view class="user-util m-t-12 flex" v-if="selftype==='partner'" + @click="goto('/sub_pages/partner/partner-info/partner-info',true)"> + <view class="title">合伙人信息</view> + <view class="right-icon"> + <uni-icons type="right"></uni-icons> + </view> + </view> + <!-- #ifdef PUB_PARTNER --> + <view class="user-util m-t-12 flex" + v-if="selftype==='partner'&¤tInfo.partnerDTO&¤tInfo.partnerDTO.id&¤tInfo.partnerDTO.status=='P'" + @click="goto('/sub_pages/partner/partner-info/partner-code',true)"> + <view class="title">推广的注册二维码</view> + <view class="right-icon"> + <uni-icons type="right"></uni-icons> + </view> + </view> + <!-- <view class="user-util m-t-12 flex" v-if="selftype==='partner'" + @click="goto('/sub_pages/partner/partner-info/partner-code-v2',true)"> + <view class="title">测试二维码</view> + <view class="right-icon"> + <uni-icons type="right"></uni-icons> + </view> + </view> --> + <!-- #endif --> + <!-- #ifdef PUB_CUSTOMER --> + <view class="user-util m-t-12 flex" + v-if="(selftype==='customer'||!selftype)&¤tInfo.id&¤tInfo.customerDTO&&!currentInfo.customerDTO.partnerId" + @click="scanPartnerCode"> + <view class="title">扫码绑定合伙人</view> + <view class="right-icon"> + <uni-icons type="right"></uni-icons> + </view> + </view> + <!-- #endif --> + <view class="user-util m-t-12 flex" + v-if="selftype==='supplier'&¤tInfo&¤tInfo.id&¤tInfo.supplierDTO&¤tInfo.supplierDTO.status==='P'" + @click="goto('/sub_pages/supplier/supplier-info/supplier-info-update',true)"> + <view class="title">信息维护</view> + <view class="right-icon"> + <uni-icons type="right"></uni-icons> + </view> </view> <view class="user-util m-t-12 flex" v-if="selftype==='supplier'" @click="goto('/sub_pages/supplier/supplier-info/supplier-info',true)"> @@ -153,79 +214,99 @@ <uni-icons type="right"></uni-icons> </view> </view> + <view class="user-util m-t-12 flex" @click="goto('/pages/user/user-pwd/user-pwd',true)"> <view class="title">修改密码</view> <view class="right-icon"> <uni-icons type="right"></uni-icons> </view> </view> - <view class="user-util m-t-12 " @click="callTel" - v-if="selftype==='supplier'||selftype==='customer' || !selftype"> + <view class="user-util m-t-12 flex" v-if="currentInfo&¤tInfo.id" + @click="goto('/pages/user/user-bind-wx/user-bind-wx',true)"> + <view class="title">绑定当前微信</view> + <view class="right-icon"> + <uni-icons type="right"></uni-icons> + </view> + </view> + <view class="user-util m-t-12 flex" v-if="selftype==='customer'" @click="clearlogout"> + <view class="title">退出登录</view> + <view class="right-icon"> + <uni-icons type="right"></uni-icons> + </view> + </view> + + <view class="user-util m-t-12 " v-if="selftype==='supplier'||selftype==='customer' || !selftype"> <view class="title">我的客服</view> - <view class="flex"> + <view class="flex flex-wrap-normal"> <image class="icon-clock m-r-6 m-t-2" src="../../static/common/icon-call.png"></image> - <view class="name"> - 客服电话 : <span class="topic-gray">{{tel}}</span> - </view> + <!-- @click="callTel" --> + <button open-type="contact" class="component-button-contact" @handleContact="handleContact"> + <view class="name"> + 客服电话 : <span class="topic-gray">{{ tel }}</span> + </view> + <view class="right-icon"> + <uni-icons type="right"></uni-icons> + </view> + </button> + </view> </view> <!-- <view class="user-util m-t-12 " @click="callTel" v-if="selftype==='partner'"> - <view class="name"> - 账号: <span class="topic-gray">{{tel}}</span> - </view> - <view class="name"> - 密码: <span class="topic-gray">{{tel}}</span> - </view> - </view> --> + <view class="name"> + 账号: <span class="topic-gray">{{tel}}</span> + </view> + <view class="name"> + 密码: <span class="topic-gray">{{tel}}</span> + </view> + </view> --> </view> - <!-- #ifdef PUB_CUSTOMER --> <view style="padding-bottom:200rpx"> </view> - <common-footer flg="3"></common-footer> - - <uni-popup ref="popup_info" type="bottom"> - <view class="popup-form"> - - <view class="infocontainar"> - <cu-custom bgColor="none" :isBack="false"> - <block slot="content"><span style="color: #333;font-weight: 400;">获取用户头像、昵称</span></block> - </cu-custom> - - - <view class="avatarUrl"> - <button type="balanced" open-type="chooseAvatar" @chooseavatar="onChooseavatar"> - <image :src="regAvatarUrl" class="refreshIcon"></image> - </button> - </view> - <view class="userName"> - <text style="padding-bottom: 20rpx;">修改昵称:</text> - <input :clearable="false" type="nickname" class="weui-input" :value="regUserName" @blur="onBindblur" - placeholder="请输入昵称" @input="onBindinput" /> - </view> - - <view style="width: 100%;height: 1px; background: #EEE;"> - - </view> - <view style="width: 700rpx; height: 20px; font-size: 13px; margin: auto; margin-top: 40rpx;"> - · 申请获取以下权限 - </view> - <view - style="width: 700rpx; height: 20px; font-size: 13px; margin: auto; color: #cbcbcb; margin-top: 25rpx;"> - · 获得你的信息(昵称、头像等) - </view> - - <view class="btn"> - <view @click="onWxCheckSubmit" class="button-green">保存</view> - </view> - - </view> - </view> - </uni-popup> - - + <common-footer flg="3"></common-footer> + + <uni-popup ref="popup_info" type="bottom"> + <view class="popup-form"> + + <view class="infocontainar"> + <cu-custom bgColor="none" :isBack="false"> + <block slot="content"><span style="color: #333;font-weight: 400;">获取用户头像、昵称</span></block> + </cu-custom> + + + <view class="avatarUrl"> + <button type="balanced" open-type="chooseAvatar" @chooseavatar="onChooseavatar"> + <image :src="regAvatarUrl" class="refreshIcon"></image> + </button> + </view> + <view class="userName"> + <text style="padding-bottom: 20rpx;">修改昵称:</text> + <input :clearable="false" type="nickname" class="weui-input" :value="regUserName" + @blur="onBindblur" placeholder="请输入昵称" @input="onBindinput" /> + </view> + + <view style="width: 100%;height: 1px; background: #EEE;"> + + </view> + <view style="width: 700rpx; height: 20px; font-size: 13px; margin: auto; margin-top: 40rpx;"> + · 申请获取以下权限 + </view> + <view + style="width: 700rpx; height: 20px; font-size: 13px; margin: auto; color: #cbcbcb; margin-top: 25rpx;"> + · 获得你的信息(昵称、头像等) + </view> + + <view class="btn"> + <view @click="onWxCheckSubmit" class="button-green">保存</view> + </view> + + </view> + </view> + </uni-popup> + + <!-- #endif --> <!-- #ifndef PUB_CUSTOMER --> <view class="button-login-out topic-gray" @click="clearlogout"> @@ -236,7 +317,6 @@ </view> <common-footer flg="1"></common-footer> <!-- #endif --> - </view> @@ -251,13 +331,75 @@ tcode: '', inviterName: '', // StatusBar:0, - tel: '15974805814' + tel: '15974805814', + tj: {}, + cacheUserId: '', + order_pendding_num: 0, + }; }, - + // #ifndef PUB_CUSTOMER + onShareAppMessage() { + let that = this; + var name = that.currentInfo.customerDTO && currentInfo.customerDTO.name || that.currentInfo.supplierDTO && + currentInfo.supplierDTO.name || that.currentInfo.partnerDTO && currentInfo.partnerDTO.name || '' + var url = + `/pages/login/supplier-login?shareId=${this.currentInfo&&this.currentInfo.id||''}&shareName=${name||''}`; //你的转发页面路径拼接参数 + return { + title: "花满芫", + path: url, + } + }, + onShareTimeline() { + let that = this; + var name = that.currentInfo.customerDTO && that.currentInfo.customerDTO.name || that.currentInfo.supplierDTO && + that.currentInfo.supplierDTO.name || that.currentInfo.partnerDTO && that.currentInfo.partnerDTO.name || '' + var url = + `/pages/login/supplier-login?shareId=${this.currentInfo&&this.currentInfo.id||''}&shareName=${name||''}`; //你的转发页面路径拼接参数 + return { + title: "花满芫", + path: url, + } + }, + // #endif + // #ifdef PUB_CUSTOMER + onShareAppMessage() { + let that = this; + var name = that.currentInfo.customerDTO && that.currentInfo.customerDTO.name || that.currentInfo.supplierDTO && + that.currentInfo.supplierDTO.name || that.currentInfo.partnerDTO && that.currentInfo.partnerDTO.name || '' + var url = + `/pages/home/home?shareId=${this.currentInfo&&this.currentInfo.id||''}&shareName=${name||''}`; //你的转发页面路径拼接参数 + return { + title: "花满芫", + path: url, + } + }, + onShareTimeline() { + let that = this; + var name = that.currentInfo.customerDTO && that.currentInfo.customerDTO.name || that.currentInfo.supplierDTO && + that.currentInfo.supplierDTO.name || that.currentInfo.partnerDTO && that.currentInfo.partnerDTO.name || '' + var url = + `/pages/home/home?shareId=${this.currentInfo&&this.currentInfo.id||''}&shareName=${name||''}`; //你的转发页面路径拼接参数 + return { + title: "花满芫", + path: url, + } + }, + // #endif + onShow() { + this.cacheUserId = '' + this.getTj() + }, onLoad(options) { - const url = options.q ? decodeURIComponent(options.q) : ''; - const urlcode = options.url && decodeURIComponent(options.url) || '' + // const url = options.q ? decodeURIComponent(options.q) : ''; + // const urlcode = options.url && decodeURIComponent(options.url) || '' + // #ifdef PUB_CUSTOMER + if (options.partnerUserId) { + this.bindPartnerUser(options.partnerUserId, options.partnerUserName) + } + // #endif + + }, created() { @@ -267,6 +409,125 @@ uni.stopPullDownRefresh() }, methods: { + async bindPartnerUser(userId, name) { + // await this.$message.confirm(`确定要绑定${name}合伙人吗?`) + //调用接口绑定 + this.$message.showLoading() + const { + code, + data + } = await this.$http.request('post', '/api/customer/bind/partner', { + data: { + partnerUserId: userId + } + }) + this.$message.hideLoading() + if (code == 0) { + this.$message.showToast(`绑定合伙人${name}成功`) + await this.$store.dispatch('getCurrentInfo') + } + }, + async scanPartnerCode() { + //扫二维码确认 + let that = this + uni.scanCode({ + success: async function(res) { + console.log('条码内容:' + res.result); + if (!res.result) { + that.$message.showToast('未识别出合伙人信息,如果是微信小程序二维码,请微信扫码打开') + return + } + var dto = undefined + try { + if (res.result && (res.result.startsWith('https://') || res.result.startsWith( + 'http://')) && res.result.indexOf( + 'partnerUserId') >= 0) { + var arr = res.result.split("?")[1].split("&") + dto = {} + for (var item of arr) { + var tarr = item.split("=") + // console.log('tarr',tarr) + if (tarr[1]) { + dto[tarr[0]] = tarr[1] + } + } + dto['name'] = dto['partnerUserName'] || '' + dto['userId'] = dto['partnerUserId'] || '' + // console.log('tmp arr',arr,dto) + + } else { + dto = JSON.parse(res.result) + + } + if (!!dto['userId']) { + var partnerName = dto['name'] || '' + var partnerId = dto['userId'] || '' + that.bindPartnerUser(partnerId, partnerName) + + } else { + that.$message.showToast('二维码格式不正确扫码失败') + } + } catch (e) { + console.log('e', e) + that.$message.showToast('二维码扫码错误') + } + }, + fail() { + that.$message.showToast('扫码失败') + + } + }); + }, + + + toInfo() { + var url = '' + if (this.currentInfo.id) { + // #ifdef PUB_CUSTOMER + url = '/sub_pages/customer/customer-info/customer-info' + // #endif + // #ifdef PUB_PARTNER + url = '/sub_pages/partner/partner-info/partner-info' + // #endif + // #ifdef PUB_SUPPLIER + url = '/sub_pages/supplier/supplier-info/supplier-info' + // #endif + if (url) { + uni.navigateTo({ + url: url + }) + } + } + }, + getTj() { + // /api/supplier/delivery + + if (this.currentInfo.id && this.currentInfo.id !== this.cacheUserId) { + this.cacheUserId = this.currentInfo.id + let that = this + setTimeout(() => { + // #ifdef PUB_CUSTOMER + this.$http.request('get', '/api/customer/center/tj', {}).then(res => { + if (res.code === 0) { + that.tj = res.data || {} + } + }) + //获取待支付数目 + this.$http.request('get', '/api/customer/order/count/pending', { + params: {} + }).then(res => { + if (res.code === 0) { + that.order_pendding_num = res.data || 0 + + } + }) + + + // #endif + }, 200) + } + + }, async clearlogout() { await this.$message.confirm('是否退出登录?') @@ -281,9 +542,12 @@ uni.makePhoneCall({ phoneNumber: this.tel //仅为示例 }); - } - - + }, + toCustomerLogin() { + uni.navigateTo({ + url: '/pages/login/supplier-login' + }) + }, } } </script> -- Gitblit v1.9.3