From 29ea0fd5d04dbaac800f211e0ac7701de0a7f3f4 Mon Sep 17 00:00:00 2001
From: zxl <763096477@qq.com>
Date: 星期一, 15 九月 2025 15:18:08 +0800
Subject: [PATCH] 新需求
---
src/views/home/data-video/index.vue | 17 +++++
src/layout/components/Navbar.vue | 12 ++--
src/views/home/data-face/index.vue | 19 +++++
src/views/system/check/result/index.vue | 4 +
src/views/home/data-car/index.vue | 20 ++++++
src/components/Editor/index.vue | 29 +++++++++
src/views/system/report/index.vue | 60 ++++++++++++++++++-
src/views/system/work-order/index.vue | 15 ++++
8 files changed, 157 insertions(+), 19 deletions(-)
diff --git a/src/components/Editor/index.vue b/src/components/Editor/index.vue
index 692d899..913999c 100644
--- a/src/components/Editor/index.vue
+++ b/src/components/Editor/index.vue
@@ -157,6 +157,17 @@
init() {
const editor = this.$refs.editor;
this.Quill = new Quill(editor, this.options);
+ // 鏂板锛氱紪杈戝尯鍩熺偣鍑昏仛鐒﹂�昏緫
+ const qlEditor = editor.querySelector('.ql-editor');
+ if (qlEditor && !this.readOnly) {
+ qlEditor.addEventListener('click', () => {
+ this.Quill.focus(); // 鐐瑰嚮鏃跺己鍒惰仛鐒�
+ });
+ if (!this.currentValue) {
+ qlEditor.classList.add('ql-blank'); // 绌哄唴瀹规椂鏄剧ず鍗犱綅绗�
+ }
+ }
+
// 濡傛灉璁剧疆浜嗕笂浼犲湴鍧�鍒欒嚜瀹氫箟鍥剧墖涓婁紶浜嬩欢
if (this.type == 'url') {
let toolbar = this.Quill.getModule("toolbar");
@@ -224,7 +235,23 @@
</script>
<style>
-.editor,
+.editor {
+ position: relative;
+ line-height: normal !important;
+}
+.ql-editor {
+ min-height: inherit !important; /* 缁ф壙鐖跺鍣ㄧ殑min-height */
+ height: 100% !important; /* 鍗犳弧鐖跺鍣ㄩ珮搴� */
+ cursor: text; /* 鏄剧ず鏂囨湰鍏夋爣锛屾彁绀哄彲鐐瑰嚮 */
+ padding: 12px 15px; /* 鎵╁ぇ鐐瑰嚮鑼冨洿 */
+ box-sizing: border-box; /* 鍐呰竟璺濅笉瓒呭嚭瀹瑰櫒 */
+}
+.ql-editor.ql-blank::before {
+ content: attr(data-placeholder);
+ color: rgba(0, 0, 0, 0.3);
+ font-style: italic;
+ pointer-events: none; /* 涓嶅奖鍝嶇偣鍑讳簨浠� */
+}
.ql-toolbar {
white-space: pre-wrap !important;
line-height: normal !important;
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
index 90c59ec..6fca5d2 100644
--- a/src/layout/components/Navbar.vue
+++ b/src/layout/components/Navbar.vue
@@ -41,12 +41,12 @@
<div class="button-container">
<el-button v-if="roles.includes('admin') || roles.includes('county_leader') || roles.includes('city_leader')" type="primary" @click="toScreen" size="small">鍙鍖栧ぇ灞�</el-button>
</div>
- <div class="button-container">
- <el-button type="primary" @click="toSystemB" size="small">璺宠浆B绯荤粺</el-button>
- </div>
- <div class="button-container">
- <el-button type="primary" @click="toSystemA" size="small">璺宠浆A绯荤粺</el-button>
- </div>
+<!-- <div class="button-container">-->
+<!-- <el-button type="primary" @click="toSystemB" size="small">璺宠浆B绯荤粺</el-button>-->
+<!-- </div>-->
+<!-- <div class="button-container">-->
+<!-- <el-button type="primary" @click="toSystemA" size="small">璺宠浆A绯荤粺</el-button>-->
+<!-- </div>-->
</div>
</template>
diff --git a/src/views/home/data-car/index.vue b/src/views/home/data-car/index.vue
index d860e8c..04b0fb5 100644
--- a/src/views/home/data-car/index.vue
+++ b/src/views/home/data-car/index.vue
@@ -16,10 +16,17 @@
</el-option>
</el-select>
</div>
- <div class="select-container">
+ <div style="margin-right: 20px">
<el-date-picker v-model="date" format="yyyy-MM" value-format="yyyy-MM" type="month" placeholder="閫夋嫨鏈堜唤"
@change="dateChange">
</el-date-picker>
+ </div>
+
+ <div>
+ <el-select v-model="params.area" placeholder="鍖哄幙" @change="getChart" clearable>
+ <el-option v-for="item in areaOption" :key="item.label" :label="item.label" :value="item.value">
+ </el-option>
+ </el-select>
</div>
</div>
<div class="chart-container">
@@ -48,6 +55,15 @@
},
options: [
{label: '鐪佸巺', value: 1},
+ ],
+ areaOption:[
+ {label:'鑷祦浜曞尯',value:'510302'},
+ {label:'璐′簳鍖�',value:'510303'},
+ {label:'澶у畨鍖�',value:'510304'},
+ {label:'娌挎哗鍖�',value:'510311'},
+ {label:'鑽e幙',value:'510321'},
+ {label:'瀵岄『鍘�',value:'510322'},
+ {label:'楂樻柊鍖�',value:'510399'},
],
categories: [
{label: '绱鏁版嵁', value: 1},
@@ -346,7 +362,7 @@
}
.select-container {
- margin-left: 20px;
+ margin: 0 20px;
width: 180px;
}
</style>
diff --git a/src/views/home/data-face/index.vue b/src/views/home/data-face/index.vue
index d55da51..ea68755 100644
--- a/src/views/home/data-face/index.vue
+++ b/src/views/home/data-face/index.vue
@@ -16,10 +16,16 @@
</el-option>
</el-select>
</div>
- <div class="select-container">
+ <div style="margin-right: 20px">
<el-date-picker v-model="date" format="yyyy-MM" value-format="yyyy-MM" type="month" placeholder="閫夋嫨鏈堜唤"
@change="dateChange">
</el-date-picker>
+ </div>
+ <div >
+ <el-select v-model="params.area" placeholder="鍖哄幙" @change="getChart" clearable>
+ <el-option v-for="item in areaOption" :key="item.label" :label="item.label" :value="item.value">
+ </el-option>
+ </el-select>
</div>
</div>
<div class="chart-container">
@@ -50,6 +56,15 @@
categories: [
{label: '绱鏁版嵁', value: 1},
{label: '姣忔棩鏁版嵁', value: 2},
+ ],
+ areaOption:[
+ {label:'鑷祦浜曞尯',value:'510302'},
+ {label:'璐′簳鍖�',value:'510303'},
+ {label:'澶у畨鍖�',value:'510304'},
+ {label:'娌挎哗鍖�',value:'510311'},
+ {label:'鑽e幙',value:'510321'},
+ {label:'瀵岄『鍘�',value:'510322'},
+ {label:'楂樻柊鍖�',value:'510399'},
],
options: [
{label: '鐪佸巺', value: 1}
@@ -348,7 +363,7 @@
}
.select-container {
- margin-left: 20px;
+ margin: 0 20px;
width: 180px;
}
</style>
diff --git a/src/views/home/data-video/index.vue b/src/views/home/data-video/index.vue
index 3fe8671..384123e 100644
--- a/src/views/home/data-video/index.vue
+++ b/src/views/home/data-video/index.vue
@@ -10,10 +10,16 @@
</el-option>
</el-select>
</div>
- <div >
+ <div style="margin-right: 20px" >
<el-date-picker v-model="date" format="yyyy-MM" value-format="yyyy-MM" type="month" placeholder="閫夋嫨鏈堜唤"
@change="dateChange">
</el-date-picker>
+ </div>
+ <div >
+ <el-select v-model="params.area" placeholder="鍖哄幙" @change="getChart" clearable>
+ <el-option v-for="item in areaOption" :key="item.label" :label="item.label" :value="item.value">
+ </el-option>
+ </el-select>
</div>
</div>
<div class="chart-container">
@@ -42,6 +48,15 @@
{label: '鐪佸巺', value: 1},
{label: '鍏畨閮�', value: 2}
],
+ areaOption:[
+ {label:'鑷祦浜曞尯',value:'510302'},
+ {label:'璐′簳鍖�',value:'510303'},
+ {label:'澶у畨鍖�',value:'510304'},
+ {label:'娌挎哗鍖�',value:'510311'},
+ {label:'鑽e幙',value:'510321'},
+ {label:'瀵岄『鍘�',value:'510322'},
+ {label:'楂樻柊鍖�',value:'510399'},
+ ],
dataList: [],
}
},
diff --git a/src/views/system/check/result/index.vue b/src/views/system/check/result/index.vue
index a6be274..55709c4 100644
--- a/src/views/system/check/result/index.vue
+++ b/src/views/system/check/result/index.vue
@@ -107,7 +107,7 @@
<div v-if="score.examineCategory == 2">杞﹁締锛�</div>
<div v-else-if="score.examineCategory == 3">浜鸿劯锛�</div>
<div v-else-if="score.examineCategory == 1">瑙嗛锛�</div>
- <div class="score">{{ score.score }}</div>
+ <div class="score">{{ (score.score * 10).toFixed(2) + '%' }}</div>
</div>
</div>
</div>
@@ -456,6 +456,8 @@
this.loading = true;
listScore(this.queryParams).then(response => {
this.checkScoreList = response.data;
+
+
// this.setChartOption(this.checkScoreList);
this.loading = false;
});
diff --git a/src/views/system/report/index.vue b/src/views/system/report/index.vue
index df53f4e..8d18a89 100644
--- a/src/views/system/report/index.vue
+++ b/src/views/system/report/index.vue
@@ -15,14 +15,44 @@
<el-option v-for="dict in dict.type.report_error_type" :value="dict.value" :key="dict.value" :label="dict.label" />
</el-select>
</el-form-item>
- <el-form-item label="瀹℃牳鐘舵��">
- <el-select v-model="queryParams.status" @change="handleQuery" placeholder="瀹℃牳鐘舵��" clearable>
+ <el-form-item label="鎶ュ鏃堕棿" prop="timeRange" >
+ <el-date-picker
+ v-model="reportTimeRange"
+ type="daterange"
+ range-separator="鑷�"
+ value-format="yyyy-MM-dd"
+ start-placeholder="寮�濮嬫棩鏈�"
+ end-placeholder="缁撴潫鏃ユ湡"
+ @change="handleQuery"
+ clearable
+ >
+ </el-date-picker>
+ </el-form-item>
+
+ <el-form-item label="鏈夋晥鏃堕棿" prop="timeRange" >
+ <el-date-picker
+ v-model="effectiveTimeRange"
+ type="daterange"
+ range-separator="鑷�"
+ value-format="yyyy-MM-dd"
+ start-placeholder="寮�濮嬫棩鏈�"
+ end-placeholder="缁撴潫鏃ユ湡"
+ @change="handleQuery"
+ clearable
+ >
+ </el-date-picker>
+ </el-form-item>
+
+ <el-form-item label="">
+ <el-select v-model="queryParams.status" @change="handleQuery" placeholder="" clearable>
<el-option label="鍏ㄩ儴" value="" />
<el-option label="瀹℃牳涓�" :value="0" />
<el-option label="瀹℃牳鏈�氳繃" :value="2" />
<el-option label="瀹℃牳閫氳繃" :value="1" />
</el-select>
</el-form-item>
+
+
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="small" @click="handleQuery">鎼滅储</el-button>
<el-button icon="el-icon-refresh" size="small" @click="resetQuery">閲嶇疆</el-button>
@@ -319,7 +349,7 @@
fileList: [],
url: process.env.VUE_APP_BASE_API + '/report/import',
addOrImport: 'add',
- fileType: ["doc", "xls", "xlsx", "ppt", "txt", "pdf", "png", "jpg"],
+ fileType: ["doc", "xls", "xlsx", "ppt", "txt", "pdf", "png", "jpg","docx"],
auditingRecordList: [],
// 鐐逛綅list
pointList: [],
@@ -361,6 +391,8 @@
auditingResult: false,
daterangeCreateTime: []
},
+ reportTimeRange:null,//鎶ュ鏃堕棿
+ effectiveTimeRange:null,//鏈夋晥鏃堕棿
// 鏌ヨ鍙傛暟
queryParams: {
pageNum: 1,
@@ -369,7 +401,11 @@
errorType: null,
status: '',
reportType: null,
- errorTypeList: []
+ errorTypeList: [],
+ reportTimeStart:null,
+ reportTimeEnd:null,
+ effectTimeStart:null,
+ effectTimeEnd:null,
},
// 琛ㄥ崟鍙傛暟
form: {},
@@ -524,6 +560,22 @@
},
/** 鎼滅储鎸夐挳鎿嶄綔 */
handleQuery() {
+ if (this.reportTimeRange && this.reportTimeRange.length > 0) {
+ this.queryParams.reportTimeStart = this.reportTimeRange[0]
+ this.queryParams.reportTimeEnd = this.reportTimeRange[1]
+ }else {
+ this.queryParams.reportTimeStart = null
+ this.queryParams.reportTimeEnd = null
+ }
+
+ if (this.effectiveTimeRange && this.effectiveTimeRange.length >0){
+ this.queryParams.effectTimeStart = this.effectiveTimeRange[0]
+ this.queryParams.effectTimeEnd = this.effectiveTimeRange[1]
+ }else {
+ this.queryParams.effectTimeStart = null
+ this.queryParams.effectTimeEnd = null
+ }
+
this.queryParams.pageNum = 1;
this.getList();
},
diff --git a/src/views/system/work-order/index.vue b/src/views/system/work-order/index.vue
index 5c3514e..49fa946 100644
--- a/src/views/system/work-order/index.vue
+++ b/src/views/system/work-order/index.vue
@@ -355,8 +355,8 @@
<el-form-item label="杩愮淮鍗曚綅" prop="unitName" v-if="!isConditionList">
<el-input v-model="ywConditionForm.unitName" disabled/>
</el-form-item>
- <el-form-item label="鐜板満鎯呭喌" prop="ywCondition">
- <editor v-model="form.ywCondition" :min-height="192"/>
+ <el-form-item label="鐜板満鎯呭喌" prop="ywCondition" >
+ <editor ref="ywEditor" v-model="form.ywCondition" :min-height="192" />
</el-form-item>
<el-form-item label="浣愯瘉鏉愭枡" prop="ywProofMaterials">
<file-upload v-model="form.ywProofMaterials"/>
@@ -737,6 +737,17 @@
this.getList()
},
methods: {
+ activateEditor() {
+ console.log("瑙﹀彂鐐瑰嚮浜嬩欢")
+ // 鑾峰彇缂栬緫鍣ㄥ疄渚嬪苟瑙﹀彂鑱氱劍锛堝叿浣撴柟娉曞彇鍐充簬editor缁勪欢鐨凙PI锛�
+ const editor = this.$refs.ywEditor;
+ if (editor && editor.focus) {
+ editor.focus(); // 瑙﹀彂缂栬緫鐘舵��
+ } else if (editor && editor.$el) {
+ // 鍏煎鎬у鐞嗭細鐩存帴鑱氱劍缂栬緫鍣ㄧ殑DOM鍏冪礌
+ editor.$el.focus();
+ }
+ },
selectedDistribute(){
this.form = {}
if (this.workOrderNumbers.length < 1) {
--
Gitblit v1.8.0