浏览代码

代码提交

LiuShu_0203 2 月之前
父节点
当前提交
a6a9ee7b60
共有 10 个文件被更改,包括 972 次插入290 次删除
  1. 84 0
      echarts/EcChart.vue
  2. 7 2
      echarts/jgOrder/DataItem.vue
  3. 387 53
      echarts/jgOrder/statistics.vue
  4. 442 210
      echarts/setting/xyf.vue
  5. 3 3
      my/setting/index.vue
  6. 22 0
      package-lock.json
  7. 1 0
      package.json
  8. 7 6
      pages/index/index.vue
  9. 19 16
      pages/riderMy/index.vue
  10. 二进制
      static/logo.png

+ 84 - 0
echarts/EcChart.vue

@@ -0,0 +1,84 @@
+<template>
+  <!-- 微信小程序使用 ec-canvas -->
+  <view v-if="isMp" class="chart-wrapper">
+    <uni-ec-canvas id="line-chart" :style="{ width, height }" canvas-id="multi-charts-line" :ec="ec" ref="canvas" />
+  </view>
+
+  <!-- H5 / App 使用普通 div 方式挂载 echarts -->
+  <div v-else ref="canvasDom" class="chart-wrapper" :style="{ width, height }" />
+</template>
+
+<script>
+import uniEcCanvas from '@/echarts/uni-ec-canvas/uni-ec-canvas.vue'
+
+export default {
+  name: 'EcChart',
+  components: {
+    uniEcCanvas
+  },
+  props: {
+    chartOption: Object,
+    width: { type: String, default: '100%' },
+    height: { type: String, default: '300px' }
+  },
+  data() {
+    return {
+      ec: {
+        lazyLoad: true
+      },
+      isMp: false
+    }
+  },
+  mounted() {
+    this.isMp = process.env.UNI_PLATFORM === 'mp-weixin'
+
+     this.$nextTick(() => {
+	  setTimeout(() => {
+		if (this.isMp) {
+		  this.$refs.canvas.init(this.initChartMp)
+		} else {
+		  this.initChartWeb()
+		}
+	  }, 100)
+	})
+  },
+ beforeDestroy() {
+   // 只在非小程序端调用 dispose
+   if (!this.isMp && this.chart && typeof this.chart.dispose === 'function') {
+     this.chart.dispose()
+     this.chart = null
+   }
+ },
+  methods: {
+    async initChartWeb() {
+      const echarts = await import('echarts') // npm 安装的 echarts
+      this.chart = echarts.init(this.$refs.canvasDom)
+      this.chart.setOption(this.chartOption)
+      window.addEventListener('resize', () => {
+        this.chart && this.chart.resize()
+      })
+    },
+
+    // 小程序端初始化 chart 实例
+    initChartMp(canvas, width, height, dpr) {
+      const echarts = require('@/echarts/uni-ec-canvas/echarts.min.js')
+      const chart = echarts.init(canvas, null, {
+              width,
+              height,
+              devicePixelRatio: dpr
+            })
+      canvas.setChart(chart)
+      chart.setOption(this.chartOption)
+      this.chart = chart
+      return chart
+    }
+  }
+}
+</script>
+
+<style scoped>
+.chart-wrapper {
+  width: 100%;
+  height: 100%;
+}
+</style>

+ 7 - 2
echarts/jgOrder/DataItem.vue

@@ -3,8 +3,13 @@
 		<view class="data-item-title">{{ dataItem.title }}</view>
 		<view class="data-item-value" :style="{ color: dataItem.valueColor }">{{ dataItem.value }}</view>
 		<view class="data-item-desc">
-			<image v-if="globalImages" :src="globalImages + 'imgs/' + dataItem.status === 'up' ? 'haoyou' : 'shuangyue' + '.png'" style="width: 21rpx;height: 25rpx;"></image>
-			<text style="margin: 0 8rpx;">{{ dataItem.fluctuate }}</text>
+			<!-- <image v-if="globalImages" :src="globalImages + 'imgs/' + dataItem.status === 'up' ? 'haoyou' : 'shuangyue' + '.png'" style="width: 21rpx;height: 25rpx;"></image> -->
+			<image
+			  v-if="globalImages"
+			  :src="globalImages + 'imgs/' + (dataItem.status === 'up' ? 'haoyou' : 'shuangyue') + '.png'"
+			  style="width: 21rpx; height: 21rpx;"
+			></image>
+			<text style="margin: 0 8rpx;">{{ dataItem.fluctuate }}%</text>
 			<text>较昨日</text>
 		</view>
 	</view>

+ 387 - 53
echarts/jgOrder/statistics.vue

@@ -36,14 +36,16 @@
 		<u-card v-show="!show" padding="32" full :showHead="false">
 			<view slot="body" style="width: 100%;height: 400rpx;position: relative;">
 				<BtnGroup v-model="orderSelect" :defaultVal="2" :options="orderOptions"></BtnGroup>
-				<uni-ec-canvas class="uni-ec-canvas" id="order-revenue" canvas-id="order-revenue-chart" :ec="ec1" ref="canvas1"></uni-ec-canvas>
+				<EcChart v-if="optionReady" :chartOption="option" width="100%" height="100%" />
+				<!-- <uni-ec-canvas class="uni-ec-canvas" id="order-revenue" canvas-id="order-revenue-chart" :ec="ec1" ref="canvas1"></uni-ec-canvas> -->
 			</view>
 		</u-card>
 		<view></view>
 		<u-card v-show="!show" padding="32" full :showHead="false">
 			<view slot="body" style="width: 100%;height: 400rpx;position: relative;">
 				<BtnGroup v-model="compareSelect" :defaultVal="2" :options="compareOptions"></BtnGroup>
-				<uni-ec-canvas class="uni-ec-canvas" id="data-compare" canvas-id="data-compare-chart" :ec="ec2" ref="canvas2"></uni-ec-canvas>
+				<EcChart v-if="optionReady2" :chartOption="option2" width="100%" height="100%" />
+				<!-- <uni-ec-canvas class="uni-ec-canvas" id="data-compare" canvas-id="data-compare-chart" :ec="ec2" ref="canvas2"></uni-ec-canvas> -->
 			</view>
 		</u-card>
 	</view>
@@ -52,12 +54,13 @@
 <script>
 	import DataItem from './DataItem.vue'
 	import BtnGroup from './BtnGroup.vue'
