263 lines
7.8 KiB
Vue
263 lines
7.8 KiB
Vue
<template>
|
|
<view class="li-mine-page">
|
|
<SafeAreaTop />
|
|
<view class="li-flex li-justify-between li-items-center li-w-94% li-mx-auto li-mt-60">
|
|
<view class="li-flex li-items-center">
|
|
<view class="li-flex li-items-end li-mr-20">
|
|
<image class="li-w-100 li-h-100 li-rd-50% border-4-white" :src="user_info.avatar" mode="">
|
|
</image>
|
|
</view>
|
|
<view class="li-flex li-flex-col">
|
|
<text class="li-text-38 li-text-#000000 li-mb-2">{{user_info.realname}}</text>
|
|
<text class="li-text-24 li-text-#b1bbc7">{{user_info.owner.name}}</text>
|
|
</view>
|
|
</view>
|
|
<image class="li-w-240 li-h-240" :src="mine_back" mode="aspectFill"></image>
|
|
</view>
|
|
<!-- <view class="li-w-70% li-ml-50 li-flex li-justify-between li-items-center">
|
|
<view class="li-flex li-flex-col li-justify-center li-items-center" v-for="(item,index) in incomeList"
|
|
:key="index">
|
|
<text class="li-text-#b1bbc7 li-text-24">{{item.title}}</text>
|
|
<text class="li-text-#010B3E li-text-34 li-mt-6 li-font-bold">{{item.number}}</text>
|
|
</view>
|
|
</view> -->
|
|
<!-- card -->
|
|
<view
|
|
class="li-w-94% li-mx-auto li-flex li-justify-between li-items-center li-py-20 !li-rd-tl-30 !li-rd-tr-30 li-mt-20"
|
|
:style="{backgroundImage:`url(${card_back})`,backgroundSize:'cover',backgroundPosition:'center',borderRadius:'15rpx'}">
|
|
<view class="li-text-#FFFFFF li-flex li-flex-col li-justify-start li-ml-50">
|
|
<text class="li-text-#F8C883 li-text-24">账户余额</text>
|
|
<view class="li-flex li-items-center li-pb-14">
|
|
<text class="li-text-#F2F7FD li-font-bold li-text-32">1120.00</text>
|
|
<text class="li-text-#BBBDDA li-text-20 li-ml-4 li-pt-8">元</text>
|
|
</view>
|
|
</view>
|
|
<view class="li-mr-50">
|
|
<wd-button custom-class="custom-shadow" size="small"> 提现 </wd-button>
|
|
</view>
|
|
</view>
|
|
<!-- 宫格 -->
|
|
<view class="li-w-94% li-mx-auto li-grid-bg li-h-250 li-rd-20 li-mt-26">
|
|
<view class="li-flex li-justify-between li-items-center li-pt-20 li-mx-20">
|
|
<text class="li-text-#19171B li-text-32">待处理工单</text>
|
|
<view class="li-text-#B2B2B2 li-flex li-items-center li-text-24">查看更多<text
|
|
class="ri-arrow-right-s-line"></text></view>
|
|
</view>
|
|
<view class="li-flex li-justify-between li-items-center li-mx-40 li-mt-30">
|
|
<view class="li-flex li-flex-col li-justify-center li-items-center" v-for="(item,index) in workList"
|
|
:key="index" @click="toPages({type:item.type})">
|
|
<wd-badge :hidden="item.number > 0 ? false:true" :modelValue="item.number" top='5' right="-2"
|
|
:max='99'>
|
|
<image class="li-w-60 li-h-60" :src="item.icon" mode=""></image>
|
|
</wd-badge>
|
|
<text class="li-text-#706e70 li-text-26">{{item.title}}</text>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
|
|
<view class="li-w-94% li-mx-auto li-mt-26 li-bg-white li-rd-20 li-pb-20">
|
|
<view class="li-flex li-justify-between li-items-center li-pt-20 li-mx-20 li-pb-10">
|
|
<text class="li-text-#19171B li-text-32">其他功能</text>
|
|
</view>
|
|
<wd-grid class="" :column="4" :clickable="true">
|
|
<wd-grid-item use-icon-slot use-text-slot v-for="(item,index) in frequentlyList" :key="index"
|
|
@click="toPages({type:item.type})">
|
|
<template #icon>
|
|
<wd-badge :hidden="item.number > 0 ? false:true" :modelValue="item.number" top='5' right="-2"
|
|
:max='99'>
|
|
<image class="li-w-50 li-h-50" :src="item.icon" mode=""></image>
|
|
</wd-badge>
|
|
</template>
|
|
<template #text>
|
|
<text class="li-text-#706e70 li-text-24 li-mt-20">{{item.title}}</text>
|
|
</template>
|
|
</wd-grid-item>
|
|
</wd-grid>
|
|
</view>
|
|
</view>
|
|
</template>
|
|
|
|
<script setup lang="ts">
|
|
import SafeAreaTop from '@/components/SafeAreaTop/index.vue'
|
|
import { onShow, onReachBottom, Uni } from "@dcloudio/uni-app"
|
|
import { ref } from "vue"
|
|
declare const uni : Uni
|
|
|
|
const user_info = ref({
|
|
"realname": "里派",
|
|
"avatar": "/static/m_avatar.png",
|
|
"owner": {
|
|
"name": "里派(杭州)网络科技有限公司"
|
|
}
|
|
})
|
|
|
|
const mine_back = uni.$globalData?.RESOURCE_URL + 'mine/mine-back1.png'
|
|
const card_back = uni.$globalData?.RESOURCE_URL + 'mine/card-back.png'
|
|
|
|
const incomeList = ref([
|
|
{
|
|
title: '今日收益',
|
|
number: '60.00'
|
|
}, {
|
|
title: '本月收益',
|
|
number: '300.00'
|
|
}, {
|
|
title: '累计收益',
|
|
number: '6890.00'
|
|
}
|
|
])
|
|
const workList = ref([
|
|
{
|
|
title: '待入库',
|
|
number: 12,
|
|
icon: uni.$globalData?.RESOURCE_URL + 'mine/icon/chuku.png',
|
|
type: 'warehousing',
|
|
}, {
|
|
title: '待配送',
|
|
number: 11,
|
|
icon: uni.$globalData?.RESOURCE_URL + 'mine/icon/peisong.png',
|
|
type: 'my_order_F2',
|
|
}, {
|
|
title: '待报修',
|
|
number: 0,
|
|
icon: uni.$globalData?.RESOURCE_URL + 'mine/icon/baoxiu.png',
|
|
type: 'my_order_F6',
|
|
}, {
|
|
title: '待催缴',
|
|
number: 0,
|
|
icon: uni.$globalData?.RESOURCE_URL + 'mine/icon/cuijiao.png',
|
|
type: 'call'
|
|
}
|
|
])
|
|
const frequentlyList = ref([
|
|
// {
|
|
// title: '投诉管理',
|
|
// number: 0,
|
|
// icon: uni.$globalData?.RESOURCE_URL + 'mine/icon/tousu.png'
|
|
// }, {
|
|
// title: '巡检任务',
|
|
// number: 11,
|
|
// icon: uni.$globalData?.RESOURCE_URL + 'mine/icon/xunjian.png'
|
|
// }, {
|
|
// title: '资产盘点',
|
|
// number: 0,
|
|
// icon: uni.$globalData?.RESOURCE_URL + 'mine/icon/pandian.png'
|
|
// }, {
|
|
// title: '门禁申请',
|
|
// number: 0,
|
|
// icon: uni.$globalData?.RESOURCE_URL + 'mine/icon/menjin.png'
|
|
// },
|
|
{
|
|
title: '用户协议',
|
|
number: 0,
|
|
icon: uni.$globalData?.RESOURCE_URL + 'mine/icon/pandian.png',
|
|
type: 'protocol'
|
|
},
|
|
{
|
|
title: '隐私政策',
|
|
number: 0,
|
|
icon: uni.$globalData?.RESOURCE_URL + 'mine/icon/menjin.png',
|
|
type: 'privacy'
|
|
},
|
|
{
|
|
title: '设置',
|
|
number: 0,
|
|
icon: uni.$globalData?.RESOURCE_URL + 'mine/icon/shezhi.png',
|
|
type: 'setting'
|
|
}
|
|
])
|
|
|
|
|
|
const toPages = (item) => {
|
|
console.log('111111111111');
|
|
switch (item.type) {
|
|
case 'warehousing':
|
|
// 入库
|
|
uni.navigateTo({
|
|
url: '/pagesA/warehousing/index'
|
|
});
|
|
break;
|
|
case 'my_order_F2':
|
|
// 待配送
|
|
uni.navigateTo({
|
|
url: '/pagesA/my_order/list?type=1&status=1'
|
|
});
|
|
break;
|
|
case 'my_order_F6':
|
|
// 待维修
|
|
uni.navigateTo({
|
|
url: '/pagesA/my_order/list?type=2&status=1'
|
|
});
|
|
break;
|
|
case 'call':
|
|
// 入库
|
|
uni.navigateTo({
|
|
url: '/pagesB/call/index'
|
|
});
|
|
break;
|
|
case 'protocol':
|
|
// 用户协议
|
|
uni.navigateTo({
|
|
url: '/pagesB/agreement/index?type=1'
|
|
});
|
|
break;
|
|
case 'privacy':
|
|
// 隐私政策
|
|
uni.navigateTo({
|
|
url: '/pagesB/agreement/index?type=2'
|
|
});
|
|
break;
|
|
case 'setting':
|
|
// 隐私政策
|
|
uni.navigateTo({
|
|
url: '/pagesB/setting/index'
|
|
});
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
|
|
|
|
onShow(async () => {
|
|
const userInfo = await uni.$store.state.userInfos
|
|
userInfo.realname && (user_info.value.realname = userInfo.realname)
|
|
userInfo.avatar && (user_info.value.avatar = userInfo.avatar)
|
|
userInfo.owner.name && (user_info.value.owner.name = userInfo.owner.name)
|
|
})
|
|
</script>
|
|
|
|
<style lang="scss">
|
|
.li-mine-page {
|
|
width: 100%;
|
|
min-height: 100vh;
|
|
background: linear-gradient(to bottom,
|
|
rgba(197, 224, 253, 1.0) 0%,
|
|
rgba(197, 224, 253, 0.8) 20%,
|
|
rgba(248, 248, 248, 1.0) 40%,
|
|
rgba(248, 248, 248, 1.0) 60%,
|
|
rgba(242, 243, 247, 1.0) 80%,
|
|
rgba(242, 243, 247, 1.0) 100%);
|
|
background-attachment: fixed;
|
|
}
|
|
|
|
.li-grid-bg {
|
|
background: linear-gradient(to bottom,
|
|
rgba(197, 224, 253, 0.2) 0%,
|
|
rgba(197, 224, 253, 0.1) 10%,
|
|
rgba(255, 255, 255, 1.0) 40%,
|
|
rgba(255, 255, 255, 1.0) 60%,
|
|
rgba(255, 255, 255, 1.0) 80%,
|
|
rgba(255, 255, 255, 1.0) 100%);
|
|
}
|
|
|
|
.custom-shadow {
|
|
color: #764914 !important;
|
|
background: linear-gradient(to right, #f9dbb7, #f9c580) !important;
|
|
box-shadow: 0 3px 1px -2px rgb(0 0 0 / 20%), 0 2px 2px 0 rgb(0 0 0 / 14%), 0 1px 5px 0 rgb(0 0 0 / 12%);
|
|
}
|
|
|
|
::v-deep .wd-badge__content {
|
|
border: none !important;
|
|
}
|
|
</style> |