From 79e45536f581b4c5cd734af1dd87221d506b544b Mon Sep 17 00:00:00 2001
From: wujingjing <gersonwu@qq.com>
Date: 星期三, 09 十月 2024 16:31:04 +0800
Subject: [PATCH] Merge branch 'test' of http://47.103.154.90:83/r/WI/Web.Admin.V1.0 into test

---
 src/views/types/metrics/index.ts                             |   11 +++
 src/views/project/yw/systemManage/metricMgr/MetricDetail.vue |  136 ++++++++++++++++++++++++++++++++++++++++----
 2 files changed, 133 insertions(+), 14 deletions(-)

diff --git a/src/views/project/yw/systemManage/metricMgr/MetricDetail.vue b/src/views/project/yw/systemManage/metricMgr/MetricDetail.vue
index b89926f..ee4dd2b 100644
--- a/src/views/project/yw/systemManage/metricMgr/MetricDetail.vue
+++ b/src/views/project/yw/systemManage/metricMgr/MetricDetail.vue
@@ -4,7 +4,7 @@
 			<el-col :span="17">
 				<div class="h100 relative">
 					<div class="ml-6 h100">
-						<el-tabs v-model="state.activeMetricName" @tab-click="handleClick" class="h100">
+						<el-tabs v-model="state.activeMetricName" @tab-change="handleClick" class="h100">
 							<el-tab-pane label="鍩虹淇℃伅" name="basicInformation">
 								<div class="h100">
 									<el-descriptions title="鎸囨爣淇℃伅" :column="2">
@@ -44,13 +44,14 @@
 										<div class="set_explore_pad">
 											<el-form ref="exploreFormRef" :model="state.exploreForm" label-width="100px">
 												<el-form-item label="鏃ユ湡鍖洪棿:">
-													<el-date-picker
-														v-model="state.exploreForm.dateRangeExplore"
-														type="daterange"
-														unlink-panels
-														range-separator="~"
-														:shortcuts="shortcuts"
-													/>
+													<div style="width: 300px">
+														<el-date-picker
+															v-model="state.exploreForm.dateRangeExplore"
+															type="daterange"
+															range-separator="~"
+															:shortcuts="shortcuts"
+														/>
+													</div>
 												</el-form-item>
 												<el-form-item label="缁村害涓嬮捇:">
 													<el-select v-model="state.exploreForm.dimensionDrilling" autocomplete="off" style="width: 226.4px" clearable>
@@ -65,7 +66,7 @@
 												</el-form-item>
 												<el-form-item label="缁村害绛涢��:">
 													<el-select
-														v-model="state.exploreForm.dimensionFiltering"
+														v-model="state.exploreForm.dimensionFiltering.user"
 														autocomplete="off"
 														style="width: 186.4px"
 														clearable
@@ -78,8 +79,35 @@
 														>
 														</el-option>
 													</el-select>
+													<el-select
+														v-model="state.exploreForm.dimensionFiltering.unit"
+														autocomplete="off"
+														style="width: 126.4px; margin: 0 5px"
+														clearable
+													>
+														<el-option
+															v-for="item in Object.keys(eDimensionFilter_Ops)"
+															:key="item"
+															:value="parseInt(item)"
+															:label="eDimensionFilter_Ops[item]"
+														>
+														</el-option>
+													</el-select>
+													<el-select v-model="state.resultList" autocomplete="off" style="width: 126.4px; margin-right: 5px" clearable>
+														<el-option
+															v-for="(item, index) in state.resultList"
+															:key="index"
+															:value="item.department"
+															:label="item.department"
+														>
+														</el-option>
+													</el-select>
+													<el-button type="primary" @click="handleExplore" icon="ele-Search">鏌ヨ</el-button>
 												</el-form-item>
 											</el-form>
+										</div>
+										<div class="w100 h100">
+											<div ref="chartExplorationRef" class=""></div>
 										</div>
 									</div>
 								</div>
@@ -92,7 +120,7 @@
 								<ArrowLeft />
 							</el-icon>
 						</el-button>
-						<span class="text-[14px] text-[#1677ff] font-[400]">杩斿洖鍒楄〃椤�</span>
+						<span class="text-[14px] text-[#1677ff] font-[400] mr-2">杩斿洖鍒楄〃椤�</span>
 					</div>
 				</div>
 			</el-col>
@@ -130,7 +158,7 @@
 						<el-divider />
 						<div class="section___vePzi">
 							<div class="item___title">
