调整bug
parent
8ae783ebe4
commit
7640b848e0
|
@ -0,0 +1,96 @@
|
|||
<template>
|
||||
<view style="">
|
||||
<view class="" style="position: fixed;bottom: 0;background-color: rgba(0, 0,0, .5);top: 0;left: 0;right: 0;">
|
||||
<view class="" style="position: absolute;bottom: 0;left: 0;right: 0; background-color: #FFFFFF;padding-top: 20rpx;">
|
||||
<view class="disjbac pad-zy20">
|
||||
<view @tap="chooseEv(0)" class="pad-sx10 pad-zy30 bacf5 radius10 col9">取消</view>
|
||||
<view @tap="chooseEv(1)" class="pad-sx10 pad-zy30 pbackc radius10 colf">选择</view>
|
||||
</view>
|
||||
<picker-view :indicator-style="indicatorStyle" :value="value" @change="bindChange" class="picker-view">
|
||||
<picker-view-column>
|
||||
<view class="item" v-for="(item,index) in years" :key="index">{{item}}</view>
|
||||
</picker-view-column>
|
||||
<picker-view-column>
|
||||
<view class="item" v-for="(item,index) in months" :key="index">{{item < 10 ? '0'+item : item}}</view>
|
||||
</picker-view-column>
|
||||
<picker-view-column>
|
||||
<view class="item" v-for="(item,index) in days" :key="index">{{item < 10 ? '0'+item : item}}</view>
|
||||
</picker-view-column>
|
||||
<picker-view-column>
|
||||
<view class="item">-</view>
|
||||
</picker-view-column>
|
||||
<picker-view-column>
|
||||
<view class="item" v-for="(item,index) in years" :key="index">{{item}}</view>
|
||||
</picker-view-column>
|
||||
<picker-view-column>
|
||||
<view class="item" v-for="(item,index) in months" :key="index">{{item < 10 ? '0'+item : item}}</view>
|
||||
</picker-view-column>
|
||||
<picker-view-column>
|
||||
<view class="item" v-for="(item,index) in days" :key="index">{{item < 10 ? '0'+item : item}}</view>
|
||||
</picker-view-column>
|
||||
</picker-view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name:"time-date",
|
||||
data() {
|
||||
const date = new Date()
|
||||
const years = []
|
||||
const year = date.getFullYear()
|
||||
const months = []
|
||||
const month = date.getMonth() + 1
|
||||
const days = []
|
||||
const day = date.getDate()
|
||||
for (let i = 1990; i <= date.getFullYear(); i++) {
|
||||
years.push(i)
|
||||
}
|
||||
for (let i = 1; i <= 12; i++) {
|
||||
months.push(i)
|
||||
}
|
||||
for (let i = 1; i <= 31; i++) {
|
||||
days.push(i)
|
||||
}
|
||||
return {
|
||||
title: 'picker-view',
|
||||
years,
|
||||
year,
|
||||
months,
|
||||
month,
|
||||
days,
|
||||
day,
|
||||
value: [9999, month - 1, day - 1,9999, 9999 , month - 1, day - 1],
|
||||
indicatorStyle: `height: 50px;`,
|
||||
timestr:''
|
||||
};
|
||||
},
|
||||
mounted() {},
|
||||
methods:{
|
||||
bindChange: function (e) {
|
||||
const val = e.detail.value
|
||||
this.timestr = `${this.years[val[0]]}-${this.months[val[1]] < 10 ? '0'+this.months[val[1]] : '0'+this.months[val[1]]}-${this.days[val[2]] < 10 ? '0'+this.days[val[2]] : this.days[val[2]]},${this.years[val[4]]}-${this.months[val[5]] < 10 ? '0'+this.months[val[5]] : this.months[val[5]]}-${this.days[val[6]] < 10 ? '0'+this.days[val[6]] : this.days[val[6]]}`
|
||||
},
|
||||
chooseEv(index){
|
||||
this.$emit('chooseEv',{time:this.timestr,num:index});
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style>
|
||||
.picker-view {
|
||||
width: 750rpx;
|
||||
height: 600rpx;
|
||||
margin-top: 20rpx;
|
||||
}
|
||||
.item {
|
||||
height: 50px!important;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
text-align: center;
|
||||
}
|
||||
</style>
|
|
@ -169,10 +169,18 @@
|
|||
<!-- 其他 -->
|
||||
<view class="home-fun-box">
|
||||
<view class="fun-title col3 fon28 disac bold">其他</view>
|
||||
<view class="disac mar-s60 mar-x20">
|
||||
<view class="disac mar-s60 mar-x20" v-if="role==3">
|
||||
<view @tap="otherEv(index)" class="disjcac fc width25" v-for="(item,index) in otherList" :key="index">
|
||||
<view class="posir" style="height: 58rpx;">
|
||||
<image :style="{width: [58,49,58][index]+'rpx',height:[51,58,55][index] + 'rpx'}" style="width: 58rpx;" :src="item.imgsrc" mode="widthFix"></image>
|
||||
<image :style="{width: [58,49,56,58][index]+'rpx',height:[51,58,58,55][index] + 'rpx'}" style="width: 58rpx;" :src="item.imgsrc" mode="widthFix"></image>
|
||||
</view>
|
||||
<view class="fon24 col3 mar-s10">{{item.title}}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="disac mar-s60 mar-x20" v-else>
|
||||
<view @tap="otherEv(index)" class="disjcac fc width25" v-for="(item,index) in otherList" :key="index" v-if="index!=2">
|
||||
<view class="posir" style="height: 58rpx;">
|
||||
<image :style="{width: [58,49,56,58][index]+'rpx',height:[51,58,58,55][index] + 'rpx'}" style="width: 58rpx;" :src="item.imgsrc" mode="widthFix"></image>
|
||||
</view>
|
||||
<view class="fon24 col3 mar-s10">{{item.title}}</view>
|
||||
</view>
|
||||
|
@ -263,6 +271,7 @@
|
|||
otherList:[
|
||||
{imgsrc:'/static/public/icon-home-largeScreen.png',title:'维保统计'},
|
||||
{imgsrc:'/static/public/icon-home-reportForm.png',title:'数据看板'},
|
||||
{imgsrc:'/static/public/icon-home-status.png',title:'人员状态'},
|
||||
{imgsrc:'/static/public/icon-home-product.png',title:'新产品'},
|
||||
],
|
||||
// 解决方案
|
||||
|
@ -460,8 +469,12 @@
|
|||
let otherUrls = [
|
||||
'/pagesA/faultStatistics/faultStatistics',
|
||||
'/pagesA/faultStatistics/projectOverview',
|
||||
'/pagesA/peopleManagement/peopleManagement',
|
||||
'/pagesB/new-product/new-product',
|
||||
];
|
||||
if(this.role!=3 && index==2) {
|
||||
otherUrls[index] = '/pagesB/new-product/new-product';
|
||||
}
|
||||
uni.navigateTo({
|
||||
url:otherUrls[index]
|
||||
})
|
||||
|
|
|
@ -160,7 +160,7 @@
|
|||
if (res.code) {
|
||||
this.projectObj = res.data;
|
||||
this.imgNum = this.projectObj.completed_img.length;
|
||||
this.projectGK = this.projectObj.project_overview_min;//项目概况
|
||||
this.projectGK = this.projectObj.project_overview;//项目概况
|
||||
this.project_material = this.projectObj.project_material;//项目材料
|
||||
} else {
|
||||
|
||||
|
|
|
@ -34,7 +34,7 @@
|
|||
<view class="fault-type">
|
||||
<view class="settlement-type-title">维保类型</view>
|
||||
<view class="charts-box">
|
||||
<qiun-data-charts type="ring" :chartData="chartData" background="none" />
|
||||
<qiun-data-charts type="ring" :chartData="chartData" />
|
||||
</view>
|
||||
</view>
|
||||
<view class="brand-analysis">
|
||||
|
@ -58,18 +58,21 @@
|
|||
</view>
|
||||
</view>
|
||||
</container-subgroup-two>
|
||||
|
||||
<view v-if="timeVisit">
|
||||
<timeDate @chooseEv="chooseEv"></timeDate>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import containerSubgroupTwo from '@/components/containers/container-subgroup-two.vue';
|
||||
|
||||
import timeDate from '@/components/time/time-date';
|
||||
import statusNav from '../../components/status-nav.vue';
|
||||
export default {
|
||||
components: {
|
||||
statusNav,
|
||||
containerSubgroupTwo
|
||||
containerSubgroupTwo,
|
||||
timeDate
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
|
@ -100,14 +103,12 @@
|
|||
],
|
||||
// 维保类型
|
||||
chartData: {
|
||||
series: [{
|
||||
format: "tooltipDemo1",
|
||||
data: []
|
||||
}]
|
||||
series: [{data: []}]
|
||||
},
|
||||
// 品牌分析
|
||||
brandAnalysis:[],
|
||||
timestr:'all'
|
||||
timestr:'all',
|
||||
timeVisit:false,
|
||||
|
||||
}
|
||||
},
|
||||
|
@ -135,12 +136,14 @@
|
|||
let obj = {
|
||||
name: key,
|
||||
value: parseFloat(res.data.fault_type[key]),
|
||||
style: "straight",
|
||||
color: ""
|
||||
|
||||
}
|
||||
fault_type.push(obj)
|
||||
}
|
||||
fault_type = fault_type.reverse();
|
||||
this.chartData.series[0].data = fault_type;
|
||||
this.chartData.series[0].format = "customToolTip";
|
||||
this.chartData.series[0].data[0].color = '#56ddff';
|
||||
this.chartData.series[0].data[1].color = '#2d8dfe';
|
||||
this.chartData.series[0].data[2].color = '#7f90a4';
|
||||
|
@ -158,7 +161,8 @@
|
|||
this.timestr = 'all';
|
||||
break;
|
||||
case 1:
|
||||
this.timestr = 'all';
|
||||
this.timeVisit = true;
|
||||
// this.timestr = 'all';
|
||||
break;
|
||||
case 2:
|
||||
this.timestr = 'yesterday';
|
||||
|
@ -170,12 +174,21 @@
|
|||
this.timestr = 'month';
|
||||
break;
|
||||
}
|
||||
if(index!=1) {
|
||||
this.checkTJ();
|
||||
}
|
||||
},
|
||||
getPercentage(num, max) {
|
||||
return Math.ceil(((num - 0) / (max - 0)) * 100) + "%"
|
||||
},
|
||||
// 时段改变事件
|
||||
chooseEv(obj){
|
||||
if(obj.num) {
|
||||
this.timestr = obj.time;
|
||||
this.checkTJ();
|
||||
}
|
||||
this.timeVisit = false;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
@ -316,7 +329,6 @@
|
|||
}
|
||||
|
||||
.charts-box {
|
||||
margin: auto;
|
||||
margin-top: 50rpx;
|
||||
width: 100%;
|
||||
height: 330rpx;
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
<template>
|
||||
<view class="content">
|
||||
<statusNav navBarTitle="数据看板"></statusNav>
|
||||
<statusNav navBarTitle="数据看板" returnColor="#c2c2c2"></statusNav>
|
||||
<container-subgroup-two>
|
||||
<view slot="content" style="margin: 0 -30rpx;">
|
||||
<view class="project-overview">
|
||||
|
@ -8,11 +8,11 @@
|
|||
<view class="project-gross">
|
||||
<view class="project-gross-title">累计总项目量</view>
|
||||
<view class="project-gross-num">
|
||||
<view class="li">0</view>
|
||||
<view class="li">2</view>
|
||||
<view class="li">9</view>
|
||||
<view class="li">8</view>
|
||||
<view class="li">5</view>
|
||||
<view class="li">{{projectCount[4] || 0}}</view>
|
||||
<view class="li">{{projectCount[3] || 0}}</view>
|
||||
<view class="li">{{projectCount[2] || 0}}</view>
|
||||
<view class="li">{{projectCount[1] || 0}}</view>
|
||||
<view class="li">{{projectCount[0] || 0}}</view>
|
||||
</view>
|
||||
<view class="project-gross-box">
|
||||
<view class="li">
|
||||
|
@ -20,15 +20,15 @@
|
|||
<view class="date-con">
|
||||
<view class="date-con-li">
|
||||
<view class="text">新增项目量</view>
|
||||
<view class="single-amount">0单</view>
|
||||
<view class="single-amount">{{today.project_count}}单</view>
|
||||
</view>
|
||||
<view class="date-con-li">
|
||||
<view class="text">新增工单量</view>
|
||||
<view class="single-amount">0单</view>
|
||||
<view class="single-amount">{{today.order_count}}单</view>
|
||||
</view>
|
||||
<view class="date-con-li">
|
||||
<view class="text">项目维保率</view>
|
||||
<view class="single-amount">0单</view>
|
||||
<view class="single-amount">{{today.project_rate}}</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
@ -37,15 +37,15 @@
|
|||
<view class="date-con">
|
||||
<view class="date-con-li">
|
||||
<view class="text">新增项目量</view>
|
||||
<view class="single-amount">0单</view>
|
||||
<view class="single-amount">{{week.project_count}}单</view>
|
||||
</view>
|
||||
<view class="date-con-li">
|
||||
<view class="text">新增工单量</view>
|
||||
<view class="single-amount">0单</view>
|
||||
<view class="single-amount">{{week.order_count}}单</view>
|
||||
</view>
|
||||
<view class="date-con-li">
|
||||
<view class="text">项目维保率</view>
|
||||
<view class="single-amount">0单</view>
|
||||
<view class="single-amount">{{week.project_rate}}</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
@ -54,15 +54,15 @@
|
|||
<view class="date-con">
|
||||
<view class="date-con-li">
|
||||
<view class="text">新增项目量</view>
|
||||
<view class="single-amount">0单</view>
|
||||
<view class="single-amount">{{month.project_count}}单</view>
|
||||
</view>
|
||||
<view class="date-con-li">
|
||||
<view class="text">新增工单量</view>
|
||||
<view class="single-amount">0单</view>
|
||||
<view class="single-amount">{{month.order_count}}单</view>
|
||||
</view>
|
||||
<view class="date-con-li">
|
||||
<view class="text">项目维保率</view>
|
||||
<view class="single-amount">0单</view>
|
||||
<view class="single-amount">{{month.project_rate}}</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
@ -73,7 +73,7 @@
|
|||
<view class="settlement-type-title">年度项目数据明细</view>
|
||||
<view class="">
|
||||
<view class="charts-box">
|
||||
<qiun-data-charts type="mix" :chartData="chartData" background="none" />
|
||||
<qiun-data-charts type="mix" :opts="opts" :chartData="chartData" background="none" />
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
@ -83,42 +83,18 @@
|
|||
<view class="serve-data-left">
|
||||
<view class="title">本月服务量</view>
|
||||
<view class="text-con">
|
||||
<view class="li">
|
||||
<view class="text">维保工单:</view>
|
||||
<view class="num">3</view>
|
||||
</view>
|
||||
<view class="li">
|
||||
<view class="text">巡检服务单:</view>
|
||||
<view class="num">65465</view>
|
||||
</view>
|
||||
<view class="li">
|
||||
<view class="text">移屏服务单:</view>
|
||||
<view class="num">32132</view>
|
||||
</view>
|
||||
<view class="li">
|
||||
<view class="text">拆屏工单:</view>
|
||||
<view class="num">32132</view>
|
||||
<view class="li" v-for="(item,index) in serviceData.month" :key="index">
|
||||
<view class="text">{{item.title}}:</view>
|
||||
<view class="num">{{item.num}}</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="serve-data-left">
|
||||
<view class="title">累计服务量</view>
|
||||
<view class="text-con">
|
||||
<view class="li">
|
||||
<view class="text">维保工单:</view>
|
||||
<view class="num">3</view>
|
||||
</view>
|
||||
<view class="li">
|
||||
<view class="text">巡检服务单:</view>
|
||||
<view class="num">65465</view>
|
||||
</view>
|
||||
<view class="li">
|
||||
<view class="text">移屏服务单:</view>
|
||||
<view class="num">32132</view>
|
||||
</view>
|
||||
<view class="li">
|
||||
<view class="text">拆屏工单:</view>
|
||||
<view class="num">32132</view>
|
||||
<view class="li" v-for="(item,index) in serviceData.allArr" :key="index">
|
||||
<view class="text">{{item.title}}:</view>
|
||||
<view class="num">{{item.num}}</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
@ -128,7 +104,7 @@
|
|||
<view class="settlement-type-title">年度服务数据汇总</view>
|
||||
<view class="">
|
||||
<view class="charts-box">
|
||||
<qiun-data-charts type="mix" :chartData="chartDataA" background="none" />
|
||||
<qiun-data-charts type="mix" :opts="opts2" :chartData="chartDataA" background="none" />
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
@ -140,25 +116,10 @@
|
|||
<view class="work-order">工单</view>
|
||||
<view class="date">日期</view>
|
||||
</view>
|
||||
<view class="li-text li">
|
||||
<view class="name">1.五岭新天地二期停车场xxxxxxxxxxxxx</view>
|
||||
<view class="work-order">6</view>
|
||||
<view class="date">22/2/24</view>
|
||||
</view>
|
||||
<view class="li-text li">
|
||||
<view class="name">1.五岭新天地二期停车场xxxxxxxxxxxxx</view>
|
||||
<view class="work-order">6</view>
|
||||
<view class="date">22/2/24</view>
|
||||
</view>
|
||||
<view class="li-text li">
|
||||
<view class="name">1.五岭新天地二期停车场xxxxxxxxxxxxx</view>
|
||||
<view class="work-order">6</view>
|
||||
<view class="date">22/2/24</view>
|
||||
</view>
|
||||
<view class="li-text li">
|
||||
<view class="name">1.五岭新天地二期停车场xxxxxxxxxxxxx</view>
|
||||
<view class="work-order">6</view>
|
||||
<view class="date">22/2/24</view>
|
||||
<view class="li-text li" v-for="(item,index) in warranty_expires" :key="index">
|
||||
<view class="name">{{index+1}}、{{item.project_name}}</view>
|
||||
<view class="work-order">{{item.order_count}}</view>
|
||||
<view class="date">{{item.joint_end_time.slice(2)}}</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
@ -177,32 +138,10 @@
|
|||
},
|
||||
data() {
|
||||
return {
|
||||
chartDataA: {
|
||||
categories: ["1月","2月","3月","4月","5月","6月"],
|
||||
series: [
|
||||
{
|
||||
name: "",
|
||||
index: 1,
|
||||
data: [40,30,55,110,24,58],
|
||||
type: "column",
|
||||
"color": "#308de1"
|
||||
},
|
||||
{
|
||||
"name": "",
|
||||
"data": [40,30,55,110,24,58],
|
||||
"type": "line",
|
||||
"color": "#308de1"
|
||||
},
|
||||
{
|
||||
"name": "",
|
||||
"index": 2,
|
||||
"data": [40,30,55,110,24,58],
|
||||
"type": "point",
|
||||
"color": "#308de1"
|
||||
}
|
||||
|
||||
]
|
||||
},
|
||||
projectCount:[],//累计总项目量
|
||||
today:'',//今日数据
|
||||
week:'',//本周数据
|
||||
month:'',//本月数据
|
||||
chartData: {
|
||||
categories: ["1月","2月","3月","4月","5月","6月"],
|
||||
series: [
|
||||
|
@ -211,23 +150,130 @@
|
|||
index: 1,
|
||||
data: [40,30,55,110,24,58],
|
||||
type: "column",
|
||||
"color": "#fe4141"
|
||||
color: "#fe4141"
|
||||
},
|
||||
{
|
||||
"name": "",
|
||||
"data": [40,30,55,110,24,58],
|
||||
"type": "line",
|
||||
"color": "#fe4141"
|
||||
name: "",
|
||||
data: [40,30,55,110,24,58],
|
||||
type: "line",
|
||||
color: "#fe4141"
|
||||
},
|
||||
{
|
||||
"name": "",
|
||||
"index": 2,
|
||||
"data": [40,30,55,110,24,58],
|
||||
"type": "point",
|
||||
"color": "#fe4141"
|
||||
name: "",
|
||||
index: 2,
|
||||
data: [40,30,55,110,24,58],
|
||||
type: "point",
|
||||
color: "#fe4141"
|
||||
}
|
||||
]
|
||||
},
|
||||
opts: {
|
||||
padding: [15,15,0,15],
|
||||
legend: {},
|
||||
fontColor:'#FF0000',
|
||||
yAxis: {
|
||||
disabled: false,
|
||||
disableGrid: false,
|
||||
splitNumber: 5,
|
||||
gridType: "solid",
|
||||
dashLength: 4,
|
||||
gridColor: "#CCCCCC",
|
||||
padding: 10,
|
||||
showTitle: true,
|
||||
data: [
|
||||
{
|
||||
min: 0,
|
||||
max: 5000,
|
||||
},
|
||||
{
|
||||
min: 0,
|
||||
max: 5000,
|
||||
},
|
||||
{
|
||||
min: 0,
|
||||
max: 5000,
|
||||
}
|
||||
]
|
||||
},
|
||||
extra: {
|
||||
mix: {
|
||||
column: {
|
||||
linearType:"custom",
|
||||
width: 20,
|
||||
linearOpacity:0.6,
|
||||
customColor:["#FF0000","#fc7575"],
|
||||
},
|
||||
}
|
||||
},
|
||||
},
|
||||
serviceData:{month:[],allArr:[]},//服务数据
|
||||
chartDataA: {
|
||||
categories: ["1月","2月","3月","4月","5月","6月"],
|
||||
series: [
|
||||
{
|
||||
name: "",
|
||||
index: 1,
|
||||
data: [40,30,55,110,24,58],
|
||||
type: "column",
|
||||
color: "#308de1"
|
||||
},
|
||||
{
|
||||
name: "",
|
||||
data: [40,30,55,110,24,58],
|
||||
type: "line",
|
||||
color: "#308de1"
|
||||
},
|
||||
{
|
||||
name: "",
|
||||
index: 2,
|
||||
data: [40,30,55,110,24,58],
|
||||
type: "point",
|
||||
color: "#308de1"
|
||||
}
|
||||
|
||||
]
|
||||
},
|
||||
opts2: {
|
||||
padding: [15,15,0,15],
|
||||
legend: {},
|
||||
fontColor:'#308de1',
|
||||
yAxis: {
|
||||
disabled: false,
|
||||
disableGrid: false,
|
||||
splitNumber: 5,
|
||||
gridType: "solid",
|
||||
dashLength: 4,
|
||||
gridColor: "#CCCCCC",
|
||||
padding: 10,
|
||||
showTitle: true,
|
||||
data: [
|
||||
{
|
||||
min: 0,
|
||||
max: 5000,
|
||||
},
|
||||
{
|
||||
min: 0,
|
||||
max: 5000,
|
||||
},
|
||||
{
|
||||
min: 0,
|
||||
max: 5000,
|
||||
}
|
||||
]
|
||||
},
|
||||
extra: {
|
||||
mix: {
|
||||
column: {
|
||||
linearType:"custom",
|
||||
width: 20,
|
||||
linearOpacity:0.6,
|
||||
customColor:["#308de1","#5bc2f2"],
|
||||
},
|
||||
}
|
||||
},
|
||||
},
|
||||
// 质保即将到期项目
|
||||
warranty_expires:[]
|
||||
}
|
||||
},
|
||||
onLoad() {
|
||||
|
@ -238,7 +284,55 @@
|
|||
checkSJ() {
|
||||
this.$requst.get('/universal/api.statistics/data_kanban').then(res=>{
|
||||
if(res.code) {
|
||||
|
||||
// 累计总项目量
|
||||
let projectCountNum = res.data.project_count.toString().split(',');
|
||||
if(projectCountNum.length > 1) {
|
||||
this.projectCount = projectCountNum.reverse();
|
||||
} else {
|
||||
this.projectCount = projectCountNum;
|
||||
}
|
||||
// 今日数据
|
||||
this.today = res.data.today;
|
||||
// 本周数据
|
||||
this.week = res.data.week;
|
||||
// 本月数据
|
||||
this.month = res.data.month;
|
||||
// 年度项目数据明细
|
||||
let yearProject = [[],[]];
|
||||
res.data.project_month.forEach((item,index)=>{
|
||||
if(index < 12) {
|
||||
yearProject[0].push(item.name+'月');
|
||||
yearProject[1].push(item.value);
|
||||
}
|
||||
})
|
||||
this.chartData.categories = yearProject[0];
|
||||
this.chartData.series[0].data = yearProject[1];
|
||||
this.chartData.series[1].data = yearProject[1];
|
||||
this.chartData.series[2].data = yearProject[1];
|
||||
let maxNum = Math.max.apply(null, yearProject[1]);
|
||||
// 服务数据:本月服务量
|
||||
for (let key in res.data.service.month) {
|
||||
this.serviceData.month.push({title: key,num:res.data.service.month[key]});
|
||||
}
|
||||
// 服务数据:累计服务量
|
||||
for (let key in res.data.service.all) {
|
||||
this.serviceData.allArr.push({title: key,num:res.data.service.all[key]});
|
||||
}
|
||||
// 年度服务数据汇总
|
||||
let yearService = [[],[]];
|
||||
res.data.order_month.forEach((item,index)=>{
|
||||
if(index < 12) {
|
||||
yearService[0].push(item.name+'月');
|
||||
yearService[1].push(item.value);
|
||||
}
|
||||
})
|
||||
this.chartDataA.categories = yearService[0];
|
||||
this.chartDataA.series[0].data = yearService[1];
|
||||
this.chartDataA.series[1].data = yearService[1];
|
||||
this.chartDataA.series[2].data = yearService[1];
|
||||
let maxNum2 = Math.max.apply(null, yearService[1]);
|
||||
// 质保即将到期项目
|
||||
this.warranty_expires = res.data.warranty_expires;
|
||||
}
|
||||
})
|
||||
}
|
||||
|
|
|
@ -20,7 +20,7 @@
|
|||
{{item.name}}<text :class="item.isJob ? 'cor' : 'cor1'">({{item.isJob ? '正在作业' : '空闲中'}})</text>
|
||||
</view>
|
||||
</view>
|
||||
<view class="state">已审核</view>
|
||||
<view class="state">{{['未审核','已审核'][item.is_check]}}</view>
|
||||
</view>
|
||||
<view class="con">
|
||||
<image class="img" :src="item.imgsrc" mode="aspectFill"></image>
|
||||
|
@ -43,7 +43,7 @@
|
|||
</view>
|
||||
<view class="bottom">
|
||||
<view class="bottom-content">
|
||||
联系电话: <text class="cor3">{{$toolAll.tools.hideMPhone(item.phone,'x')}}</text>
|
||||
联系电话: <text class="cor3" v-if="item.phone">{{$toolAll.tools.hideMPhone(item.phone,'x')}}</text>
|
||||
</view>
|
||||
<view class="bottom-content">
|
||||
注册时间: <text class="cor3">{{item.time}}</text>
|
||||
|
@ -112,13 +112,14 @@
|
|||
imgsrc:'https://s6.jpg.cm/2022/02/14/L4oDhy.jpg',
|
||||
number:'YG20211207-001',
|
||||
rate:5,
|
||||
num:2,
|
||||
allnum:2000,
|
||||
num:item.pending_order,
|
||||
allnum:item.processed_order,
|
||||
address:item.address,
|
||||
phone:'17366921088',
|
||||
phone:item.phone,
|
||||
time:item.register_time,
|
||||
state: false,
|
||||
isJob: item.is_working ? true : false,
|
||||
is_check:item.is_check
|
||||
}
|
||||
this.dataList.push(obj);
|
||||
})
|
||||
|
|
|
@ -34,14 +34,11 @@
|
|||
<view class="text">项目概况</view>
|
||||
</view>
|
||||
<view class="project-message-content">
|
||||
<view class="li" v-if="projectObj.product_brand">
|
||||
<view class="title-one">
|
||||
<text>品</text>
|
||||
<text>牌:</text>
|
||||
<view class="li" v-for="(item,index) in projectGK" :key="index">
|
||||
<view class="title-one flexs">{{item.name}}:</view>
|
||||
<view class="text">{{item.value}}</view>
|
||||
</view>
|
||||
<view class="text">{{projectObj.product_brand}}</view>
|
||||
</view>
|
||||
<view class="li" v-if="projectObj.product_model">
|
||||
<!-- <view class="li" v-if="projectObj.product_model">
|
||||
<view class="title-one">
|
||||
<text>型</text>
|
||||
<text>号:</text>
|
||||
|
@ -62,7 +59,7 @@
|
|||
<view class="li">
|
||||
<view class="title">竣工日期:</view>
|
||||
<view class="text">2022/01/08</view>
|
||||
</view>
|
||||
</view> -->
|
||||
</view>
|
||||
<view class="record-nav">
|
||||
<view class="li" @click="recordNav(index)" :class="item.state ? 'on' : 'mo'"
|
||||
|
@ -120,7 +117,8 @@
|
|||
list_rows:200,
|
||||
page:1,
|
||||
recordList:[],//记录列表
|
||||
nomoreText:''
|
||||
nomoreText:'',
|
||||
projectGK:[]
|
||||
}
|
||||
},
|
||||
onLoad(op) {
|
||||
|
@ -162,6 +160,7 @@
|
|||
if (res.code) {
|
||||
this.projectObj = res.data;
|
||||
this.imgNum = this.projectObj.completed_img.length;
|
||||
this.projectGK = res.data.project_overview_min;
|
||||
} else {
|
||||
|
||||
}
|
||||
|
@ -330,7 +329,6 @@
|
|||
color: #4d4c4c;
|
||||
font-size: 24rpx;
|
||||
font-weight: bold;
|
||||
width: 93rpx;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
|
||||
|
|
|
@ -83,8 +83,24 @@
|
|||
this.eareWidth = rect.width;
|
||||
}).exec()
|
||||
this.getDistrict();
|
||||
this.getEar();
|
||||
},
|
||||
methods: {
|
||||
// 地区接口
|
||||
getEar() {
|
||||
let params = {
|
||||
pidkey:'',
|
||||
pid:'',
|
||||
all:1
|
||||
}
|
||||
this.$requst.get('/universal/api.other/city',params).then(res=>{
|
||||
if(res.code) {
|
||||
|
||||
} else {
|
||||
this.$toolAll.tools.showToast(res.msg);
|
||||
}
|
||||
})
|
||||
},
|
||||
// 提交保存
|
||||
submitData(){
|
||||
if(this.checkEmpty()) {
|
||||
|
|
Binary file not shown.
After Width: | Height: | Size: 2.1 KiB |
|
@ -94,6 +94,11 @@ const cfu = {
|
|||
return series[index].name + "\n" + series[index].data + '元'
|
||||
}
|
||||
},
|
||||
"customToolTip":function(val, index, series, opts){
|
||||
if(index !== undefined){
|
||||
return series[index].name+series[index].data+'%'
|
||||
}
|
||||
},
|
||||
},
|
||||
//这里演示了自定义您的图表类型的option,可以随意命名,之后在组件上 type="demotype" 后,组件会调用这个花括号里的option,如果组件上还存在opts参数,会将demotype与opts中option合并后渲染图表。
|
||||
"demotype": {
|
||||
|
@ -417,7 +422,7 @@ const cfu = {
|
|||
"width": 30,
|
||||
"activeBgColor": "#000000",
|
||||
"activeBgOpacity": 0.08
|
||||
},
|
||||
}
|
||||
}
|
||||
},
|
||||
"bar": {
|
||||
|
@ -619,7 +624,7 @@ const cfu = {
|
|||
"axisLine": true,
|
||||
"axisLineColor": "#CCCCCC",
|
||||
"calibration": false,
|
||||
"fontColor": "#666666",
|
||||
"fontColor": "#d0d0d0",
|
||||
"fontSize": 13,
|
||||
"rotateLabel": false,
|
||||
"itemCount": 5,
|
||||
|
@ -642,22 +647,23 @@ const cfu = {
|
|||
"gridType": "solid",//dash:虚线 solid:实线
|
||||
"dashLength": 4,
|
||||
"gridColor": "#CCCCCC",
|
||||
"fontColor": "#666666",
|
||||
"padding": 10,
|
||||
"showTitle": true,
|
||||
"data": [{
|
||||
"position": "top",
|
||||
"title": "折线"
|
||||
"title": "折线",
|
||||
"fontColor": "#d0d0d0",
|
||||
},
|
||||
{
|
||||
"position": "top",
|
||||
"title": "",
|
||||
"textAlign": "left"
|
||||
"fontColor": "#d0d0d0",
|
||||
},
|
||||
{
|
||||
"position": "left",
|
||||
|
||||
"title": "",
|
||||
"textAlign": "left"
|
||||
"fontColor": "#d0d0d0",
|
||||
},
|
||||
|
||||
]
|
||||
|
|
Loading…
Reference in New Issue