sadjv3_jishi/pages/index/technicianLevel.vue

359 lines
7.8 KiB
Vue
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<template>
<view class="content">
<view class="nav-tab">
<image src="../../static/index/fanhui.png" mode="" @click="fanhui()"></image>
<span class="nav-title">技师等级</span>
<span class="nav-btn"></span>
</view>
<view class="mian">
<view class="header">
<view class="header-right">
<view class="header-right-top">
<span>当前周期</span>
<span>{{ artificerData.beginTime }}~{{ artificerData.finishTime }}</span>
</view>
<view class="header-right-text">
<view v-if="ultimately">
<view v-if="lastGrade">
上周期等级{{lastGrade}}
</view>
<view v-if="grade">
本周期到达等级{{grade}}
</view>
<view v-if="maxStatus==true">
已满级
</view>
<view v-else>
<view>升级到{{differenceGrade}}还差</view>
<span v-if="differenceDurationOnline">
{{differenceDurationOnline}}小时
</span>
<span v-if="differenceOutstandingAchievement">
{{differenceOutstandingAchievement}}业绩
</span>
<span v-if="differenceIntegral">
{{differenceIntegral}}积分
</span>
</view>
</view>
<view v-else>
备注: 本期等级是根据技师上个周期的业绩最终计算得出
</view>
</view>
</view>
<view class="header-right-bottom">
<view class="djimg">{{ artificerData.grade }}</view>
<!---<view class="djimg-text">当期等级</view>-->
</view>
</view>
<view class="mian-view">
<view class="mian-list" v-for="(item, index) in ArtificerLevelList" :key="item.id">
<view class="mian-list-top">
<view>
<view class="djimg-s">{{ item.grade }}</view>
</view>
<view class="fencheng">
<span>分成比例 </span>
<span>{{ item.proportionalSharing*100 }}%</span>
</view>
</view>
<view class="mian-list-bottom">
<view class="mian-list-view">
<span>{{ item.durationOnline }}h</span>
<span>在线时长</span>
</view>
<view class="mian-list-view">
<span>{{ item.outstandingAchievement }}</span>
<span>最低业绩</span>
</view>
<!-- <view class="mian-list-view">
<span>{{ item.clockRate*100 }}%</span>
<span>加钟率</span>
</view> -->
<view class="mian-list-view">
<span>{{ item.integral }}</span>
<span>积分</span>
</view>
</view>
</view>
</view>
</view>
</view>
</template>
<script>
import empty from '@/components/empty.vue'
export default {
components: {
empty
},
data() {
return {
userId: 0,
page: 1,
limit: 10,
artificerData: {},
ArtificerLevelList: [],
ultimately: "",
lastGrade: "",
grade: "",
maxStatus: "",
differenceDurationOnline: "",
differenceOutstandingAchievement: "",
differenceIntegral: "",
differenceGrade: "",
}
},
onLoad(e) {
this.ultimately = e.ultimately;
this.lastGrade = e.lastGrade;
this.grade = e.grade;
this.maxStatus = e.maxStatus;
this.differenceDurationOnline = e.differenceDurationOnline;
this.differenceOutstandingAchievement = e.differenceOutstandingAchievement;
this.differenceIntegral = e.differenceIntegral;
this.differenceGrade = e.differenceGrade;
this.getArtificerLevels();
},
methods: {
fanhui(){
uni.switchTab({
url:'/pages/index/index'
})
},
getArtificerLevels() {
let artificerId = uni.getStorageSync("artificerId");
let data = {
page: 1,
limit: 100,
artificerId: artificerId
}
this.$Request.get("/app/artificer/integral/getArtificerLevels",data).then((res) => {
if (res && res.code === 0) {
this.artificerData = res.artificerData;
this.ArtificerLevelList = res.levelData.records;
}
})
}
}
}
</script>
<style scoped>
.djimg-s{
position: absolute;
top: 0;
background: url(../../static/images/index/vip.png) no-repeat center;
background-size: cover;
width: 96.39rpx;
height:74rpx;
text-align: center;
line-height: 43px;
font-weight: bold;
font-size: 23rpx;
color: #FFFFFF;
}
.mian-list-view span:nth-child(1){
font-size: 40rpx;
color: #019c88;
font-weight: bold;
}
.mian-list-view span:nth-child(2){
font-size: 24rpx;
color: #333;
margin-top: 2px;
}
.mian-list-view{
width: 25%;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
}
.mian-list-bottom{
width: 100%;
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: center;
margin-top: 40rpx;
}
.fencheng span{
font-size: 25rpx;
}
.fencheng span:nth-child(1){
color: #333333;
}
.fencheng span:nth-child(2){
color: #FE912A;
margin-top: 2px;
margin-left: 5px;
font-weight: bold;
}
.fencheng{
display: flex;
flex-direction: row;
align-items: center;
}
.xinren{
font-weight: bold;
font-size: 23rpx;
color: #333333;
}
.mian-list-top{
width: 100%;
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
margin-bottom: 10px;
}
.mian-list{
width: 100%;
background: #F7F7F7;
border-radius: 14rpx;
display: flex;
flex-direction: column;
padding: 15px;
margin-bottom: 10px;
position: relative;
}
.mian-view{
width: 90%;
display: flex;
flex-direction: column;
position: absolute;
top: 0;
margin-top: 160px;
}
.djimg-text{
font-size: 23rpx;
color: #FFFFFF;
}
.djimg {
position: absolute;
right: 20px;
top: 0;
background: url(../../static/images/index/vip.png) no-repeat center;
background-size: cover;
width: 198rpx;
height: 80px;
text-align: center;
line-height: 96px;
font-weight: normal;
font-size: 40rpx;
color: #FEFEFE;
font-style: italic;
font-weight: bold;
}
.header-right-bottom{
width: 30%;
display: flex;
flex-direction: column;
align-items: center;
justify-content: space-evenly;
margin-top: 20px;
margin-right: 6px;
}
.header-right-text{
margin-top: 10px;
font-size: 26rpx;
color: #FFFFFF;
}
.header-right-top span:nth-child(1){
width: 126rpx;
height: 34rpx;
text-align: center;
line-height: 36rpx;
font-size: 24rpx;
color: #843200;
background: linear-gradient(-36deg, #FFE45A, #FFBB46);
border-radius: 15rpx 0rpx 15rpx 0rpx;
}
.header-right-top span:nth-child(2){
font-size: 24rpx;
color: #FFF5BC;
margin-left: 5px;
}
.header-right-top{
width: 100%;
display: flex;
flex-direction: row;
align-items: center;
margin-top: 16px;
}
.header-right{
width: 100%;
display: flex;
flex-direction: column;
align-items: center;
}
.header{
width: 100%;
padding: 13px 20px;
height: 263rpx;
display: flex;
flex-direction: row;
justify-content: space-between;
background: linear-gradient(-90deg, #019C88, #1BB9A5, #029D88);
border-top-left-radius: 56rpx;
border-top-right-radius: 56rpx;
position: relative;
}
.mian{
width: 95%;
height: 100%;
display: flex;
flex-direction: column;
align-items: center;
background-color: #fff;
border-radius: 56rpx;
position: relative;
}
.nav-btn{
display: inline-block;
width: 49rpx;
height: 24rpx;
}
.nav-title{
font-weight: bold;
font-size: 38rpx;
color: #17181C;
}
.nav-tab image{
width: 15.42rpx;
height: 27.64rpx;
}
.nav-tab{
width: 100%;
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
padding: 30px 10px 10px 10px;
}
.content{
width: 100%;
height: 100vh;
background-image: url('../../static/index/swim.jpg');
background-repeat: no-repeat;
background-size: 100%;
display: flex;
flex-direction: column;
align-items: center;
padding-bottom: 30px;
}
.be-remarks{
border: 1px dashed #FE912E;
padding: 10rpx 20rpx;
border-radius: 8rpx;
color: #fe912E;
font-size: 24rpx;
}
</style>