From 32eedf2857255cf29985ffc0cc73e75eccda39bf Mon Sep 17 00:00:00 2001
From: Riku <risaku@163.com>
Date: 星期六, 20 九月 2025 22:18:15 +0800
Subject: [PATCH] 2025.9.20 完成现场巡查基础数据产品和月度巡查简报的中间数据产品
---
src/api/index.js | 4 +-
src/views/fysp/data-product/middle-data-product/ProdEvaluationSummary.vue | 91 ++++++++++++++++++++++++++++++++++++++++++++-
src/components.d.ts | 10 -----
src/views/fysp/data-product/middle-data-product/ManageMiddleProd.vue | 8 ++--
4 files changed, 95 insertions(+), 18 deletions(-)
diff --git a/src/api/index.js b/src/api/index.js
index bf34904..7b8275a 100644
--- a/src/api/index.js
+++ b/src/api/index.js
@@ -13,8 +13,8 @@
let ip2_file = 'https://fyami.com.cn/';
if (debug) {
- ip1 = 'http://192.168.0.103:9001/';
- // ip1 = 'http://localhost:9001/';
+ // ip1 = 'http://192.168.0.103:9001/';
+ ip1 = 'http://localhost:9001/';
// ip1_file = 'http://192.168.0.138:8080/';
// ip2 = 'http://192.168.0.138:8080/';
// ip2_file = 'https://fyami.com.cn/';
diff --git a/src/components.d.ts b/src/components.d.ts
index b4c64c6..9786e14 100644
--- a/src/components.d.ts
+++ b/src/components.d.ts
@@ -13,7 +13,6 @@
CompGenericWrapper: typeof import('./components/CompGenericWrapper.vue')['default']
CompQuickSet: typeof import('./components/search-option/CompQuickSet.vue')['default']
Content: typeof import('./components/core/Content.vue')['default']
- copy: typeof import('./components/search-option/FYOptionScene copy.vue')['default']
ElAffix: typeof import('element-plus/es')['ElAffix']
ElAlert: typeof import('element-plus/es')['ElAlert']
ElAside: typeof import('element-plus/es')['ElAside']
@@ -22,11 +21,8 @@
ElBreadcrumb: typeof import('element-plus/es')['ElBreadcrumb']
ElBreadcrumbItem: typeof import('element-plus/es')['ElBreadcrumbItem']
ElButton: typeof import('element-plus/es')['ElButton']
- ElCalendar: typeof import('element-plus/es')['ElCalendar']
ElCard: typeof import('element-plus/es')['ElCard']
ElCascader: typeof import('element-plus/es')['ElCascader']
- ElCheckbox: typeof import('element-plus/es')['ElCheckbox']
- ElCheckboxGroup: typeof import('element-plus/es')['ElCheckboxGroup']
ElCol: typeof import('element-plus/es')['ElCol']
ElCollapse: typeof import('element-plus/es')['ElCollapse']
ElCollapseItem: typeof import('element-plus/es')['ElCollapseItem']
@@ -47,21 +43,16 @@
ElImageViewer: typeof import('element-plus/es')['ElImageViewer']
ElInput: typeof import('element-plus/es')['ElInput']
ElInputNumber: typeof import('element-plus/es')['ElInputNumber']
- ElLink: typeof import('element-plus/es')['ElLink']
ElMain: typeof import('element-plus/es')['ElMain']
ElMenu: typeof import('element-plus/es')['ElMenu']
ElMenuItem: typeof import('element-plus/es')['ElMenuItem']
ElMenuItemGroup: typeof import('element-plus/es')['ElMenuItemGroup']
ElOption: typeof import('element-plus/es')['ElOption']
- ElPageHeader: typeof import('element-plus/es')['ElPageHeader']
- ElPagination: typeof import('element-plus/es')['ElPagination']
ElPopover: typeof import('element-plus/es')['ElPopover']
ElRadio: typeof import('element-plus/es')['ElRadio']
- ElRadioButton: typeof import('element-plus/es')['ElRadioButton']
ElRadioGroup: typeof import('element-plus/es')['ElRadioGroup']
ElRow: typeof import('element-plus/es')['ElRow']
ElScrollbar: typeof import('element-plus/es')['ElScrollbar']
- ElSegmented: typeof import('element-plus/es')['ElSegmented']
ElSelect: typeof import('element-plus/es')['ElSelect']
ElSpace: typeof import('element-plus/es')['ElSpace']
ElStep: typeof import('element-plus/es')['ElStep']
@@ -75,7 +66,6 @@
ElTag: typeof import('element-plus/es')['ElTag']
ElText: typeof import('element-plus/es')['ElText']
ElTooltip: typeof import('element-plus/es')['ElTooltip']
- ElTransfer: typeof import('element-plus/es')['ElTransfer']
ElTree: typeof import('element-plus/es')['ElTree']
ElUpload: typeof import('element-plus/es')['ElUpload']
Footer: typeof import('./components/core/Footer.vue')['default']
diff --git a/src/views/fysp/data-product/middle-data-product/ManageMiddleProd.vue b/src/views/fysp/data-product/middle-data-product/ManageMiddleProd.vue
index cb2ee56..a66cf7c 100644
--- a/src/views/fysp/data-product/middle-data-product/ManageMiddleProd.vue
+++ b/src/views/fysp/data-product/middle-data-product/ManageMiddleProd.vue
@@ -18,10 +18,10 @@
name: '鍒嗚闀囧崟鍦烘櫙闂鏁板潎鍊�',
path: 'problemCountSummary'
},
- {
- name: '鐩戞祴璁惧姹囨��',
- path: 'monitorDeviceSummary'
- },
+ // {
+ // name: '鐩戞祴璁惧姹囨��',
+ // path: 'monitorDeviceSummary'
+ // },
{
name: '璇勪及鎯呭喌姹囨��',
path: 'evaluationSummary'
diff --git a/src/views/fysp/data-product/middle-data-product/ProdEvaluationSummary.vue b/src/views/fysp/data-product/middle-data-product/ProdEvaluationSummary.vue
index 21ce1c9..d234759 100644
--- a/src/views/fysp/data-product/middle-data-product/ProdEvaluationSummary.vue
+++ b/src/views/fysp/data-product/middle-data-product/ProdEvaluationSummary.vue
@@ -6,6 +6,57 @@
@onStep3="onStep3"
:loading="loading"
>
+ <template #step2="{ contentHeight }">
+ <el-table
+ id="prod-evaluation-summary-table"
+ :data="tableData"
+ v-loading="loading"
+ :height="contentHeight + 'px'"
+ table-layout="fixed"
+ :show-overflow-tooltip="true"
+ size="small"
+ border
+ >
+ <el-table-column fixed="left" prop="index" label="鎺掑悕" width="50">
+ </el-table-column>
+ <el-table-column prop="townName" label="琛楅晣" min-width="110" />
+ <el-table-column
+ prop="validSceneCount"
+ label="寤鸿涓伐鍦版暟"
+ min-width="90"
+ >
+ </el-table-column>
+ <el-table-column
+ prop="evaluationCount"
+ label="璇勪及鐐规"
+ min-width="50"
+ />
+ <el-table-column label="闃叉不瑙勮寖鎬х偣娆¤瘎浼�" min-width="60">
+ <el-table-column prop="evalLevelACount" label="瑙勮寖" min-width="50" />
+ <el-table-column
+ prop="evalLevelBCount"
+ label="鍩烘湰瑙勮寖"
+ min-width="50"
+ />
+ <el-table-column
+ prop="evalLevelCCount"
+ label="涓嶈鑼�"
+ min-width="50"
+ />
+ <el-table-column
+ prop="evalLevelDCount"
+ label="涓ラ噸涓嶈鑼�"
+ min-width="50"
+ />
+ </el-table-column>
+ <el-table-column
+ prop="evalLevelRatioAB"
+ label="瑙勮寖鍙婂熀鏈鑼冭瘎浼板崰姣�"
+ min-width="90"
+ :formatter="ratioFormat"
+ />
+ </el-table>
+ </template>
</BaseProdProcess>
</template>
<script setup>
@@ -17,12 +68,48 @@
const { active, changeActive } = useProdStepChange();
const loading = ref(false);
+const tableData = ref([]);
-function onStep1(opt) {}
+function onStep1(opt) {
+ loading.value = true;
+ dataprodmiddleApi
+ .fetchEvaluationByArea(opt)
+ .then((res) => {
+ if (res.success) {
+ tableData.value = res.data
+ .sort((a, b) => {
+ return b.evalLevelRatioAB - a.evalLevelRatioAB;
+ })
+ .map((item, index) => {
+ return {
+ ...item,
+ index: index + 1
+ };
+ });
+ }
+ changeActive();
+ })
+ .finally(() => {
+ loading.value = false;
+ });
+}
function onStep2() {
changeActive();
}
-function onStep3(val) {}
+function onStep3(val) {
+ if (val.downloadType == '1') {
+ loading.value = true;
+ conversionFromTable(
+ 'prod-evaluation-summary-table',
+ '鎵皹姹℃煋闂绫诲瀷鍗犳瘮娓呭崟'
+ );
+ loading.value = false;
+ }
+}
+
+function ratioFormat(row, column, cellValue, index) {
+ return Math.round(cellValue * 1000) / 10 + '%';
+}
</script>
--
Gitblit v1.9.3