From 92230c9a97dc9ce9df3313d11d26999c04bb6b26 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期二, 15 七月 2025 13:12:48 +0800
Subject: [PATCH] 项目初始化

---
 src/pages_qiun/components/data-center/user-operate.vue |  200 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 200 insertions(+), 0 deletions(-)

diff --git a/src/pages_qiun/components/data-center/user-operate.vue b/src/pages_qiun/components/data-center/user-operate.vue
new file mode 100644
index 0000000..459cd04
--- /dev/null
+++ b/src/pages_qiun/components/data-center/user-operate.vue
@@ -0,0 +1,200 @@
+<template>
+	<view class="content">
+		<scroll-view v-if="true" scroll-y class="data_body" :style="{height:scrollHeight}">
+			<!--鏁版嵁杩涘害鏉�-->
+			<view class="progress">
+				<data-progress :progressList="userOperateLineBar" :borderRadius="20" padMiddle="true"></data-progress>
+			</view>
+			<view class="split_line"></view>
+			
+			<!-- 娲昏穬浼氬憳-->
+			<view class="friend_operate">
+				<view class="title">娲昏穬浼氬憳</view>
+				<text-block :content="userActive"></text-block>
+			</view>
+			
+			<!-- 浼氬憳娑堣垂 -->
+			<view class="friend_operate"  style="padding-bottom: 30rpx;">
+				<view class="title">浼氬憳娑堣垂</view>
+				<text-block :content="userConsume"></text-block>
+			</view>
+			<view class="split_line"></view>
+			
+			<!-- 浼氬憳ARPU -->
+			<view class="friend_operate">
+				<view class="title">浼氬憳ARPU
+					<text class="font-small">(浼氬憳骞村害骞冲潎閿�鍞噾棰�)</text>
+					<text class="trend_title">鐩爣澧為噺{{userARPU.targetAdd}}</text>
+				</view>
+				<view class="charts-box">
+					<qiun-data-charts type="mix"
+						:chartData="userARPU" 
+						:reshow="delayload"
+						:canvas2d="isCanvas2d"
+						canvasId="two_a"
+						:opts="{yAxis:{data:[{title: '',max:userARPU?userARPU.yAxis[0].max:0,min:userARPU?userARPU.yAxis[0].min:0},{title: '',unit:'%',max:userARPU?userARPU.yAxis[1].max:0,min:userARPU?userARPU.yAxis[1].min:0,position:'right'}]},extra:{markLine:{data:[{value:userARPU?userARPU.target:'',LineColor:'#ff9900',showLabel:true}]}}}"/>
+				</view>
+			</view>
+			<view class="split_line"></view>
+			
+			<!-- 浼氬憳娑堣垂棰戞 -->
+			<view class="friend_operate">
+				<view class="title">浼氬憳娑堣垂棰戞
+					<text class="font-middle">(骞�)</text>
+					<text class="trend_title">鐩爣澧為噺{{userARPU.targetAdd}}</text>
+				</view>
+				<view class="charts-box">
+						<qiun-data-charts type="mix"
+							:chartData="userARPU" 
+							:reshow="delayload"
+							:canvas2d="isCanvas2d"
+							canvasId="two_b"
+							:opts="{yAxis:{data:[{title: '',max:userARPU?userARPU.yAxis[0].max:0,min:userARPU?userARPU.yAxis[0].min:0},{title: '',unit:'%',max:userARPU?userARPU.yAxis[1].max:0,min:userARPU?userARPU.yAxis[1].min:0,position:'right'}]},extra:{markLine:{data:[{value:userARPU?userARPU.target:'',LineColor:'#ff9900',showLabel:true}]}}}"/>
+				</view>
+			</view>
+			<view class="split_line"></view>
+			
+			<!-- 寰缇よ繍钀�-->
+			<view class="friend_operate">
+				<view class="title">娲昏穬浼氬憳鍒嗗竷
+					<text class="font-middle">(鏈�杩戞椿璺冩椂闂�)</text>
+				</view>
+				<senior-table :headers="dataTable.headers" :contents="dataTable.contents" :urlCol="dataTable.urlCol" :firstLineFixed="true" :sortCol="dataTable.sortCol" :computedCol="dataTable.computedCol" :formatCol="dataTable.formatCol"></senior-table>
+			</view>
+			<view class="split_line"></view>
+			
+			<!-- X鍟嗗搧鑴辫惤鐜�-->
+			<view class="friend_operate">
+				<view class="title">
+					X锛堟參鐥咃級 鍟嗗搧鑴辫惤鐜�
+				</view>
+				<view style="display: flex;justify-content: space-between;">
+					<view v-for="(item,index) in xProductDropPrecent" class="charts-box" style="height: 130px;width: 45%;">
+						<qiun-data-charts 
+							type="arcbar" 
+							:chartData="item" 
+							:canvasId="'two_c_'+ index" 
+							:canvas2d="true"
+							:reshow="delayload"
+							:opts="{title:{name:item.series[0].data * 100 + '%',color:item.series[0].color,fontSize:25},subtitle:{name:item.series[0].name,color:'#666666',fontSize:12}}" />
+					</view>
+				</view>
+			</view>
+			
+			<!-- 鎱㈢梾鐥呯鑴辫惤鐜�-->
+			<view class="friend_operate">
+				<view class="title">鎱㈢梾鐥呯鑴辫惤鐜�
+				</view>
+				<view class="charts-box">
+					<qiun-data-charts type="mix"
+						:chartData="illnessDropPrecent" 
+						:reshow="delayload"
+						:canvas2d="true"
+						canvasId="two_d"
+						:opts="{yAxis:{data:[{title: ''}]}}"/>
+				</view>
+			</view>
+			
+			<!-- W鍟嗗搧鑴辫惤鐜�-->
+			<view class="friend_operate">
+				<view class="title">
+					W锛堜繚鍋ワ級 鍟嗗搧鑴辫惤鐜�
+				</view>
+				<view style="display: flex;justify-content: space-between;">
+					<view v-for="(item,index) in wProductDropPrecent" class="charts-box" style="height: 130px;width: 45%;">
+						<qiun-data-charts 
+							type="arcbar" 
+							:chartData="item" 
+							:canvasId="'two_e_'+index" 
+							:canvas2d="true"
+							:reshow="delayload"
+							:opts="{title:{name:item.series[0].data * 100 + '%',color:item.series[0].color,fontSize:25},subtitle:{name:item.series[0].name,color:'#666666',fontSize:12}}" />
+					</view>
+				</view>
+			</view>
+		</scroll-view>
+		<view  v-else class="container padding_stand-big normal_color">
+			<li class="iconfont icon-cry cry"></li>鏆傛棤鏁版嵁
+		</view>
+	</view>
+</template>
+
+<script>
+	import DataProgress from "../data-progress/data-progress.vue"
+	import SeniorTable from "../data-table/senior-table.vue"
+	
+	import userOperateLineBar from '../../static/json/user-operate/1.json';
+	import userActive from '../../static/json/user-operate/2.json';
+	import userConsume from '../../static/json/user-operate/3.json';
+	import userARPU from '../../static/json/user-operate/4.json';
+	import dataTable from "../../static/json/user-operate/6.json"
+	import xProductDropPrecent from '../../static/json/user-operate/7.json';
+	import wProductDropPrecent from '../../static/json/user-operate/9.json';
+	import illnessDropPrecent from '../../static/json/user-operate/8.json';
+	
+	
+	export default {
+		name:'user-operate',
+		props: {
+			scrollHeight:{
+				type:String,
+				default:"600px"
+			}
+		},
+		components:{
+			DataProgress,SeniorTable
+		},
+		data() {
+			return {
+				userOperateLineBar,
+				userActive,
+				userConsume,
+				userARPU,
+				xProductDropPrecent,
+				wProductDropPrecent,
+				illnessDropPrecent,
+				dataTable,
+				delayload:false,
+				isCanvas2d:Config.ISCANVAS2D
+			}
+		},
+		mounted() {
+			this.getData();
+		},
+		methods:{
+			async getData(){
+				uni.showLoading();
+				await setTimeout(() => {
+					this.delayload = true;
+					uni.hideLoading();
+				}, 1000)
+			}
+		}
+	}
+</script>
+
+<style scoped lang="less">
+	.content{
+		padding-top: 10rpx;
+		.progress,.firend_operate{
+			padding: 0 10rpx;
+		}
+		.progress{
+			margin-bottom: 20rpx;
+		}
+		.friend_operate{
+			padding: 30rpx 20rpx;
+			.title{
+				text-align:left;
+				margin-bottom: 30rpx;
+				font-size: 40rpx;
+			}
+			.trend_title{
+				float: right;
+				font-size: 22rpx;
+				color: #ff9900;
+				margin-top: 20rpx;
+			}
+		}
+	}
+</style>

--
Gitblit v1.9.3