Merge branch 'bd-dev' of 47.94.45.65:angelo/web-base-h5 into bd-test

This commit is contained in:
woody 2025-09-16 10:18:04 +08:00
commit 72320830bd
1 changed files with 276 additions and 269 deletions

View File

@ -2,45 +2,61 @@
<view class="width-auto"> <view class="width-auto">
<view class="flexs"> <view class="flexs">
<view class="select-flexs"> <view class="select-flexs">
<picker :range="selYearList" :value="index" range-key="label" @change="changeYear"> <picker
<view style="display: flex; align-items: center;justify-content: space-between;"> :range="selYearList"
<view style="margin-right:40rpx;">{{whatYear}}</view> :value="index"
range-key="label"
@change="changeYear"
>
<view
style="
display: flex;
align-items: center;
justify-content: space-between;
"
>
<view style="margin-right: 40rpx">{{ whatYear }}</view>
<u-icon name="arrow-down" color="#999"></u-icon> <u-icon name="arrow-down" color="#999"></u-icon>
</view> </view>
</picker> </picker>
</view> </view>
<view class="select-flexs"> <view class="select-flexs">
<picker :range="selMounthList" :value="index" range-key="label" @change="bindPickerChange"> <picker
<view style="display: flex; align-items: center;justify-content: space-between;"> :range="selMounthList"
<view style="margin-right:40rpx;">{{whatMounth}}</view> :value="index"
range-key="label"
@change="bindPickerChange"
>
<view
style="
display: flex;
align-items: center;
justify-content: space-between;
"
>
<view style="margin-right: 40rpx">{{ whatMounth }}</view>
<u-icon name="arrow-down" color="#999"></u-icon> <u-icon name="arrow-down" color="#999"></u-icon>
</view> </view>
</picker> </picker>
</view> </view>
<view class="select-flexs" style="margin-left: 20rpx;" @click="showType=true"> <!-- <view class="select-flexs" style="margin-left: 20rpx;" @click="showType=true">
<view style="display: flex; align-items: center;justify-content: space-between;"> <view style="display: flex; align-items: center;justify-content: space-between;">
<view style="margin-right:40rpx;">{{yjName}}</view> <view style="margin-right:40rpx;">{{yjName}}</view>
<u-icon name="arrow-down" color="#999"></u-icon> <u-icon name="arrow-down" color="#999"></u-icon>
</view> </view>
<!-- <picker :range="yjTypeList" :value="index2" range-key="label" @confirm="bindType"></picker> -->
<u-picker @cancel='showType=false' :show="showType" ref="uPicker" :columns="yjTypeList" <u-picker @cancel='showType=false' :show="showType" ref="uPicker" :columns="yjTypeList"
@confirm="bindType" keyName='label'></u-picker> @confirm="bindType" keyName='label'></u-picker>
</view> </view> -->
<!-- <view class="title"> <!-- <view class="title">
导出明细 导出明细
</view> --> </view> -->
</view> </view>
<view class="listrefor bg2"> <view class="listrefor bg2">
<view class="flex_item"> <view class="flex_item">
<view class="text1">左区业绩</view> <view class="text1">左区业绩</view>
<view class="text2">{{ achieveData.leftAchieve || 0 }}</view> <view class="text2">{{ achieveData.leftAchieve || 0 }}</view>
</view> </view>
<view class="flex_item" style="cursor: pointer;" @click="goDetail(1)"> <view class="flex_item" style="cursor: pointer" @click="goDetail(1)">
<view class="text1">左区血缘业绩</view> <view class="text1">左区血缘业绩</view>
<view class="text2">{{ achieveData.leftDirectAchieve || 0 }}</view> <view class="text2">{{ achieveData.leftDirectAchieve || 0 }}</view>
</view> </view>
@ -57,13 +73,12 @@
</view> </view>
</view> </view>
<view class="listrefor bg2"> <view class="listrefor bg2">
<view class="flex_item"> <view class="flex_item">
<view class="text1">右区业绩</view> <view class="text1">右区业绩</view>
<view class="text2">{{ achieveData.rightAchieve || 0 }}</view> <view class="text2">{{ achieveData.rightAchieve || 0 }}</view>
</view> </view>
<view class="flex_item" style="cursor: pointer;" @click="goDetail(2)"> <view class="flex_item" style="cursor: pointer" @click="goDetail(2)">
<view class="text1">右区血缘业绩</view> <view class="text1">右区血缘业绩</view>
<view class="text2">{{ achieveData.rightDirectAchieve || 0 }}</view> <view class="text2">{{ achieveData.rightDirectAchieve || 0 }}</view>
</view> </view>
@ -72,19 +87,12 @@
<view class="text2">{{ achieveData.rightCount || 0 }}</view> <view class="text2">{{ achieveData.rightCount || 0 }}</view>
</view> </view>
</view> </view>
</view> </view>
</template> </template>
<script> <script>
import { import { getPlaceNewAddAchieve, getYjList } from '@/config/distribute.js'
getPlaceNewAddAchieve, export default {
getYjList
} from "@/config/distribute.js";
export default {
data() { data() {
return { return {
index: 0, index: 0,
@ -93,20 +101,24 @@
whatMounth: '', whatMounth: '',
yjType: 1, yjType: 1,
yjName: "全部", yjName: '全部',
showType: false, showType: false,
selMounthList: [], selMounthList: [],
yjTypeList: [], yjTypeList: [],
yearShow:false, yearShow: false,
whatYear:"", whatYear: '',
selYearList:[{ selYearList: [
{
value: 0, value: 0,
label: new Date().getFullYear()-1, label: new Date().getFullYear() - 1,
},{ },
{
value: 1, value: 1,
label: new Date().getFullYear(), label: new Date().getFullYear(),
}], },
mounthList: [{ ],
mounthList: [
{
value: 1, value: 1,
label: 1 + '月', label: 1 + '月',
}, },
@ -152,13 +164,12 @@
}, },
{ {
value: 12, value: 12,
label: 12 + '月' label: 12 + '月',
}, },
], ],
} }
}, },
created() { created() {
this.getMounth() this.getMounth()
this.getYjList() this.getYjList()
setTimeout(() => { setTimeout(() => {
@ -166,10 +177,9 @@
}, 50) }, 50)
}, },
methods: { methods: {
goDetail(index) { goDetail(index) {
uni.navigateTo({ uni.navigateTo({
url:'/pages/performanceEchart/index?ifDetail='+index url: '/pages/performanceEchart/index?ifDetail=' + index,
}) })
}, },
getYjList() { getYjList() {
@ -177,7 +187,7 @@
this.yjTypeList = [res.data] this.yjTypeList = [res.data]
}) })
}, },
changeYear(e){ changeYear(e) {
this.whatYear = this.selYearList[e.detail.value].label this.whatYear = this.selYearList[e.detail.value].label
this.getPlaceNewAddAchieve() this.getPlaceNewAddAchieve()
}, },
@ -195,7 +205,7 @@
getMounth() { getMounth() {
this.whatMounth = new Date().getMonth() + 1 this.whatMounth = new Date().getMonth() + 1
let selMounth = [] let selMounth = []
this.mounthList.forEach((item) => { this.mounthList.forEach(item => {
// if (item.value <= this.whatMounth) { // if (item.value <= this.whatMounth) {
// selMounth.push(item) // selMounth.push(item)
// } // }
@ -203,60 +213,57 @@
}) })
this.selMounthList = selMounth this.selMounthList = selMounth
this.whatYear = new Date().getFullYear() this.whatYear = new Date().getFullYear()
}, },
getPlaceNewAddAchieve() { getPlaceNewAddAchieve() {
getPlaceNewAddAchieve({ getPlaceNewAddAchieve({
monthType: this.whatMounth, monthType: this.whatMounth,
achievementType: this.yjType, achievementType: this.yjType,
year:this.whatYear year: this.whatYear,
}).then((res) => { }).then(res => {
this.achieveData = res.data; this.achieveData = res.data
}); })
}
}, },
} },
}
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
::v-deep .uni-picker { ::v-deep .uni-picker {
width: 100%; width: 100%;
} }
.select-flexs { .select-flexs {
border: 1rpx solid #eeeeee;
border: 1rpx solid #EEEEEE;
border-radius: 15rpx; border-radius: 15rpx;
// width: 232rpx; // width: 232rpx;
padding: 20rpx 19rpx; padding: 20rpx 19rpx;
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: space-between; justify-content: space-between;
} }
.flexs { .flexs {
display: flex; display: flex;
// justify-content: space-between; // justify-content: space-between;
border-radius: 30rpx 30rpx 0 0; border-radius: 30rpx 30rpx 0 0;
background-color: #fff; background-color: #fff;
} }
.title { .title {
padding: 10rpx 0; padding: 10rpx 0;
margin-top: 10rpx; margin-top: 10rpx;
} }
.width-auto { .width-auto {
background-color: #fff; background-color: #fff;
padding: 0 22rpx; padding: 0 22rpx;
width: 690rpx; width: 690rpx;
margin: 0 auto; margin: 0 auto;
padding-bottom: 20rpx; padding-bottom: 20rpx;
} }
.listrefor { .listrefor {
color: #FFFFFF; color: #ffffff;
border-radius: 10rpx; border-radius: 10rpx;
padding: 32rpx 21rpx; padding: 32rpx 21rpx;
margin-top: 25rpx; margin-top: 25rpx;
@ -284,17 +291,17 @@
font-weight: bold; font-weight: bold;
margin-top: 30rpx; margin-top: 30rpx;
} }
} }
.bg1 { .bg1 {
background: linear-gradient(180deg, #FC7C7C 0%, #F65757 100%); background: linear-gradient(180deg, #fc7c7c 0%, #f65757 100%);
} }
.bg2 { .bg2 {
background: linear-gradient(180deg, #FF9354 0%, #FF7F36 100%); background: linear-gradient(180deg, #ff9354 0%, #ff7f36 100%);
} }
.bg3 { .bg3 {
background: linear-gradient(180deg, #677AF9 0%, #697BF2 100%); background: linear-gradient(180deg, #677af9 0%, #697bf2 100%);
} }
</style> </style>