-	import uniEcCanvas from '@/echarts/uni-ec-canvas/uni-ec-canvas'
-	import * as echarts from '@/echarts/uni-ec-canvas/echarts.min.js'
+	// import uniEcCanvas from '@/echarts/uni-ec-canvas/uni-ec-canvas'
+	// import * as echarts from '@/echarts/uni-ec-canvas/echarts.min.js'
+	import EcChart from '@/echarts/EcChart.vue'
 	import { waitForGlobalImages } from '@/utils/globalImageLoader'
 	
 	export default {
-		components: { DataItem, BtnGroup, uniEcCanvas },
+		components: { DataItem, BtnGroup, EcChart },
 		data() {
 			return {
 				globalImages: null,
@@ -70,14 +73,19 @@
 					{ title: '完成率', value: '98.7%', status: 'up', fluctuate: '1.2%', bg: '#ECF5FF', valueColor: '#409EFF' },
 					{ title: '平均评分', value: '4.9', status: 'down', fluctuate: '0.1', bg: '#FFE9E9', valueColor: '#F56C6C' },
 				],
-				ec1: {
-					option: {},
-				},
-				ec2: {
-					option: {},
-				},
+				// ec1: {
+				// 	option: {},
+				// },
+				// ec2: {
+				// 	option: {},
+				// },
+				optionReady: false,
+				option: {},
+				optionReady2: false,
+				option2: {},
+				
 				a: '',
-				orderSelect: null,
+				orderSelect: 2,
 				orderOptions: [
 					{ label: '日', value: 1 },
 					{ label: '周', value: 2 },
@@ -94,39 +102,128 @@
 			waitForGlobalImages().then((path) => {
 				this.globalImages = path
 			})
-			setTimeout(() => {
-				this.$nextTick(() => {
-					this.$refs.canvas1.init(this.initChart1)
-					this.$refs.canvas2.init(this.initChart2)
-				})
-			}, 20)
+			// setTimeout(() => {
+			// 	this.$nextTick(() => {
+			// 		this.$refs.canvas1.init(this.initChart1)
+			// 		this.$refs.canvas2.init(this.initChart2)
+			// 	})
+			// }, 20)
+			this.$Request.getT('/app/orderStatistics/getTrend?choose=week').then(res => {
+				if (res.code == 0) {
+					const days = res.data.map(item => item.day)
+					const moneys = res.data.map(item => item.money)
+					const totals = res.data.map(item => item.total)
+					// this.$refs.canvas1.init(this.initChart1)
+					this.setOption(days, moneys, totals)
+				}
+			})
+			this.$Request.getT('/app/orderStatistics/getYoYandQoQ?choose=t').then(res => {
+				if (res.code == 0) {
+					const days = res.data.map(item => item.day)
+					const lastTotals = res.data.map(item => item.lastTotal)
+					const totals = res.data.map(item => item.total)
+					this.setOption2(days, lastTotals, totals)
+				}
+			})
+			this.getStatistics()
 		},
 		watch: {
 			orderSelect(newVal) {
 				if(newVal) {
-					this.$refs.canvas1.init(this.initChart1)
+					// this.$refs.canvas1.init(this.initChart1)
+					this.optionReady = false
+					this.getTrend()
 				}
 			},
 			compareSelect(newVal) {
 				if(newVal) {
-					this.$refs.canvas2.init(this.initChart2)
+					// this.$refs.canvas2.init(this.initChart2)
+					this.optionReady2 = false
+					this.getYoYandQoQ()
 				}
 			},
 		},
 		methods: {
+			// 订单总量 总收入 完成率 平均分接口
+			getStatistics(start, end) {
+				let data = {
+					startTime: start ? start : '',
+					endTime: end ? end : ''
+				}
+				this.$Request.getT('/app/orderStatistics/getStatistics', data).then(res => {
+					if (res.code == 0) {
+						this.overviewData.forEach((item, index) => {
+							if(item.title === '订单总量') {
+								item.value = res.data.total
+								item.fluctuate = res.data.totalChange
+								item.status = res.data.totalChangeSymbol == 0 ? 'up' : 'down'
+							} else if(item.title === '总收入') {
+								item.value = res.data.money
+								item.fluctuate = res.data.moneyChange
+								item.status = res.data.moneyChangeSymbol == 0 ? 'up' : 'down'
+							} else if(item.tite === '完成率') {
+								item.value = res.data.completionRate
+								item.fluctuate = res.data.completionRateChange
+								item.status = res.data.completionRateChangeSymbol == 0 ? 'up' : 'down'
+							} else {
+								item.value = res.data.avg
+								item.fluctuate = res.data.avgChange
+								item.status = res.data.avgChangeSymbol == 0 ? 'up' : 'down'
+							}
+						})
+					}
+				})
+			},
+			// 订单与收入趋势接口
+			getTrend() {
+				let choo = 'week'
+				if (this.orderSelect == 1) {
+					choo = 'day'
+				} else if (this.orderSelect == 2) {
+					choo = 'week'
+				} else {
+					choo = 'month'
+				}
+				this.$Request.getT('/app/orderStatistics/getTrend?choose=' + choo).then(res => {
+					if (res.code == 0) {
+						const days = res.data.map(item => item.day)
+						const moneys = res.data.map(item => item.money)
+						const totals = res.data.map(item => item.total)
+						// this.$refs.canvas1.init(this.initChart1)
+						this.optionReady = false
+						this.option={}
+						this.setOption(days, moneys, totals)
+					}
+				})
+			},
+			// 同比环比接口
+			getYoYandQoQ() {
+				let choo = 't'
+				if (this.compareSelect == 1) {
+					choo = 'h'
+				} else {
+					choo = 't'
+				}
+				this.$Request.getT('/app/orderStatistics/getYoYandQoQ?choose=' + choo).then(res => {
+					if (res.code == 0) {
+						const days = res.data.map(item => item.day)
+						const lastTotals = res.data.map(item => item.lastTotal)
+						const totals = res.data.map(item => item.total)
+						// this.$refs.canvas1.init(this.initChart1)
+						this.optionReady2 = false
+						this.option2={}
+						this.setOption2(days, lastTotals, totals)
+					}
+				})
+			},
 			// { startYear, startMonth, startDay, startDate, startWeek, endYear, endMonth, endDay, endDate, endWeek }
 			bindDateChange(event) {
 				this.timeRange = event.startDate + ' - ' + event.endDate
+				this.getStatistics(event.startDate, event.endDate)
 			},
-			initChart1(canvas, width, height, canvasDpr) {
-				let chart = echarts.init(canvas, null, {
-					width: width,
-					height: height,
-					devicePixelRatio: canvasDpr
-				})
-				
-				canvas.setChart(chart)
-				let option = {
+			setOption(days, moneys, totals) {
+				console.log(days, moneys, totals, 'days, moneys, totals');
+				this.option = {
 					title: {
 					    text: '订单与收入趋势',
 					    left: 0,
@@ -137,8 +234,8 @@
 					},
 					grid: {
 						top: '36%',
-						left: '5%',
-						right: '0%',
+						left: '10%',
+						right: '5%',
 						bottom: '20%',
 						containLabel: true,
 					},
@@ -147,9 +244,20 @@
 						itemGap: 20,
 						data: ['订单量', '收入'],
 					},
+					tooltip: {
+						trigger: 'axis',
+						axisPointer: {
+						  type: 'line'
+						},
+						backgroundColor: 'rgba(0, 193, 138, 0.01)',
+						borderColor: '#00c18a',
+						textStyle: {
+						  color: '#333',
+						},
+					},
 					xAxis: {
 						type: 'category',
-						data: ['周一', '周二', '周三', '周四', '周五', '周六', '周日'],
+						data: days,
 						boundaryGap: ['20%', '20%'],
 						axisTick: {
 							show: false,
@@ -170,6 +278,7 @@
 						{
 							type: 'value',
 							name: '订单量',
+							min: 0,
 							nameGap: 24,
 							nameLocation: 'end',
 							nameTextStyle: {
@@ -197,6 +306,7 @@
 						{
 							type: 'value',
 							name: '收入',
+							min: 0,
 							nameGap: 24,
 							nameLocation: 'end',
 							nameTextStyle: {
@@ -226,7 +336,7 @@
 					series: [
 						{
 							name: '订单量',
-							data: [120, 200, 150, 80, 70, 110, 130],
+							data: totals,
 							type: 'bar',
 							yAxisIndex: 0,
 							itemStyle: {
@@ -237,7 +347,7 @@
 						},
 						{
 							name: '收入',
-							data: [120, 200, 150, 80, 70, 110, 130],
+							data: moneys,
 							type: 'line',
 							yAxisIndex: 1,
 							itemStyle: {
@@ -247,18 +357,10 @@
 						}
 					]
 				}
-				chart.setOption(option)
-				return chart
+				this.optionReady = true // 让组件渲染
 			},
-			initChart2(canvas, width, height, canvasDpr) {
-				let chart = echarts.init(canvas, null, {
-					width: width,
-					height: height,
-					devicePixelRatio: canvasDpr
-				})
-				
-				canvas.setChart(chart)
-				let option = {
+			setOption2(days, lastTotals, totals) {
+				this.option2 = {
 					title: {
 					    text: '数据对比',
 					    left: 0,
@@ -277,12 +379,23 @@
 					legend: {
 						bottom: 0,
 						itemGap: 20,
-						data: ['本周', '上周'],
+						data: [this.compareSelect == 1 ? '本周' : '本年', this.compareSelect == 1 ? '上周' : '去年',],
 						icon: 'roundRect',
 					},
+					tooltip: {
+						trigger: 'axis',
+						axisPointer: {
+						  type: 'line'
+						},
+						backgroundColor: 'rgba(0, 193, 138, 0.1)',
+						borderColor: '#00c18a',
+						textStyle: {
+						  color: '#333',
+						},
+					},
 					xAxis: {
 						type: 'category',
-						data: ['周一', '周二', '周三', '周四', '周五', '周六', '周日'],
+						data: days,
 						boundaryGap: [50, 50],
 						axisTick: {
 							show: false,
@@ -316,8 +429,8 @@
 					},
 					series: [
 						{
-							name: '本周',
-							data: [120, 200, 150, 80, 70, 110, 130],
+							name: this.compareSelect == 1 ? '本周' : '本年',
+							data: totals,
 							type: 'bar',
 							itemStyle: {
 								color: '#F56C6C',
@@ -326,8 +439,8 @@
 							barWidth: 10,
 						},
 						{
-							name: '上周',
-							data: [110, 190, 130, 60, 50, 90, 110],
+							name: this.compareSelect == 1 ? '上周' : '去年',
+							data: lastTotals,
 							type: 'bar',
 							itemStyle: {
 								color: '#00C18A',
@@ -337,9 +450,230 @@
 						}
 					]
 				}
-				chart.setOption(option)
-				return chart
+				this.optionReady2 = true // 让组件渲染
 			},
+			// initChart1(canvas, width, height, canvasDpr) {
+			// 	let chart = echarts.init(canvas, null, {
+			// 		width: width,
+			// 		height: height,
+			// 		devicePixelRatio: canvasDpr
+			// 	})
+				
+			// 	canvas.setChart(chart)
+			// 	let option = {
+			// 		title: {
+			// 		    text: '订单与收入趋势',
+			// 		    left: 0,
+			// 		    top: 0,
+			// 		    textStyle: {
+			// 				fontSize: 14
+			// 		    },
+			// 		},
+			// 		grid: {
+			// 			top: '36%',
+			// 			left: '5%',
+			// 			right: '0%',
+			// 			bottom: '20%',
+			// 			containLabel: true,
+			// 		},
+			// 		legend: {
+			// 			bottom: 0,
+			// 			itemGap: 20,
+			// 			data: ['订单量', '收入'],
+			// 		},
+			// 		xAxis: {
+			// 			type: 'category',
+			// 			data: ['周一', '周二', '周三', '周四', '周五', '周六', '周日'],
+			// 			boundaryGap: ['20%', '20%'],
+			// 			axisTick: {
+			// 				show: false,
+			// 			},
+			// 			splitLine: {
+			// 			    show: false,
+			// 			},
+			// 			axisLine: {
+			// 			    lineStyle: {
+			// 			        color: '#E4E7ED',
+			// 			    },
+			// 			},
+			// 			axisLabel: {
+			// 			    color: '#333333',
+			// 			}
+			// 		},
+			// 		yAxis: [
+			// 			{
+			// 				type: 'value',
+			// 				name: '订单量',
+			// 				nameGap: 24,
+			// 				nameLocation: 'end',
+			// 				nameTextStyle: {
+			// 					align: 'right',
+			// 					padding: [0, 10, 0, 0],
+			// 					color: '#333333',
+			// 				},
+			// 				boundaryGap: ['10%', '10%'],
+			// 				axisTick: {
+			// 					show: false,
+			// 				},
+			// 				axisLine: {
+			// 					show: false,
+			// 				},
+			// 				splitLine: {
+			// 				    lineStyle: {
+			// 						color: '#E4E7ED',
+			// 				    },
+			// 				},
+			// 				axisLabel: {
+			// 				    color: '#333333',
+			// 				},
+			// 				splitNumber: 3,
+			// 			},
+			// 			{
+			// 				type: 'value',
+			// 				name: '收入',
+			// 				nameGap: 24,
+			// 				nameLocation: 'end',
+			// 				nameTextStyle: {
+			// 					align: 'left',
+			// 					padding: [0, 0, 0, 20],
+			// 					color: '#333333',
+			// 				},
+			// 				axisLabel: {
+			// 					formatter: '¥ {value}',
+			// 					color: '#333333',
+			// 				},
+			// 				boundaryGap: ['10%', '10%'],
+			// 				axisTick: {
+			// 					show: false,
+			// 				},
+			// 				axisLine: {
+			// 					show: false,
+			// 				},
+			// 				splitLine: {
+			// 				    lineStyle: {
+			// 						color: '#E4E7ED',
+			// 				    },
+			// 				},
+			// 				splitNumber: 3,
+			// 			},
+			// 		],
+			// 		series: [
+			// 			{
+			// 				name: '订单量',
+			// 				data: [120, 200, 150, 80, 70, 110, 130],
+			// 				type: 'bar',
+			// 				yAxisIndex: 0,
+			// 				itemStyle: {
+			// 					color: '#E8FBF6',
+			// 					borderRadius: [5, 5, 0, 0]
+			// 				},
+			// 				barWidth: 10,
+			// 			},
+			// 			{
+			// 				name: '收入',
+			// 				data: [120, 200, 150, 80, 70, 110, 130],
+			// 				type: 'line',
+			// 				yAxisIndex: 1,
+			// 				itemStyle: {
+			// 					color: '#00C18A',
+			// 				},
+			// 				// symbolSize: 8,
+			// 			}
+			// 		]
+			// 	}
+			// 	chart.setOption(option)
+			// 	return chart
+			// },
+			// initChart2(canvas, width, height, canvasDpr) {
+			// 	let chart = echarts.init(canvas, null, {
+			// 		width: width,
+			// 		height: height,
+			// 		devicePixelRatio: canvasDpr
+			// 	})
+				
+			// 	canvas.setChart(chart)
+			// 	let option = {
+			// 		title: {
+			// 		    text: '数据对比',
+			// 		    left: 0,
+			// 		    top: 0,
+			// 		    textStyle: {
+			// 				fontSize: 14
+			// 		    },
+			// 		},
+			// 		grid: {
+			// 			top: '36%',
+			// 			left: '5%',
+			// 			right: '0%',
+			// 			bottom: '20%',
+			// 			containLabel: true,
+			// 		},
+			// 		legend: {
+			// 			bottom: 0,
+			// 			itemGap: 20,
+			// 			data: ['本周', '上周'],
+			// 			icon: 'roundRect',
+			// 		},
+			// 		xAxis: {
+			// 			type: 'category',
+			// 			data: ['周一', '周二', '周三', '周四', '周五', '周六', '周日'],
+			// 			boundaryGap: [50, 50],
+			// 			axisTick: {
+			// 				show: false,
+			// 			},
+			// 			splitLine: {
+			// 			    show: false,
+			// 			}
+			// 		},
+			// 		yAxis: {
+			// 			type: 'value',
+			// 			name: '订单量',
+			// 			nameGap: 30,
+			// 			nameLocation: 'end',
+			// 			nameTextStyle: {
+			// 				align: 'right',
+			// 				padding: [0, 10, 0, 0]
+			// 			},
+			// 			boundaryGap: ['10%', '10%'],
+			// 			splitNumber: 4,
+			// 			axisTick: {
+			// 				show: false,
+			// 			},
+			// 			axisLine: {
+			// 				show: false,
+			// 			},
+			// 			splitLine: {
+			// 			    lineStyle: {
+			// 					color: '#E4E7ED',
+			// 			    },
+			// 			},
+			// 		},
+			// 		series: [
+			// 			{
+			// 				name: '本周',
+			// 				data: [120, 200, 150, 80, 70, 110, 130],
+			// 				type: 'bar',
+			// 				itemStyle: {
+			// 					color: '#F56C6C',
+			// 					borderRadius: [5, 5, 0, 0]
+			// 				},
+			// 				barWidth: 10,
+			// 			},
+			// 			{
+			// 				name: '上周',
+			// 				data: [110, 190, 130, 60, 50, 90, 110],
+			// 				type: 'bar',
+			// 				itemStyle: {
+			// 					color: '#00C18A',
+			// 					borderRadius: [5, 5, 0, 0]
+			// 				},
+			// 				barWidth: 10,
+			// 			}
+			// 		]
+			// 	}
+			// 	chart.setOption(option)
+			// 	return chart
+			// },
 		},
 	}
 </script>

+ 442 - 210
echarts/setting/xyf.vue

@@ -1,5 +1,5 @@
 <template>
-	<view>
+	<view class="background: #F5F5F5;">
 		<view class="list flex justify-center">
 			<view class="list-box">
 				<view class="list-box-item">
@@ -12,7 +12,8 @@
 						</view>
 					</view>
 					<view style="width: 100%; height: 400rpx;">
-						<uni-ec-canvas class="uni-ec-canvas" id="line-chart" canvas-id="multi-charts-line" :ec="ec" ref="canvas"></uni-ec-canvas>
+						<EcChart v-if="optionReady" :chartOption="option" width="100%" height="100%" />
+						<!-- <uni-ec-canvas class="uni-ec-canvas" id="line-chart" canvas-id="multi-charts-line" :ec="ec" ref="canvas"></uni-ec-canvas> -->
 					</view>
 					<view class="list flex justify-between">
 						<view class="title" style="color: #00c18a;font-size: 23rpx;">
@@ -39,7 +40,8 @@
 						</view>
 					</view>
 					<view style="width: 100%; height: 400rpx;">
-						<uni-ec-canvas class="uni-ec-canvas" id="line-chart2" canvas-id="multi-charts-line2" :ec="ec2" ref="canvas2"></uni-ec-canvas>
+						<EcChart v-if="optionReady2" :chartOption="option2" width="100%" height="100%" />
+						<!-- <uni-ec-canvas class="uni-ec-canvas" id="line-chart2" canvas-id="multi-charts-line2" :ec="ec2" ref="canvas2"></uni-ec-canvas> -->
 					</view>
 				</view>
 
@@ -205,7 +207,8 @@
 						</view>
 					</view>
 					<view style="width: 100%; height: 70rpx;">
-						<uni-ec-canvas class="uni-ec-canvas" id="line-chart3" canvas-id="multi-charts-line3" :ec="ec3" ref="canvas3"></uni-ec-canvas>
+						<EcChart v-if="optionReady3" :chartOption="option3" width="100%" height="100%" />
+						<!-- <uni-ec-canvas class="uni-ec-canvas" id="line-chart3" canvas-id="multi-charts-line3" :ec="ec3" ref="canvas3"></uni-ec-canvas> -->
 					</view>
 					<view class="flex align-center add_name" style="line-height: 60rpx;">
 						<view class="orgin"></view>80 — 100分:高优先级,优先匹配优质订单
@@ -250,14 +253,16 @@
 
 <script>
 	import empty from '../../components/empty.vue'
-	import uniEcCanvas from '@/echarts/uni-ec-canvas/uni-ec-canvas';
-	import * as echarts from '@/echarts/uni-ec-canvas/echarts.min.js';
+	// import uniEcCanvas from '@/echarts/uni-ec-canvas/uni-ec-canvas';
+	// import * as echarts from '@/echarts/uni-ec-canvas/echarts.min.js';
+	import EcChart from '@/echarts/EcChart.vue'
 	import { waitForGlobalImages } from '@/utils/globalImageLoader'
 
 	export default {
 		components: {
 			empty,
-			uniEcCanvas
+			// uniEcCanvas
+			EcChart
 		},
 		data() {
 			return {
@@ -265,15 +270,22 @@
 				page: 1,
 				limit: 10,
 				pages: 1,
-				ec: {
-					option: {}
-				},
-				ec2: {
-					option: {}
-				},
-				ec3: {
-					option: {}
-				},
+				// ec: {
+				// 	option: {}
+				// },
+				// ec2: {
+				// 	option: {}
+				// },
+				// ec3: {
+				// 	option: {}
+				// },
+				optionReady: false,
+				option: {},
+				optionReady2: false,
+				option2: {},
+				optionReady3: false,
+				option3: {},
+					  
 				globalImages: '',
 				content: '',
 				yvefen: 6,
@@ -323,9 +335,14 @@
 							} else {
 								this.jinduz = '低'
 							}
+							console.log(res.data.score, 'res.data.score');
 							this.$nextTick(() => {
-								this.$refs.canvas.init(this.initChart);
-								this.$refs.canvas3.init(this.initChart3);
+								// this.$refs.canvas.init(this.initChart);
+								// this.$refs.canvas3.init(this.initChart3);
+								this.option = {}
+								this.option3 = {}
+								this.setOption(res.data.score)
+								this.setOption3(res.data.score)
 							})
 					} else {
 						uni.showToast({
@@ -346,7 +363,9 @@
 						this.months = Object.keys(res.data); // 获取所有月份
 						this.scores = Object.values(res.data); // 获取所有分数
 						this.$nextTick(() => {
-							this.$refs.canvas2.init(this.initChart2);
+							this.option2 = {}
+							this.setOption2()
+							// this.$refs.canvas2.init(this.initChart2);
 						})
 					} else {
 						uni.showToast({
@@ -358,6 +377,7 @@
 			},
 			dianji(value) {
 				this.yvefen = value
+				this.optionReady2 = false;
 				this.getFilledScore()
 			},
 			// 确认申诉
@@ -417,198 +437,343 @@
 					}
 				})
 			},
-			initChart(canvas, width, height, canvasDpr) {
-				let chart = echarts.init(canvas, null, {
-					width: width,
-					height: height,
-					devicePixelRatio: canvasDpr
-				});
-				let max = 100;
-				let value = this.jinduvlue.score;
+			// initChart(canvas, width, height, canvasDpr) {
+			// 	let chart = echarts.init(canvas, null, {
+			// 		width: width,
+			// 		height: height,
+			// 		devicePixelRatio: canvasDpr
+			// 	});
+			// 	let max = 100;
+			// 	let value = this.jinduvlue.score;
 				
-				let rate = Math.round((value * 100) / max);
-				canvas.setChart(chart);
-				let option = {
-					title: [
-						{
-							text: '{b|' + rate + '}\n'+'{a|良好}',
-							show: true,
-							x: 'center',
-							y: 'center',
-							textStyle: {
-								rich: {
-									a: {
-										fontSize: 17,
-										color: '#999',
-										padding: [0, 0,5, 0],
-									},
-									b: {
-										fontSize: 35,
-										color: '#333333',
-										fontFamily: 'alibabaPuhuiM',
-										fontWeight: 'bold'
-									},
-								},
-							},
-						},
-					],
-					polar: {
-						center: ['50%', '50%'],
-						radius: ['60%', '75%'],
+			// 	let rate = Math.round((value * 100) / max);
+			// 	canvas.setChart(chart);
+			// 	let option = {
+			// 		title: [
+			// 			{
+			// 				text: '{b|' + rate + '}\n'+'{a|良好}',
+			// 				show: true,
+			// 				x: 'center',
+			// 				y: 'center',
+			// 				textStyle: {
+			// 					rich: {
+			// 						a: {
+			// 							fontSize: 17,
+			// 							color: '#999',
+			// 							padding: [0, 0,5, 0],
+			// 						},
+			// 						b: {
+			// 							fontSize: 35,
+			// 							color: '#333333',
+			// 							fontFamily: 'alibabaPuhuiM',
+			// 							fontWeight: 'bold'
+			// 						},
+			// 					},
+			// 				},
+			// 			},
+			// 		],
+			// 		polar: {
+			// 			center: ['50%', '50%'],
+			// 			radius: ['60%', '75%'],
+			// 		},
+			// 		angleAxis: {
+			// 			max: max,
+			// 			show: false,
+			// 		},
+			// 		radiusAxis: {
+			// 			type: 'category',
+			// 			show: true,
+			// 			axisLabel: {
+			// 				show: false,
+			// 			},
+			// 			axisLine: {
+			// 				show: false,
+			// 			},
+			// 			axisTick: {
+			// 				show: false,
+			// 			},
+			// 		},
+			// 		series: [
+			// 			{
+			// 				name: '',
+			// 				type: 'bar',
+			// 				roundCap: true,
+			// 				showBackground: true,
+			// 				backgroundStyle: {
+			// 					color: '#e8fbf6',
+			// 				},
+			// 				data: [value],
+			// 				coordinateSystem: 'polar',
+			// 				itemStyle: {
+			// 					normal: {
+			// 						color: '#00c18a'
+			// 					},
+			// 				},
+			// 			},
+			// 		],
+			// 	};
+			// 	chart.setOption(option);
+			// 	return chart;
+			// },
+			setOption(value) {
+			  const max = 100
+			  const rate = Math.round((value * 100) / max)
+			  this.option = {
+				title: [{
+				  text: `{b|${rate}}\n{a|良好}`,
+				  show: true,
+				  x: 'center',
+				  y: 'center',
+				  textStyle: {
+					rich: {
+					  a: {
+						fontSize: 17,
+						color: '#999',
+						padding: [0, 0, 5, 0]
+					  },
+					  b: {
+						fontSize: 35,
+						color: '#333333',
+						fontFamily: 'alibabaPuhuiM',
+						fontWeight: 'bold'
+					  }
+					}
+				  }
+				}],
+				polar: {
+				  center: ['50%', '50%'],
+				  radius: ['60%', '75%']
+				},
+				angleAxis: {
+				  max: max,
+				  show: false
+				},
+				radiusAxis: {
+				  type: 'category',
+				  show: true,
+				  axisLabel: { show: false },
+				  axisLine: { show: false },
+				  axisTick: { show: false }
+				},
+				series: [{
+				  name: '',
+				  type: 'bar',
+				  roundCap: true,
+				  showBackground: true,
+				  backgroundStyle: {
+					color: '#e8fbf6'
+				  },
+				  data: [value],
+				  coordinateSystem: 'polar',
+				  itemStyle: {
+					normal: {
+					  color: '#00c18a'
+					}
+				  }
+				}]
+			  }
+		
+			  this.optionReady = true // 让组件渲染
+			},
+			setOption2 () {
+				this.option2 = {
+				  grid: {
+					top: '15%',
+					left: '2%',
+					right: '5%',
+					bottom: '3%',
+					containLabel: true,
+				  },
+				  tooltip: {
+					trigger: 'axis',
+					axisPointer: {
+					  type: 'line'
 					},
-					angleAxis: {
-						max: max,
-						show: false,
+					backgroundColor: 'rgba(0, 193, 138, 0.1)',
+					borderColor: '#00c18a',
+					textStyle: {
+					  color: '#333',
 					},
-					radiusAxis: {
-						type: 'category',
-						show: true,
-						axisLabel: {
-							show: false,
-						},
-						axisLine: {
-							show: false,
-						},
-						axisTick: {
-							show: false,
-						},
+				  },
+				  xAxis: {
+					type: 'category',
+					data: this.months,
+					axisLine: {
+					  lineStyle: {
+						color: 'rgba(60,132,163,0.4)',
+					  }
 					},
-					series: [
-						{
-							name: '',
-							type: 'bar',
-							roundCap: true,
-							showBackground: true,
-							backgroundStyle: {
-								color: '#e8fbf6',
-							},
-							data: [value],
-							coordinateSystem: 'polar',
-							itemStyle: {
-								normal: {
-									color: '#00c18a'
-								},
-							},
-						},
-					],
-				};
-				chart.setOption(option);
-				return chart;
-			},
-			initChart2(canvas, width, height, canvasDpr) {
-				let chart = echarts.init(canvas, null, {
-					width: width,
-					height: height,
-					devicePixelRatio: canvasDpr
-				});
-				canvas.setChart(chart);
-				let option = {
-				   grid: {
-					  top: '15%',
-					  left: '2%',
-					  right: '5%',
-					  bottom: '3%',
-					  containLabel: true,
-				   },
-				   tooltip: {
-					  trigger: "axis",
-					  axisPointer: {
-						 type: "line",
-					  },
-					  backgroundColor: "rgba(254, 107, 1, 0.1)",
-					  borderColor: "#fe6b01",
-					  textStyle: {
-						 color: "#333",
-					  },
-				   },
-				   xAxis: {
-					  type: "category",
-					  data: this.months,
-					  axisLine: {
-						 lineStyle: {
-							color: "rgba(60,132,163,0.4)", // x轴线颜色
-						 },
-					  },
-					  axisTick: {
-						 show: false, // 是否显示x轴的刻度
-					  },
-					  axisLabel: {
-						 interval: 0,
-						 color: "#333",
-						 fontSize: 12,
-						 rotate: 45,
-					  },
-					  boundaryGap: false, // true折线图以x轴刻度为中心点  false折线图折线从头开始
-				   },
-				   yAxis: {
-					  type: "value",
-					  max: 100,
-					  min: 1,
-					  axisTick: {
-						 show: false,
-					  },
-					  axisLine: {
-						 show: false,
-					  },
-					  axisLabel: {
-						 color: "#333",
-						 fontSize: 12,
-						 formatter: function (value) {
-							return value + "";
-						 }
+					axisTick: {
+					  show: false
+					},
+					axisLabel: {
+					  interval: 0,
+					  color: '#333',
+					  fontSize: 12,
+					  rotate: 45,
+					},
+					boundaryGap: false
+				  },
+				  yAxis: {
+					type: 'value',
+					max: 100,
+					min: 1,
+					axisTick: {
+					  show: false
+					},
+					axisLine: {
+					  show: false
+					},
+					axisLabel: {
+					  color: '#333',
+					  fontSize: 12,
+					  formatter: value => `${value}`
+					},
+					splitLine: {
+					  show: true,
+					  lineStyle: {
+						color: '#999'
+					  }
+					}
+				  },
+				  series: [
+					{
+					  name: '信用分',
+					  type: 'line',
+					  smooth: true,
+					  areaStyle: {
+						color: {
+						    type: 'linear',
+						    x: 0, y: 0, x2: 0, y2: 1,
+						    colorStops: [
+						      { offset: 0, color: '#00c18a' },
+						      { offset: 1, color: 'rgba(199, 255, 239,0.4)' }
+						    ]
+						}
 					  },
-					  splitLine: {
-						 show: true,
-						 lineStyle: {
-							// type: "dashed",
-							color: "#999",
-						 },
+					  lineStyle: {
+						width: 2,
+						color: '#00c18a'
 					  },
-				   },
-				   series: [
-					  {
-						 name: "信用分",
-						 type: "line",
-						 smooth: true,
-						 areaStyle: {
-							color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
-							   {
-								  offset: 0,
-								  color: "#00c18a",
-							   },
-							   {
-								  offset: 1,
-								  color: "rgba(199, 255, 239,0.4)",
-							   },
-							]),
-						 },
-						 lineStyle: {
-							width: 2,
-							color: "#00c18a",
-						 },
-						 // 设置节点样式
-						 showSymbol: true,
-						 symbol: 'circle', // 可以选择 circle, diamond, pin 等
-						 symbolSize: 13, // 节点大小
-						 itemStyle: {
-							color: "#00c18a", // 节点颜色
-						 },
-						 data: this.scores
+					  showSymbol: true,
+					  symbol: 'circle',
+					  symbolSize: 13,
+					  itemStyle: {
+						color: '#00c18a'
 					  },
-				   ]
-				};
-				chart.setOption(option);
-				return chart;
+					  data: this.scores
+					}
+				  ]
+				}
+				this.optionReady2 = true // 让组件渲染
 			},
-			initChart3(canvas, width, height, canvasDpr) {
-				let chart = echarts.init(canvas, null, {
-					width: width,
-					height: height,
-					devicePixelRatio: canvasDpr
-				});
-				
-				canvas.setChart(chart);
-				let option = {
+			// initChart2(canvas, width, height, canvasDpr) {
+			// 	let chart = echarts.init(canvas, null, {
+			// 		width: width,
+			// 		height: height,
+			// 		devicePixelRatio: canvasDpr
+			// 	});
+			// 	canvas.setChart(chart);
+			// 	let option = {
+			// 	   grid: {
+			// 		  top: '15%',
+			// 		  left: '2%',
+			// 		  right: '5%',
+			// 		  bottom: '3%',
+			// 		  containLabel: true,
+			// 	   },
+			// 	   tooltip: {
+			// 		  trigger: "axis",
+			// 		  axisPointer: {
+			// 			 type: "line",
+			// 		  },
+			// 		  backgroundColor: "rgba(254, 107, 1, 0.1)",
+			// 		  borderColor: "#fe6b01",
+			// 		  textStyle: {
+			// 			 color: "#333",
+			// 		  },
+			// 	   },
+			// 	   xAxis: {
+			// 		  type: "category",
+			// 		  data: this.months,
+			// 		  axisLine: {
+			// 			 lineStyle: {
+			// 				color: "rgba(60,132,163,0.4)", // x轴线颜色
+			// 			 },
+			// 		  },
+			// 		  axisTick: {
+			// 			 show: false, // 是否显示x轴的刻度
+			// 		  },
+			// 		  axisLabel: {
+			// 			 interval: 0,
+			// 			 color: "#333",
+			// 			 fontSize: 12,
+			// 			 rotate: 45,
+			// 		  },
+			// 		  boundaryGap: false, // true折线图以x轴刻度为中心点  false折线图折线从头开始
+			// 	   },
+			// 	   yAxis: {
+			// 		  type: "value",
+			// 		  max: 100,
+			// 		  min: 1,
+			// 		  axisTick: {
+			// 			 show: false,
+			// 		  },
+			// 		  axisLine: {
+			// 			 show: false,
+			// 		  },
+			// 		  axisLabel: {
+			// 			 color: "#333",
+			// 			 fontSize: 12,
+			// 			 formatter: function (value) {
+			// 				return value + "";
+			// 			 }
+			// 		  },
+			// 		  splitLine: {
+			// 			 show: true,
+			// 			 lineStyle: {
+			// 				// type: "dashed",
+			// 				color: "#999",
+			// 			 },
+			// 		  },
+			// 	   },
+			// 	   series: [
+			// 		  {
+			// 			 name: "信用分",
+			// 			 type: "line",
+			// 			 smooth: true,
+			// 			 areaStyle: {
+			// 				color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
+			// 				   {
+			// 					  offset: 0,
+			// 					  color: "#00c18a",
+			// 				   },
+			// 				   {
+			// 					  offset: 1,
+			// 					  color: "rgba(199, 255, 239,0.4)",
+			// 				   },
+			// 				]),
+			// 			 },
+			// 			 lineStyle: {
+			// 				width: 2,
+			// 				color: "#00c18a",
+			// 			 },
+			// 			 // 设置节点样式
+			// 			 showSymbol: true,
+			// 			 symbol: 'circle', // 可以选择 circle, diamond, pin 等
+			// 			 symbolSize: 13, // 节点大小
+			// 			 itemStyle: {
+			// 				color: "#00c18a", // 节点颜色
+			// 			 },
+			// 			 data: this.scores
+			// 		  },
+			// 	   ]
+			// 	};
+			// 	chart.setOption(option);
+			// 	return chart;
+			// },
+			setOption3 (value) {
+				this.option3 = {
 					grid: {
 						top: '3%',
 						bottom: '3%',
@@ -661,13 +826,80 @@
 								},
 							},
 							barWidth: 10,
-							data: [this.jinduvlue.score],
+							data: [value],
 						},
 					],
 				};
-				chart.setOption(option);
-				return chart;
-			},
+				this.optionReady3 = true // 让组件渲染
+			}
+			// initChart3(canvas, width, height, canvasDpr) {
+			// 	let chart = echarts.init(canvas, null, {
+			// 		width: width,
+			// 		height: height,
+			// 		devicePixelRatio: canvasDpr
+			// 	});
+				
+			// 	canvas.setChart(chart);
+			// 	let option = {
+			// 		grid: {
+			// 			top: '3%',
+			// 			bottom: '3%',
+			// 			left: '0%',
+			// 			right: '0%',
+			// 		},
+			// 		xAxis: {
+			// 			show: false,
+			// 			type: 'value',
+			// 			boundaryGap: [0, 0],
+			// 		},
+			// 		yAxis: [
+			// 			{
+			// 				type: 'category',
+			// 				data: [''],
+			// 				axisLine: { show: false },
+			// 				axisTick: [
+			// 					{
+			// 						show: false,
+			// 					},
+			// 				],
+			// 			},
+			// 		],
+			// 		series: [
+			// 			{
+			// 				name: '背景',
+			// 				type: 'bar',
+			// 				barWidth: 10,
+			// 				barGap: '-100%',
+			// 				data: [100],
+			// 				itemStyle: {
+			// 					normal: {
+			// 						color: '#e8fbf6',
+			// 						borderWidth: 1,
+			// 						borderColor: '#e8fbf6',
+			// 						barBorderRadius: 10,
+			// 					},
+			// 				},
+			// 				label: {
+			// 					show: false,
+			// 				},
+			// 			},
+			// 			{
+			// 				name: '匹配度',
+			// 				type: 'bar',
+			// 				itemStyle: {
+			// 					normal: {
+			// 						barBorderRadius: 10,
+			// 						color: '#00c18a',
+			// 					},
+			// 				},
+			// 				barWidth: 10,
+			// 				data: [this.jinduvlue.score],
+			// 			},
+			// 		],
+			// 	};
+			// 	chart.setOption(option);
+			// 	return chart;
+			// },
 		},
 	}
 </script>
@@ -683,9 +915,9 @@
 		background: #fff;
 		color: #999;
 	}
-	page {
-		background: #F5F5F5;
-	}
+	// page {
+	// 	background: #F5F5F5;
+	// }
 
 	.title {
 		font-size: 32rpx;

+ 3 - 3
my/setting/index.vue

@@ -41,7 +41,7 @@
 					<switch color="#00c18a!important" checked @change="switch1Change" />
 				</view>
 			</view>
-			<view class="flex align-center justify-between padding-lr">
+			<!-- <view class="flex align-center justify-between padding-lr">
 				<view style="line-height: 40rpx;">
 					<view>个人信息可见范围</view>
 					<view style="color: #999;font-size: 24rpx;">设置其他用户可见的信息</view>
@@ -49,8 +49,8 @@
 				<view class="order_money">
 					<u-icon name="arrow-right"></u-icon>
 				</view>
-			</view>
-			<view class="flex align-center justify-between padding-lr">
+			</view> -->
+			<view class="flex align-center justify-between padding-lr" style="margin-top: 30rpx;">
 				<view style="line-height: 40rpx;">
 					<view>消息推送权限</view>
 					<view style="color: #999;font-size: 24rpx;">管理通知和消息接收</view>

+ 22 - 0
package-lock.json

@@ -12,6 +12,15 @@
         "vary": "^1.1.2"
       }
     },
+    "echarts": {
+      "version": "5.6.0",
+      "resolved": "https://registry.npmmirror.com/echarts/-/echarts-5.6.0.tgz",
+      "integrity": "sha512-oTbVTsXfKuEhxftHqL5xprgLoc0k7uScAwtryCgWF6hPYFLRwOUHiFmHGCBKP5NPFNkDVopOieyUqYGH8Fa3kA==",
+      "requires": {
+        "tslib": "2.3.0",
+        "zrender": "5.6.1"
+      }
+    },
     "egg-cors": {
       "version": "2.2.3",
       "resolved": "https://registry.npmjs.org/egg-cors/-/egg-cors-2.2.3.tgz",
@@ -20,6 +29,11 @@
         "@koa/cors": "^3.0.0"
       }
     },
+    "tslib": {
+      "version": "2.3.0",
+      "resolved": "https://registry.npmmirror.com/tslib/-/tslib-2.3.0.tgz",
+      "integrity": "sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg=="
+    },
     "uview-ui": {
       "version": "1.8.4",
       "resolved": "https://registry.npmjs.org/uview-ui/-/uview-ui-1.8.4.tgz",
@@ -29,6 +43,14 @@
       "version": "1.1.2",
       "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz",
       "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw="
+    },
+    "zrender": {
+      "version": "5.6.1",
+      "resolved": "https://registry.npmmirror.com/zrender/-/zrender-5.6.1.tgz",
+      "integrity": "sha512-OFXkDJKcrlx5su2XbzJvj/34Q3m6PvyCZkVPHGYpcCJ52ek4U/ymZyfuV1nKE23AyBJ51E/6Yr0mhZ7xGTO4ag==",
+      "requires": {
+        "tslib": "2.3.0"
+      }
     }
   }
 }

+ 1 - 0
package.json

@@ -4,6 +4,7 @@
   "description": "",
   "main": "main.js",
   "dependencies": {
+    "echarts": "^5.6.0",
     "egg-cors": "^2.2.3",
     "uview-ui": "^1.8.4"
   },

+ 7 - 6
pages/index/index.vue

@@ -289,14 +289,15 @@
 				<image v-if="globalImages" :src="globalImages + 'imgs/static/my/jjqz.png'" mode=""></image>
 			</view>
 			<view class="sosTD" v-if="orderCounts && orderCounts > 0 && scrollShow" @tap="showTD">
-				<image v-if="globalImages" :src="globalImages + 'imgs/static/upload/tingdan.png'"></image>
+				<image v-if="globalImages && tdShow && globalImages" :src="globalImages + 'imgs/static/upload/manual.png'"></image>
+				<image v-if="globalImages && !tdShow && globalImages" :src="globalImages + 'imgs/static/upload/auto.png'"></image>
 			</view>
 			<view class="sosT" v-if="orderCounts && orderCounts > 0 && !scrollShow">
-				<image v-if="!tdShow && globalImages" :src="globalImages + 'imgs/static/upload/starttd.png'" @click="goTingDan()"
-					style="width: 149rpx;height: 24rpx;">
+				<image v-if="!tdShow && globalImages" :src="globalImages + 'imgs/static/upload/automaticOrder.png'" @click="goTingDan()"
+					style="width: 149rpx;height: 65rpx;">
 				</image>
-				<image v-if="tdShow && globalImages"  :src="globalImages + 'imgs/static/upload/endTD.png'" @click="goTingDan()"
-					style="width: 149rpx;height: 24rpx;">
+				<image v-if="tdShow && globalImages"  :src="globalImages + 'imgs/static/upload/manualOrder.png'" @click="goTingDan()"
+					style="width: 149rpx;height: 65rpx;">
 				</image>
 				<u-line direction="col" color="#FFFFFF" length="30" />
 				<view class="flex align-center" @click="goEditTD()">
@@ -1873,7 +1874,7 @@
 		border-radius: 45px;
 		display: flex;
 		justify-content: space-between;
-		padding: 30rpx 40rpx;
+		padding: 15rpx 30rpx;
 		align-items: center;
 
 		.sosT_text {

+ 19 - 16
pages/riderMy/index.vue

@@ -53,11 +53,12 @@
 				</view>
 			</view>
 			<!-- 收入和订单 -->
-			<view class="shouru" v-if="shangxian=='否'">
+			<!-- v-if="shangxian=='否'" -->
+		<!-- 	<view class="shouru" >
 				<view class="user_box">
 					<view class="box">
 						<view class="user_name" @click="navgo('/pages/riderMy/myAccount/myAccount')">
-							<!-- <view style="width: 6rpx;height: 28rpx;background: #FE3B27;"></view> -->
+							<view style="width: 6rpx;height: 28rpx;background: #FE3B27;"></view>
 							<u-section title="信用分" :bold="true" :right="false" line-color="#FE3B27"></u-section>
 						</view>
 						<view class="user_price">{{creditScore ? creditScore : 0}}</view>
@@ -65,17 +66,17 @@
 					</view>
 					<view class="box" @click="myOrders()">
 						<view class="user_name">
-							<!-- <view style="width: 6rpx;height: 28rpx;background: #009C66;"></view> -->
+							<view style="width: 6rpx;height: 28rpx;background: #009C66;"></view>
 							<u-section title="订单统计" :right="false" line-color="#009C66"></u-section>
 						</view>
 						<view class="user_price">{{indent.indentCount?indent.indentCount:0}} <text>单</text></view>
 						<view class="user_tit ">今日完成单量</view>
 					</view>
 				</view>
-			</view>
+			</view> -->
 		</view>
 		<!-- 我的列表 -->
-		<view class=" padding-tb bg-white " style="border-radius: 24rpx; margin: 0rpx 30rpx 30rpx 30rpx;">
+		<view class=" padding-tb bg-white " style="border-radius: 24rpx; margin: 30rpx 30rpx 30rpx 30rpx;">
 			<view class="flex justify-between align-center padding-lr-sm">
 				<view class="text-lg text-bold text-black">常用功能</view>
 			</view>
@@ -95,12 +96,13 @@
 					<view class="text-sm">订单统计</view>
 					<!-- <view class="weinumber" v-if="order&&order.jxzOrders">{{order.jxzOrders}}</view> -->
 				</view>
-				<view class="text-center margin-tb-sm"  style="width: 20%;" @click="navgo('/my/setting/index')">
+			<!-- 	<view class="text-center margin-tb-sm"  style="width: 20%;" @click="navgo('/my/setting/index')">
 					<image v-if="globalImages" :src="globalImages + 'imgs/fuli.png'" style="width: 56rpx;height: 56rpx;" mode=""></image>
 					<view class="text-sm">我的福利</view>
-					<!-- <view class="weinumber" v-if="order&&order.dzfOrders">{{order.dzfOrders}}</view> -->
-				</view>
-				<view class="text-center margin-tb-sm"  style="width: 20%;" @click="navgo('/pages/riderMy/invitationUser')" v-if="shangxian=='否'">
+					<view class="weinumber" v-if="order&&order.dzfOrders">{{order.dzfOrders}}</view>
+				</view> -->
+				<!-- v-if="shangxian=='否'" -->
+				<view class="text-center margin-tb-sm"  style="width: 20%;" @click="navgo('/pages/riderMy/invitationUser')">
 					<image v-if="globalImages" :src="globalImages + 'imgs/haoyou.png'" style="width: 56rpx;height: 56rpx;" mode=""></image>
 					<view class="text-sm">邀请好友</view>
 				</view>
@@ -151,16 +153,16 @@
 					<view class="text-sm">车辆管理</view>
 					<!-- <view class="weinumber" v-if="order&&order.jxzOrders">{{order.jxzOrders}}</view> -->
 				</view>
-				<view class="text-center margin-tb-sm"  style="width: 20%;" @click="navgo('/my/setting/logOff')">
+			<!-- 	<view class="text-center margin-tb-sm"  style="width: 20%;" @click="navgo('/my/setting/logOff')">
 					<image v-if="globalImages" :src="globalImages + 'imgs/zhaomu.png'" style="width: 56rpx;height: 56rpx;" mode=""></image>
 					<view class="text-sm">招募车主</view>
-					<!-- <view class="weinumber" v-if="order&&order.dzfOrders">{{order.dzfOrders}}</view> -->
+					<view class="weinumber" v-if="order&&order.dzfOrders">{{order.dzfOrders}}</view>
 				</view>
 				<view class="text-center margin-tb-sm"  style="width: 20%;" @click="navgo()">
 					<image v-if="globalImages" :src="globalImages + 'imgs/chezhu.png'" style="width: 56rpx;height: 56rpx;" mode=""></image>
 					<view class="text-sm">成为车主</view>
-					<!-- <view class="weinumber" v-if="order&&order.dzfOrders">{{order.dzfOrders}}</view> -->
-				</view>
+					<view class="weinumber" v-if="order&&order.dzfOrders">{{order.dzfOrders}}</view>
+				</view> -->
 			</view>
 		</view>
 		
@@ -219,11 +221,11 @@
 					<view class="text-sm">客服电话</view>
 					<!-- <view class="weinumber" v-if="order&&order.jxzOrders">{{order.jxzOrders}}</view> -->
 				</view>
-				<view class="text-center margin-tb-sm"  style="width: 25%;">
+				<!-- <view class="text-center margin-tb-sm"  style="width: 25%;">
 					<image v-if="globalImages" :src="globalImages + 'images/my/shoucang.png'" style="width: 56rpx;height: 56rpx;" mode=""></image>
 					<view class="text-sm">我的收藏</view>
-					<!-- <view class="weinumber" v-if="order&&order.dzfOrders">{{order.dzfOrders}}</view> -->
-				</view>
+					<view class="weinumber" v-if="order&&order.dzfOrders">{{order.dzfOrders}}</view>
+				</view> -->
 			</view>
 		</view>
 		
@@ -1159,6 +1161,7 @@
 		background: #ffffff;
 		position: relative;
 		z-index: 99;
+		top: -90rpx;
 	}
 
 	.user_box {

二进制
static/logo.png