<template>
|
<view class="main-container user-container">
|
<!-- <view>
|
我的
|
</view> -->
|
<!-- 背景图 -->
|
<view class="top-bg img100 relative" :style="{'padding-top':(StatusBar)+'px','line-height':CustomBar+'rpx' }">
|
<image class="component-bg"
|
src="https://hmy-flower.oss-cn-shanghai.aliyuncs.com/21/21c95c14e9504be69edff7785e3b44a9bg.png"
|
mode="scaleToFill" />
|
|
<view class="title" style="position: relative;">
|
个人中心
|
|
</view>
|
<!-- v-if="currentInfo&&(currentInfo.id)" -->
|
<view class="flex user-info">
|
<!-- 头像 -->
|
|
<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.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>
|
<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" @click="toInfo" src="../../static/common/icon-setting.png" mode="aspectFit">
|
</image>
|
</view>
|
<!-- #ifdef PUB_CUSTOMER -->
|
<view class="customer-info-records">
|
<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" @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" @click="goto('/sub_pages/customer/self/history',true)">
|
<view class="num">{{ tj.browseNum || 0 }}</view>
|
<view class="name">浏览记录</view>
|
</view>
|
</view>
|
<!-- #endif -->
|
|
|
</view>
|
<!-- #ifdef PUB_CUSTOMER -->
|
<view class="user-utils m-20 user-customer-order-infos" v-if="selftype==='customer'||!selftype">
|
<view class="user-util m-t-12">
|
<view class="title flex">
|
<view class="flex1">我的订单</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" 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="tj_order.pendingCount">{{tj_order.pendingCount||''}}
|
</view>
|
</image>
|
<view>待付款</view>
|
</view>
|
<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" style="position: relative;">
|
<view class="image-shop-number" v-if="tj_order.sendCount">{{tj_order.sendCount||''}}</view>
|
|
</image>
|
<view>待发货</view>
|
</view>
|
<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" style="position: relative;">
|
<view class="image-shop-number" v-if="tj_order.receiveCount">{{tj_order.receiveCount||''}}
|
</view>
|
|
</image>
|
<view>待收货</view>
|
</view>
|
<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" style="position: relative;">
|
<view class="image-shop-number" v-if="tj_order.evaluateCount">{{tj_order.evaluateCount||''}}
|
</view>
|
|
</image>
|
<view>待评价</view>
|
</view>
|
<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" style="position: relative;">
|
<view class="image-shop-number" v-if="tj_order.salesPendingCount">
|
{{tj_order.salesPendingCount||''}}</view>
|
|
</image>
|
<view>售后</view>
|
</view>
|
</view>
|
</view>
|
</view>
|
<view class="user-utils m-20" v-if="selftype==='customer'||!selftype">
|
<view class="user-util m-t-12 user-customer-service-infos">
|
<view class="title flex">
|
<view>我的服务</view>
|
</view>
|
<view class="flex service-icons-container">
|
<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" @click="goto('/sub_pages/customer/self/collect',true)">
|
<image src="../../static/images/customer/service/service-icon-2.png" class="service-icon ">
|
</image>
|
<view>我的收藏</view>
|
</view>
|
<view class="service-icons" @click="goto('/pages/user/address/address',true)">
|
<image src="../../static/images/customer/service/service-icon-3.png" class="service-icon ">
|
</image>
|
<view>地址管理</view>
|
</view>
|
<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" @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" @click.stop="$meesage.showToast('敬请期待')">
|
<image src="../../static/images/customer/service/service-icon-6.png" class="t2 service-icon ">
|
</image>
|
<view>运费详查</view>
|
</view> -->
|
|
<view class="service-icons"></view>
|
|
<view class="service-icons"></view>
|
<view class="service-icons"></view>
|
</view>
|
</view>
|
</view>
|
<!-- #endif -->
|
<view class="user-utils m-20">
|
<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>
|
</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)">
|
<view class="title">店铺信息</view>
|
<view class="right-icon">
|
<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 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>
|
<!-- v-if="selftype==='customer'" -->
|
<view class="user-util m-t-12 flex" @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 flex-wrap-normal">
|
<image class="icon-clock m-r-6 m-t-2" src="../../static/common/icon-call.png"></image>
|
<!-- @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>
|
|
|
<!-- #ifdef PUB_CUSTOMER -->
|
<view style="padding-bottom:140rpx">
|
</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>
|
|
|
<!-- #endif -->
|
<!-- #ifndef PUB_CUSTOMER -->
|
<!-- <view class="button-login-out topic-gray" @click="clearlogout">
|
退出登录
|
</view> -->
|
|
<view style="padding-bottom:160rpx">
|
</view>
|
<common-footer flg="1"></common-footer>
|
<!-- #endif -->
|
|
|
</view>
|
</template>
|
|
<script>
|
export default {
|
data() {
|
return {
|
CustomBar: uni.getStorageSync('CustomBar'),
|
StatusBar: uni.getStorageSync('StatusBar'),
|
tcode: '',
|
inviterName: '',
|
// StatusBar:0,
|
tel: '15974805814',
|
tj: {},
|
tj_order: {},
|
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) || ''
|
// #ifdef PUB_CUSTOMER
|
if (options.partnerUserId) {
|
this.bindPartnerUser(options.partnerUserId, options.partnerUserName)
|
}
|
// #endif
|
|
|
},
|
created() {
|
|
},
|
async onPullDownRefresh() {
|
await this.$store.dispatch('getCurrentInfo')
|
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/statistics/count', {
|
params: {}
|
}).then(res => {
|
if (res.code === 0) {
|
// that.order_pendding_num = res.data || 0
|
that.tj_order = res.data || {}
|
// this.$forceUpdate()
|
console.log('tj_order', that.tj_order)
|
}
|
})
|
|
|
// #endif
|
}, 200)
|
}
|
|
},
|
|
async clearlogout() {
|
await this.$message.confirm('是否退出登录?')
|
this.$store.commit('updateLogin', false)
|
|
uni.reLaunch({
|
url: '/pages/login/supplier-login'
|
})
|
},
|
async callTel() {
|
await this.$message.confirm('是否拨打客服电话')
|
uni.makePhoneCall({
|
phoneNumber: this.tel //仅为示例
|
});
|
},
|
toCustomerLogin() {
|
uni.navigateTo({
|
url: '/pages/login/supplier-login'
|
})
|
},
|
}
|
}
|
</script>
|
|
<style lang="scss" scoped>
|
@import "./user.scss";
|
</style>
|
<!-- #ifdef PUB_CUSTOMER -->
|
<style lang="scss" scoped>
|
@import "./user-customer.scss";
|
</style>
|
<!-- #endif -->
|
<style lang="scss" scoped>
|
</style>
|