-								<i class="ywifont ywicon-jiankong w-[18px] h-[18px] !text-[18px]"></i>
+								<i class="ywifont ywicon-jiankong w-[18px] h-[18px] !text-[20px]"></i>
 								<span>搴旂敤淇℃伅 </span>
 							</div>
 							<div class="item___txXyB" v-for="(item, index) in state.metricBasicInfo.applicationInformation" :key="index">
@@ -148,9 +176,10 @@
 </template>
 
 <script setup lang="ts">
-import { onMounted, reactive } from 'vue';
+import * as echarts from 'echarts';
+import { onMounted, reactive, ref } from 'vue';
 import { useRoute, useRouter } from 'vue-router';
-import { eDrilling_Ops } from '/@/views/types/metrics';
+import { eDimensionFilter_Ops, eDrilling_Ops } from '/@/views/types/metrics/index';
 const router = useRouter();
 const route = useRoute();
 // 瀹氫箟鍙橀噺鍐呭
@@ -200,8 +229,26 @@
 	exploreForm: {
 		dateRangeExplore: [] as any,
 		dimensionDrilling: 0,
-		dimensionFiltering: [],
+		dimensionFiltering: {
+			user: '',
+			unit: '',
+			someone: '',
+		},
 	},
+	resultList: [
+		{
+			department: 'HR',
+		},
+		{
+			department: 'marketing',
+		},
+		{
+			department: 'sales',
+		},
+		{
+			department: 'strategy',
+		},
+	],
 });
 const shortcuts = [
 	{
@@ -232,6 +279,7 @@
 		},
 	},
 ];
+
 //杩斿洖鍒扮煡璇嗗簱鍒楄〃
 const handleExitFlow = () => {
 	//鏄惁鏄剧ず杩斿洖
@@ -241,6 +289,66 @@
 	state.activeMetricName = val;
 };
 //#endregion
+//#region ====================== 鏌ヨ ======================
+const handleExplore = () => {
+	console.log(state.exploreForm);
+};
+//#endregion
+//#region ====================== init 鍥捐〃 ======================
+const chartExplorationRef = ref(null);
+
+const initChartExploration = () => {
+	const chartExploration = echarts.init(chartExplorationRef.value);
+	chartExploration.setOption({
+		tooltip: {
+			trigger: 'axis',
+			axisPointer: {
+				type: 'cross',
+				crossStyle: {
+					color: '#999',
+				},
+			},
+		},
+		legend: {
+			data: ['PV', 'UV'],
+		},
+		grid: {
+			left: '3%',
+			right: '4%',
+			bottom: '3%',
+			containLabel: true,
+		},
+		xAxis: [
+			{
+				type: 'category',
+				boundaryGap: false,
+				data: ['鍛ㄤ竴', '鍛ㄤ簩', '鍛ㄤ笁', '鍛ㄥ洓', '鍛ㄤ簲', '鍛ㄥ叚', '鍛ㄦ棩'],
+			},
+		],
+		yAxis: [
+			{
+				type: 'value',
+			},
+		],
+		series: [
+			{
+				name: 'PV',
+				type: 'line',
+				stack: '鎬婚噺',
+				areaStyle: {},
+				data: [120, 132, 101, 134, 90, 230, 210],
+			},
+			{
+				name: 'UV',
+				type: 'line',
+				stack: '鎬婚噺',
+				areaStyle: {},
+				data: [220, 182, 191, 234, 290, 330, 310],
+			},
+		],
+	});
+};
+//#endregion
 onMounted(() => {
 	const { id, name } = route.query;
 	state.metricInfo.name = name;
diff --git a/src/views/types/metrics/index.ts b/src/views/types/metrics/index.ts
index 347f0d7..b1a0df2 100644
--- a/src/views/types/metrics/index.ts
+++ b/src/views/types/metrics/index.ts
@@ -21,3 +21,14 @@
 	[eDrillingOps.Department]: '閮ㄩ棬',
 	[eDrillingOps.User]: '鐢ㄦ埛',
 } as const;
+/// 缁村害绛涢��
+export enum eDimensionFilterOps {
+	All = 0,
+	IN = 1,
+	LIKE = 2,
+}
+export const eDimensionFilter_Ops = {
+	[eDimensionFilterOps.All]: '=',
+	[eDimensionFilterOps.IN]: 'IN',
+	[eDimensionFilterOps.LIKE]: 'LIKE',
+} as const;

--
Gitblit v1.9.3