|
|
@ -1,165 +1,158 @@ |
|
|
|
<template> |
|
|
|
<view> |
|
|
|
<view class="user-header"> |
|
|
|
<view class="flex flex-between login"> |
|
|
|
<view style="width: 120rpx;"> |
|
|
|
<up-image class="mr20" width="120rpx" height="120rpx" :src="userInfo.userImage" |
|
|
|
shape="circle"></up-image> |
|
|
|
</view> |
|
|
|
|
|
|
|
<view style="width: calc(100% - 120rpx); padding-left: 20rpx;box-sizing: border-box;"> |
|
|
|
<view class="base-leavel"> |
|
|
|
<text>{{getIsLogin()?userInfo.userName:"欢迎来到版宠师"}}</text> |
|
|
|
<view class="user-header"> |
|
|
|
<view class="flex flex-between login"> |
|
|
|
<view style="width: 120rpx;"> |
|
|
|
<up-image class="mr20" width="120rpx" height="120rpx" :src="userInfo.userImage || 'https://image.hhlm1688.com/img/work/log/headImage.png'" |
|
|
|
shape="circle"></up-image> |
|
|
|
</view> |
|
|
|
<view> |
|
|
|
<image v-if="petMaster" class="role-tag" :src="petMaster" mode="aspectFill"></image> |
|
|
|
<image v-if="partnerMaster" class="role-tag" :src="partnerMaster" mode="aspectFill"></image> |
|
|
|
|
|
|
|
<view style="width: calc(100% - 120rpx); padding-left: 20rpx;box-sizing: border-box;"> |
|
|
|
<view class="base-leavel"> |
|
|
|
<text>{{isLogin ? userInfo.userName : "欢迎来到版宠师"}}</text> |
|
|
|
</view> |
|
|
|
<view v-if="isLogin"> |
|
|
|
<image v-if="petMaster" class="role-tag" :src="petMaster" mode="aspectFill"></image> |
|
|
|
<image v-if="partnerMaster" class="role-tag" :src="partnerMaster" mode="aspectFill"></image> |
|
|
|
</view> |
|
|
|
<!-- <view> |
|
|
|
手机号:{{ userInfo?.userTelephone }} |
|
|
|
</view> --> |
|
|
|
</view> |
|
|
|
<!-- <view> |
|
|
|
手机号:{{ userInfo?.userTelephone }} |
|
|
|
|
|
|
|
<!-- <view style="width: 140rpx"> |
|
|
|
<up-button v-else @click="logout" :customStyle="{borderColor:'#fff'}" type="primary" text="退出登录" |
|
|
|
shape="circle" color="#FFBF60"></up-button> |
|
|
|
</view> --> |
|
|
|
</view> |
|
|
|
|
|
|
|
<!-- <view style="width: 140rpx"> |
|
|
|
<up-button v-else @click="logout" :customStyle="{borderColor:'#fff'}" type="primary" text="退出登录" |
|
|
|
shape="circle" color="#FFBF60"></up-button> |
|
|
|
</view> --> |
|
|
|
</view> |
|
|
|
|
|
|
|
<view class="header-money"> |
|
|
|
<view class="header-money-list"> |
|
|
|
<view class="header-money-item flex flex-evenly"> |
|
|
|
<view style="text-align: center"> |
|
|
|
<view class="mb20 flex"> |
|
|
|
<!-- <up-image :show-loading="true" src="https://cdn.catmdogd.com/Work/image/work/icon4.png" |
|
|
|
width="68rpx" height="68rpx"></up-image> --> |
|
|
|
<up-image :show-loading="true" src="/static/images/user/a2.png" |
|
|
|
style="margin-right: 14rpx;" |
|
|
|
width="50rpx" height="50rpx"></up-image> |
|
|
|
服务酬劳 |
|
|
|
<view class="header-money"> |
|
|
|
<view class="header-money-list"> |
|
|
|
<view class="header-money-item flex flex-evenly"> |
|
|
|
<view style="text-align: center"> |
|
|
|
<view class="mb20 flex"> |
|
|
|
<!-- <up-image :show-loading="true" src="https://cdn.catmdogd.com/Work/image/work/icon4.png" |
|
|
|
width="68rpx" height="68rpx"></up-image> --> |
|
|
|
<up-image :show-loading="true" src="/static/images/user/a2.png" |
|
|
|
style="margin-right: 14rpx;" |
|
|
|
width="50rpx" height="50rpx"></up-image> |
|
|
|
服务酬劳 |
|
|
|
</view> |
|
|
|
<view class="mb20">{{ isLogin ? userInfo.price || '0' : '--' }}元</view> |
|
|
|
<view class="flex flex-between but"> |
|
|
|
<view @click="handleWithdraw">提现</view> |
|
|
|
<view>|</view> |
|
|
|
<view @click="handleRunningWater">明细</view> |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
<view class="mb20">{{ userInfo.price }}元</view> |
|
|
|
<view class="flex flex-between but"> |
|
|
|
<view @click="toWithdrawDeposit">提现</view> |
|
|
|
<view>|</view> |
|
|
|
<view @click="toRunningWater">明细</view> |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
<view style="text-align: center"> |
|
|
|
<view class="mb20 flex"> |
|
|
|
<!-- <up-image :show-loading="true" src="https://cdn.catmdogd.com/Work/image/work/icon4.png" |
|
|
|
width="68rpx" height="68rpx"></up-image> --> |
|
|
|
<view style="text-align: center"> |
|
|
|
<view class="mb20 flex"> |
|
|
|
<!-- <up-image :show-loading="true" src="https://cdn.catmdogd.com/Work/image/work/icon4.png" |
|
|
|
width="68rpx" height="68rpx"></up-image> --> |
|
|
|
|
|
|
|
<up-image :show-loading="true" src="/static/images/user/a1.png" |
|
|
|
style="margin-right: 14rpx;" |
|
|
|
width="50rpx" height="50rpx"></up-image> |
|
|
|
<up-image :show-loading="true" src="/static/images/user/a1.png" |
|
|
|
style="margin-right: 14rpx;" |
|
|
|
width="50rpx" height="50rpx"></up-image> |
|
|
|
|
|
|
|
保证金 |
|
|
|
保证金 |
|
|
|
</view> |
|
|
|
<view class="mb20">{{ isLogin ? userInfo.baoPrice || '0' : '--' }}元</view> |
|
|
|
<view @click="handleBail" class="but">保证金中心</view> |
|
|
|
</view> |
|
|
|
<view class="mb20">{{ userInfo.baoPrice }}元</view> |
|
|
|
<view @click="toBail" class="but">保证金中心</view> |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
<view class="user-container"> |
|
|
|
<view class="bgf pd4 radius20 mb28"> |
|
|
|
<view class="mb28 flex flex-between"> |
|
|
|
<view class="font36">我的爱宠</view> |
|
|
|
<view @click="toMyPet" style="color: #707070">更多 ></view> |
|
|
|
</view> |
|
|
|
<view> |
|
|
|
|
|
|
|
|
|
|
|
<!-- <up-button v-if="getIsLogin()" class="mb20" size="large" style="width: 500rpx" type="primary" |
|
|
|
text="请添加您的爱宠" shape="circle" |
|
|
|
color="linear-gradient(to right, rgb(255 ,191 ,96 ,1), rgb(255, 51, 186))"></up-button> --> |
|
|
|
<view class="user-container"> |
|
|
|
<view class="bgf pd4 radius20 mb28"> |
|
|
|
<view class="mb28 flex flex-between"> |
|
|
|
<view class="font36">我的爱宠</view> |
|
|
|
<view @click="handleMyPet" style="color: #707070">更多 ></view> |
|
|
|
</view> |
|
|
|
<view> |
|
|
|
<view v-if="isLogin && petList.length"> |
|
|
|
<scroll-view scroll-x class="pet-scroll-container" show-scrollbar="false"> |
|
|
|
<view class="pet-scroll-content"> |
|
|
|
<view class="cw-box radius20 pd20 flex pet-item" |
|
|
|
v-for="(pet, inde) in petList" |
|
|
|
@click="handleEditPet(pet)" |
|
|
|
:key="pet.id"> |
|
|
|
<up-image class="mr20" width="120rpx" style="flex-shrink: 0" height="120rpx" |
|
|
|
:src="pet?.headImage" shape="circle"></up-image> |
|
|
|
<view style="width: 280rpx"> |
|
|
|
<view class="font32 mb20 pet-name-container"> |
|
|
|
{{ pet.nickName }} |
|
|
|
<text class="pet-gender" :class="{'pet-gender-male': pet.sex === 0, 'pet-gender-female': pet.sex === 1}"> |
|
|
|
{{ pet.sex === 0 ? '♂' : '♀' }} |
|
|
|
</text> |
|
|
|
</view> |
|
|
|
<view class="font24 ellipsis">{{ pet.type }} | {{ pet.age }}</view> |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
</scroll-view> |
|
|
|
</view> |
|
|
|
|
|
|
|
|
|
|
|
<view v-if="isLogin && petList.length"> |
|
|
|
<scroll-view scroll-x class="pet-scroll-container" show-scrollbar="false"> |
|
|
|
<view class="pet-scroll-content"> |
|
|
|
<view class="cw-box radius20 pd20 flex pet-item" |
|
|
|
v-for="(pet, inde) in petList" |
|
|
|
@click="editPet(pet)" |
|
|
|
:key="pet.id"> |
|
|
|
<up-image class="mr20" width="120rpx" style="flex-shrink: 0" height="120rpx" |
|
|
|
:src="pet?.headImage" shape="circle"></up-image> |
|
|
|
<view style="width: 280rpx"> |
|
|
|
<view class="font32 mb20 pet-name-container"> |
|
|
|
{{ pet.nickName }} |
|
|
|
<text class="pet-gender" :class="{'pet-gender-male': pet.sex === 0, 'pet-gender-female': pet.sex === 1}"> |
|
|
|
{{ pet.sex === 0 ? '♂' : '♀' }} |
|
|
|
</text> |
|
|
|
</view> |
|
|
|
<view class="font24 ellipsis">{{ pet.type }} | {{ pet.age }}</view> |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
</scroll-view> |
|
|
|
</view> |
|
|
|
|
|
|
|
<view class="no-pet-tip radius20 pd20 flex" v-else> |
|
|
|
<up-image class="mr20" width="80rpx" height="80rpx" src="https://image.hhlm1688.com/img/work/log/headImage.png" shape="circle"></up-image> |
|
|
|
<view class="no-pet-text">您还没有添加您的爱宠信息呢</view> |
|
|
|
<view class="add-pet-btn" @click="toMyPet">去添加</view> |
|
|
|
<view class="no-pet-tip radius20 pd20 flex" v-else> |
|
|
|
<up-image class="mr20" width="80rpx" height="80rpx" src="https://image.hhlm1688.com/img/work/log/headImage.png" shape="circle"></up-image> |
|
|
|
<view class="no-pet-text">{{isLogin ? '您还没有添加您的爱宠信息呢' : '登录后查看您的爱宠'}}</view> |
|
|
|
<view class="add-pet-btn" @click="handleMyPet">{{isLogin ? '去添加' : '去登录'}}</view> |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
<view class="bgf pd40 radius20"> |
|
|
|
<view class="font36 mb28">服务中心</view> |
|
|
|
<view class="flex flex-between font28 flex-wrap"> |
|
|
|
<view class="icon-list" @click="toNext"> |
|
|
|
<!-- <up-image class="mb20" src="https://cdn.catmdogd.com/Work/image/work/icon1.png" width="68rpx" |
|
|
|
height="68rpx"></up-image> --> |
|
|
|
|
|
|
|
<up-image class="mb20" src="/static/images/user/1.png" width="58rpx" |
|
|
|
height="58rpx"></up-image> |
|
|
|
<view>我的评价</view> |
|
|
|
</view> |
|
|
|
<view @click="platformProtocol" class="icon-list"> |
|
|
|
<!-- <up-image class="mb20" :show-loading="true" |
|
|
|
src="https://cdn.catmdogd.com/Work/image/work/icon2.png" width="68rpx" |
|
|
|
height="68rpx"></up-image> --> |
|
|
|
|
|
|
|
<up-image class="mb20" src="/static/images/user/2.png" width="58rpx" |
|
|
|
height="58rpx"></up-image> |
|
|
|
<view>平台协议</view> |
|
|
|
</view> |
|
|
|
<button plain class="btn-share" open-type="contact"> |
|
|
|
<view class="icon-list"> |
|
|
|
<!-- <up-image class="mb20" :show-loading="true" |
|
|
|
src="https://cdn.catmdogd.com/Work/image/work/icon3.png" width="68rpx" |
|
|
|
<view class="bgf pd40 radius20"> |
|
|
|
<view class="font36 mb28">服务中心</view> |
|
|
|
<view class="flex flex-between font28 flex-wrap"> |
|
|
|
<view class="icon-list" @click="handleEvaluate"> |
|
|
|
<!-- <up-image class="mb20" src="https://cdn.catmdogd.com/Work/image/work/icon1.png" width="68rpx" |
|
|
|
height="68rpx"></up-image> --> |
|
|
|
|
|
|
|
<up-image class="mb20" src="/static/images/user/4.png" width="58rpx" |
|
|
|
|
|
|
|
<up-image class="mb20" src="/static/images/user/1.png" width="58rpx" |
|
|
|
height="58rpx"></up-image> |
|
|
|
<view>联系客服</view> |
|
|
|
</view> |
|
|
|
</button> |
|
|
|
<button plain class="btn-share" open-type="share"> |
|
|
|
<view class="icon-list"> |
|
|
|
<view>我的评价</view> |
|
|
|
</view> |
|
|
|
<view @click="platformProtocol" class="icon-list"> |
|
|
|
<!-- <up-image class="mb20" :show-loading="true" |
|
|
|
src="https://t9.baidu.com/it/u=2834693008,3232051400&fm=193" width="68rpx" |
|
|
|
src="https://cdn.catmdogd.com/Work/image/work/icon2.png" width="68rpx" |
|
|
|
height="68rpx"></up-image> --> |
|
|
|
|
|
|
|
<up-image class="mb20" src="/static/images/user/5.png" width="58rpx" |
|
|
|
|
|
|
|
<up-image class="mb20" src="/static/images/user/2.png" width="58rpx" |
|
|
|
height="58rpx"></up-image> |
|
|
|
<view>分享好友</view> |
|
|
|
<view>平台协议</view> |
|
|
|
</view> |
|
|
|
</button> |
|
|
|
</view> |
|
|
|
<!-- <view class="flex flex-between font28 flex-wrap mt20"> |
|
|
|
<view class="icon-list" @click="logout"> |
|
|
|
<up-image class="mb20" |
|
|
|
src="https://cdn.catmdogd.com/2025/04/01ab556ca51d2a4f82896c1e6fd0034a8b7shDr3f7qeDQ527d93075294e7237cee8b6c7d613be8.png" |
|
|
|
width="68rpx" height="68rpx" bgColor="#ffffff"></up-image> |
|
|
|
<view>退出登录</view> |
|
|
|
<button plain class="btn-share" open-type="contact"> |
|
|
|
<view class="icon-list"> |
|
|
|
<!-- <up-image class="mb20" :show-loading="true" |
|
|
|
src="https://cdn.catmdogd.com/Work/image/work/icon3.png" width="68rpx" |
|
|
|
height="68rpx"></up-image> --> |
|
|
|
|
|
|
|
<up-image class="mb20" src="/static/images/user/4.png" width="58rpx" |
|
|
|
height="58rpx"></up-image> |
|
|
|
<view>联系客服</view> |
|
|
|
</view> |
|
|
|
</button> |
|
|
|
<button plain class="btn-share" open-type="share"> |
|
|
|
<view class="icon-list"> |
|
|
|
<!-- <up-image class="mb20" :show-loading="true" |
|
|
|
src="https://t9.baidu.com/it/u=2834693008,3232051400&fm=193" width="68rpx" |
|
|
|
height="68rpx"></up-image> --> |
|
|
|
|
|
|
|
<up-image class="mb20" src="/static/images/user/5.png" width="58rpx" |
|
|
|
height="58rpx"></up-image> |
|
|
|
<view>分享好友</view> |
|
|
|
</view> |
|
|
|
</button> |
|
|
|
</view> |
|
|
|
</view> --> |
|
|
|
<!-- <view class="flex flex-between font28 flex-wrap mt20"> |
|
|
|
<view class="icon-list" @click="logout"> |
|
|
|
<up-image class="mb20" |
|
|
|
src="https://cdn.catmdogd.com/2025/04/01ab556ca51d2a4f82896c1e6fd0034a8b7shDr3f7qeDQ527d93075294e7237cee8b6c7d613be8.png" |
|
|
|
width="68rpx" height="68rpx" bgColor="#ffffff"></up-image> |
|
|
|
<view>退出登录</view> |
|
|
|
</view> |
|
|
|
</view> --> |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
|
|
|
|
<up-popup :show="show" @close="close" :round="10"> |
|
|
@ -202,8 +195,10 @@ |
|
|
|
} from "@/api/pet/index.js" |
|
|
|
|
|
|
|
onShow(() => { |
|
|
|
if (!getLoginStatus()) return; |
|
|
|
getPet(); |
|
|
|
checkLoginStatus(); |
|
|
|
if (isLogin.value) { |
|
|
|
getPet(); |
|
|
|
} |
|
|
|
}) |
|
|
|
|
|
|
|
onMounted(() => { |
|
|
@ -240,6 +235,7 @@ |
|
|
|
|
|
|
|
// 按伴宠师等级选中图标 |
|
|
|
const petMaster = computed(() => { |
|
|
|
if (!isLogin.value) return '' |
|
|
|
const { userBcs, userBcsRole } = userInfo.value |
|
|
|
|
|
|
|
if (!userBcs) { |
|
|
@ -252,6 +248,7 @@ |
|
|
|
}) |
|
|
|
// 按合伙人等级选中图标 |
|
|
|
const partnerMaster = computed(() => { |
|
|
|
if (!isLogin.value) return '' |
|
|
|
const { userHh } = userInfo.value |
|
|
|
|
|
|
|
if (!userHh) { |
|
|
@ -263,24 +260,69 @@ |
|
|
|
return configList.value?.[key]?.paramValueImage |
|
|
|
}) |
|
|
|
|
|
|
|
if (getIsLogin() && getToken()) { |
|
|
|
userInfo.value = getStorage("userInfo") |
|
|
|
isLogin.value = true |
|
|
|
// 检查登录状态 |
|
|
|
const checkLoginStatus = () => { |
|
|
|
if (getIsLogin() && getToken()) { |
|
|
|
isLogin.value = true |
|
|
|
} else { |
|
|
|
isLogin.value = false |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
const toNext = () => { |
|
|
|
// 检查登录状态,未登录则跳转登录 |
|
|
|
const checkLoginAndRedirect = () => { |
|
|
|
if (!isLogin.value) { |
|
|
|
uni.navigateTo({ |
|
|
|
url: "/pages/login/index" |
|
|
|
}) |
|
|
|
return false |
|
|
|
} |
|
|
|
return true |
|
|
|
} |
|
|
|
|
|
|
|
// 处理评价点击 |
|
|
|
const handleEvaluate = () => { |
|
|
|
if (!checkLoginAndRedirect()) return |
|
|
|
uni.navigateTo({ |
|
|
|
url: "/otherPages/orderTakingManage/evaluate/index" |
|
|
|
}) |
|
|
|
} |
|
|
|
|
|
|
|
const toRunningWater = () => { |
|
|
|
// 处理流水明细点击 |
|
|
|
const handleRunningWater = () => { |
|
|
|
if (!checkLoginAndRedirect()) return |
|
|
|
uni.navigateTo({ |
|
|
|
url: "/otherPages/myOrdersManage/transaction/index" |
|
|
|
}) |
|
|
|
} |
|
|
|
|
|
|
|
const editPet = (item) => { |
|
|
|
// 处理提现点击 |
|
|
|
const handleWithdraw = () => { |
|
|
|
if (!checkLoginAndRedirect()) return |
|
|
|
uni.navigateTo({ |
|
|
|
url: "/otherPages/binding/withdrawal/index" |
|
|
|
}) |
|
|
|
} |
|
|
|
|
|
|
|
// 处理保证金点击 |
|
|
|
const handleBail = () => { |
|
|
|
if (!checkLoginAndRedirect()) return |
|
|
|
uni.navigateTo({ |
|
|
|
url: "/otherPages/myOrdersManage/bond/index" |
|
|
|
}) |
|
|
|
} |
|
|
|
|
|
|
|
// 处理我的宠物点击 |
|
|
|
const handleMyPet = () => { |
|
|
|
if (!checkLoginAndRedirect()) return |
|
|
|
uni.navigateTo({ |
|
|
|
url: '/otherPages/userManage/pet/index' |
|
|
|
}); |
|
|
|
} |
|
|
|
|
|
|
|
// 处理编辑宠物点击 |
|
|
|
const handleEditPet = (item) => { |
|
|
|
if (!checkLoginAndRedirect()) return |
|
|
|
if (item.petType === '猫咪' || item.petType === 0) { |
|
|
|
uni.navigateTo({ |
|
|
|
url: `/otherPages/userManage/pet/petInfo?petType=0&optionType=edit&petId=${item.id}` |
|
|
@ -294,6 +336,8 @@ |
|
|
|
}; |
|
|
|
|
|
|
|
const getPet = async () => { |
|
|
|
if (!isLogin.value) return; |
|
|
|
|
|
|
|
let response = await getpetList({ |
|
|
|
userId: userInfo.value.userId |
|
|
|
}); |
|
|
@ -304,28 +348,6 @@ |
|
|
|
modal.value.open(); |
|
|
|
} |
|
|
|
|
|
|
|
// 跳转提现 |
|
|
|
const toWithdrawDeposit = () => { |
|
|
|
uni.navigateTo({ |
|
|
|
url: "/otherPages/binding/withdrawal/index" |
|
|
|
// url: "/otherPages/myOrdersManage/withdrawal/index" |
|
|
|
}) |
|
|
|
} |
|
|
|
|
|
|
|
//跳转保证金 |
|
|
|
const toBail = () => { |
|
|
|
uni.navigateTo({ |
|
|
|
url: "/otherPages/myOrdersManage/bond/index" |
|
|
|
}) |
|
|
|
} |
|
|
|
|
|
|
|
// 跳转我的宠物 |
|
|
|
const toMyPet = () => { |
|
|
|
uni.navigateTo({ |
|
|
|
url: '/otherPages/userManage/pet/index' |
|
|
|
}); |
|
|
|
} |
|
|
|
|
|
|
|
const close = () => { |
|
|
|
show.value = false; |
|
|
|
} |
|
|
@ -348,6 +370,8 @@ |
|
|
|
// 取消退出登录回调 |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
</script> |
|
|
|
<style scoped lang="scss"> |
|
|
|
@import "index"; |
|
|
|