From c6c504aeac112db2ee60f9af7a994a04b9fa4ed5 Mon Sep 17 00:00:00 2001 From: 陈泽平 <chenzeping> Date: 星期三, 19 五月 2021 16:05:23 +0800 Subject: [PATCH] 事件上报修改 --- src/components/panel/RightSearchPanel.vue | 6 src/components/panel/topicSearch/EnterpriseEmergency/EventQuery.vue | 25 +++ src/components/panel/topicSearch/EnterpriseEmergency/ReportPopup.vue | 239 +++++++++++++++++++++++++++++---------- src/components/panel/topicSearch/EnterpriseEmergency/ResourcesQuery.vue | 29 +++- src/conf/Topic.js | 2 src/components/panel/topicSearch/SewersSearch.vue | 7 + src/components/panel/topicSearch/SewersSelect/SewersAnalysis.vue | 2 src/components/panel/topicSearch/EnterpriseEmergencySearch.vue | 11 - 8 files changed, 230 insertions(+), 91 deletions(-) diff --git a/src/components/panel/RightSearchPanel.vue b/src/components/panel/RightSearchPanel.vue index d4d40f3..b8fa510 100644 --- a/src/components/panel/RightSearchPanel.vue +++ b/src/components/panel/RightSearchPanel.vue @@ -60,7 +60,7 @@ import SoilGroundWaterSearch from '@components/panel/topicSearch/SoilGroundWaterSearch.vue' import PipeChangesSearch from '@components/panel/topicSearch/pipeChangesSearch.vue' import PipeInformationSearch from '@components/panel/topicSearch/pipeInformationSearch.vue' -import ReportSearch from './topicSearch/ReportSearch' +import EnterpriseEmergencySearch from './topicSearch/EnterpriseEmergencySearch' import bus from '@/eventBus' @@ -72,7 +72,7 @@ SolidWasteSearch, EnvRiskSearch, DischargeSearch, - ReportSearch + EnterpriseEmergencySearch }, data () { return { @@ -155,7 +155,7 @@ this.gcComp = PipeInformationSearch break case '浼佷笟搴旀��': - this.gcComp = ReportSearch + this.gcComp = EnterpriseEmergencySearch break } }, diff --git a/src/components/panel/topicSearch/EnterpriseEmergency/EventQuery.vue b/src/components/panel/topicSearch/EnterpriseEmergency/EventQuery.vue index ff8798d..70f0ca1 100644 --- a/src/components/panel/topicSearch/EnterpriseEmergency/EventQuery.vue +++ b/src/components/panel/topicSearch/EnterpriseEmergency/EventQuery.vue @@ -77,18 +77,24 @@ </div> </div> </el-scrollbar> +<!-- <reportPopup></reportPopup>--> </div> </template> <script> -import WfsHelper from '@components/helpers/WfsHelper' +// import WfsHelper from '@components/helpers/WfsHelper' // import AjaxUtils from '@utils/AjaxUtils' +import reportPopup from './ReportPopup' export default { name: 'EventQuery', + components: { + // reportPopup + }, data () { return { + reportIncident: false, list: [], activeNum: -1, LayerEvent: {}, @@ -117,12 +123,21 @@ } }, mounted () { - this.wfsHelper = new WfsHelper() + // this.wfsHelper = new WfsHelper() }, methods: { // 鐐瑰嚮浜嬩欢绠$悊 accordPopup () { - console.log('item') + window.$layer.open({ + content: { + comp: reportPopup, // 缁勪欢 + parent: this, // 鐖剁粍浠� + data: { // 浼犻�掔殑鍙傛暟 + // info: this.info + } + }, + title: '浜嬩欢鍒嗘瀽' + }) }, // radio鏁版嵁閫夋嫨 redioChange (item) { @@ -150,9 +165,9 @@ }, // 鏁版嵁鎼滅储浜嬩欢 async handleSearch () { - + console.log('item') }, - // 鎼滅储鐨勬暟鎹偣鍑讳簨浠� + // 鎼滅储鐨勬暟鎹� de 鐐瑰嚮浜嬩欢 handleLocation () { console.log('val') } diff --git a/src/components/panel/topicSearch/EnterpriseEmergency/ReportPopup.vue b/src/components/panel/topicSearch/EnterpriseEmergency/ReportPopup.vue index 17e97de..48f1e13 100644 --- a/src/components/panel/topicSearch/EnterpriseEmergency/ReportPopup.vue +++ b/src/components/panel/topicSearch/EnterpriseEmergency/ReportPopup.vue @@ -1,39 +1,51 @@ <template> - <!-- <div class="public-bounced map-background">--> - <!-- <div class="public-bounced-title panel-title">--> - <!-- <span>涓婃姤浜嬩欢</span>--> - <!-- <i class="el-icon-circle-close" @click="closePopup"></i>--> - <!-- </div>--> <div class="public-bounced-content"> + <!-- <el-dialog--> + <!-- custom-class="public-bounced-content_dialog"--> + <!-- title="涓婃姤浜嬩欢"--> + <!-- :visible.sync="dialogVisible"--> + <!-- :append-to-body="true"--> + <!-- :modal="false"--> + <!-- v-dialogDragBottom--> + <!-- >--> <el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-width="100px" class="search-form"> - <el-form-item label="浜嬩欢鍚嶇О" prop="nameEvent" class="input-event-name"> - <el-input v-model="ruleForm.nameEvent" placeholder="灏嗕簨浠跺懡鍚�"></el-input> + <!-- 浜嬩欢鍚嶇О--> + <el-form-item class="input-event-name" label="浜嬩欢鍚嶇О" prop="nameOfEvent"> + <el-input v-model="ruleForm.nameOfEvent" placeholder="灏嗕簨浠跺懡鍚�"></el-input> </el-form-item> - <el-form-item label="浜嬩欢绫诲瀷" prop="eventType"> - <el-radio-group v-model="ruleForm.eventType"> - <el-radio v-for="(item,index) in ruleForm.eventTypeList" :label="item.value" :key="index"> + <!-- 浜嬩欢绫诲瀷--> + <el-form-item label="浜嬩欢绫诲瀷" prop="eventOfType"> + <el-radio-group v-model="ruleForm.eventOfType"> + <el-radio v-for="(item,index) in ruleForm.eventOfTypeList" :label="item.value" :key="index"> <span>{{ item.name }}</span> </el-radio> </el-radio-group> </el-form-item> - <el-form-item label="浜嬩欢绛夌骇" prop="eventLevel"> - <el-radio-group v-model="ruleForm.eventLevel"> - <el-radio v-for="(item,index) in ruleForm.eventLevelList" :label="item.value" :key="index"> + <!-- 浜嬩欢绛夌骇--> + <el-form-item label="浜嬩欢绛夌骇" prop="eventOfLevel"> + <el-radio-group v-model="ruleForm.eventOfLevel"> + <el-radio v-for="(item,index) in ruleForm.eventOfLevelList" :label="item.value" :key="index"> <span>{{ item.name }}</span> </el-radio> </el-radio-group> </el-form-item> <el-row> + <!-- 浜嬪彂鍗曚綅--> <el-col :span="12"> - <el-form-item label="浜嬪彂鍗曚綅" prop="region"> - <el-select v-model="ruleForm.region" placeholder="璇烽�夋嫨娲诲姩鍖哄煙"> - <el-option label="鍗曚綅浣嶇疆1" value="shanghai"></el-option> - <el-option label="鍗曚綅浣嶇疆2" value="beijing"></el-option> + <el-form-item label="浜嬪彂鍗曚綅" prop="unit"> + <el-select v-model="ruleForm.unit" placeholder="璇烽�夋嫨娲诲姩鍖哄煙"> + <el-option + v-for="item in ruleForm.unitList" + :key="item.value" + :label="item.label" + :value="item.value"> + </el-option> </el-select> </el-form-item> </el-col> + <!-- 浜嬪彂鏃堕棿--> <el-col :span="12"> - <el-form-item label="浜嬪彂鏃堕棿" prop="region" class="search-panel-item"> + <el-form-item class="search-panel-item" label="浜嬪彂鏃堕棿" prop="atTime"> <el-date-picker v-model="ruleForm.atTime" type="datetime" @@ -43,29 +55,35 @@ </el-col> </el-row> <el-row> + <!-- 浜嬪彂浣嶇疆--> <el-col :span="12"> - <el-form-item label="浜嬪彂浣嶇疆" prop="region" class="search-panel-item"> - <el-input v-model="ruleForm.name" class="report-input"></el-input> + <el-form-item label="浜嬪彂浣嶇疆" prop="positionOf"> + <el-input v-model="ruleForm.positionOf"></el-input> </el-form-item> </el-col> + <!-- 浣嶇疆鎻忚堪--> <el-col :span="12"> - <el-form-item label="浣嶇疆鎻忚堪" prop="name"> - <el-input v-model="ruleForm.name" class="report-input"></el-input> + <el-form-item label="浣嶇疆鎻忚堪" prop="positionDescription"> + <el-input v-model="ruleForm.positionDescription"></el-input> </el-form-item> </el-col> </el-row> <el-row> + <!-- 绠$嚎鍚嶇О--> <el-col :span="12"> - <el-form-item label="绠$嚎鍚嶇О" prop="region" class="search-panel-item"> - <el-input v-model="ruleForm.name" class="report-input"></el-input> + <el-form-item label="绠$嚎鍚嶇О" prop="lineName" class="search-panel-item"> + <el-input disabled v-model="ruleForm.lineName" placeholder="鑷姩甯﹀嚭涓嶅彲淇敼" + class="report-input"></el-input> </el-form-item> </el-col> + <!-- 绠$嚎绫诲瀷--> <el-col :span="12"> - <el-form-item label="绠$嚎绫诲瀷" prop="name"> - <label>鑷姩甯﹀嚭涓嶅彲淇敼</label> + <el-form-item label="绠$嚎绫诲瀷" prop="lineType"> + <label>{{ ruleForm.lineTypeText }}</label> </el-form-item> </el-col> </el-row> + <!-- 鐐瑰嚮涓婁紶--> <el-form-item> <el-upload class="upload-demo" @@ -80,12 +98,15 @@ <el-button size="small" type="primary">鐐瑰嚮涓婁紶</el-button> </el-upload> </el-form-item> + <!-- 娑堟伅鎺ㄩ��--> <el-form-item label="娑堟伅鎺ㄩ��" prop="beingPush"> - <el-radio-group v-model="ruleForm.beingPush"> - <el-radio v-for="(item,index) in ruleForm.beingPushList" :label="item.value" :key="index"> - <span>{{ item.name }}</span> - </el-radio> - </el-radio-group> + <el-checkbox-group v-model="ruleForm.beingPushed" @change="infotsChange()"> + <el-checkbox v-for="item in ruleForm.beingPushList" + :key="item.name" + :label="item.name" + > + </el-checkbox> + </el-checkbox-group> </el-form-item> <div v-show="wayTo"> <el-form-item label="浜嬩欢鎻忚堪" prop="desc"> @@ -101,21 +122,23 @@ </el-form-item> </el-form> </div> - <!-- </div>--> </template> <script> -import '@utils/dragBoxes' export default { name: 'ReportPopup', data () { return { - flag: false, + dialogVisible: false, + // 琛ㄥ崟缁戝畾鏁版嵁 ruleForm: { - nameEvent: '', - eventType: '', - eventTypeList: [ + // 浜嬩欢鍚嶇О 缁戝畾鏁版嵁 + nameOfEvent: '', + // 浜嬩欢绫诲瀷 缁戝畾鏁版嵁鍊� + eventOfType: '', + // 浜嬩欢绫诲瀷鍙�夋嫨鏁版嵁radio 缁戝畾鏁版嵁 + eventOfTypeList: [ { name: '寰呰ˉ鍏�', value: 1 @@ -129,8 +152,10 @@ value: 3 } ], - eventLevel: '', - eventLevelList: [ + // 浜嬩欢绛夌骇 + eventOfLevel: '', + // 浜嬩欢绛夌骇鍙�夋嫨鏁版嵁radio 缁戝畾鏁版嵁 + eventOfLevelList: [ { name: '寰呰ˉ鍏�', value: 1 @@ -144,60 +169,128 @@ value: 3 } ], + // 浜嬪彂鍗曚綅 缁戝畾鏁版嵁鍊� + unit: '', + unitList: [ + { + label: '鎵瓙', + value: '1' + }, + { + label: '鍗椾含', + value: '2' + } + ], + // 浜嬪彂鏃堕棿 缁戝畾鏁版嵁 atTime: '', - beingPush: '', + // 浜嬪彂浣嶇疆 + positionOf: '', + // 浣嶇疆鎻忚堪 + positionDescription: '', + // 绠$嚎鍚嶇О + lineName: '', + // 绠$嚎绫诲瀷 + lineType: '', + lineTypeText: '鑷姩甯﹀嚭涓嶅彲淇敼', + // 娑堟伅鎺ㄩ�� + beingPushed: [], beingPushList: [ { name: '鐭俊鎺ㄩ��', - value: 1 + value: false }, { name: '鎵嬫満搴旂敤鎺ㄩ��', - value: 2 + value: false } ] }, - fileList: [], - wayTo: false, + // 琛ㄥ崟楠岃瘉 rules: { - name: [ + // 浜嬩欢鍚嶇О鏍¢獙 + nameOfEvent: [ { required: true, message: '璇疯緭鍏ユ椿鍔ㄥ悕绉�', trigger: 'blur' - }, + } + ], + // 浜嬩欢绫诲瀷鏍¢獙 + eventOfType: [ { - min: 3, - max: 5, - message: '闀垮害鍦� 3 鍒� 5 涓瓧绗�', + required: true, + message: '璇烽�夋嫨浜嬩欢绫诲瀷', trigger: 'blur' } ], - region: [ + // 浜嬩欢绛夌骇鏍¢獙 + eventOfLevel: [ + { + required: true, + message: '璇烽�夋嫨浜嬩欢绛夌骇', + trigger: 'blur' + } + ], + // 浜嬪彂鍗曚綅 缁戝畾鏁版嵁鍊� + unit: [ { required: true, message: '璇烽�夋嫨娲诲姩鍖哄煙', trigger: 'change' } ], - resource: [ + // 浜嬪彂鏃堕棿 + atTime: [ { required: true, message: '璇烽�夋嫨娲诲姩璧勬簮', trigger: 'change' } ], - desc: [ + // 浜嬩欢浣嶇疆鏍¢獙 + positionOf: [ { required: true, - message: '璇峰~鍐欐椿鍔ㄥ舰寮�', + message: '璇疯緭鍏ユ椿鍔ㄤ綅缃�', trigger: 'blur' } - ] - } + ], + // 浣嶇疆鎻忚堪鏍¢獙 + positionDescription: [ + { + required: true, + message: '璇疯緭鍏ヤ綅缃弿杩�', + trigger: 'blur' + } + ], + // 绠$嚎鍚嶇О + lineName: [], + // 绠$嚎绫诲瀷 + lineType: [] + }, + wayTo: false, + // 涓婁紶 + fileList: [] } }, methods: { + // 娑堟伅鎺ㄩ�� 閫夋嫨 + infotsChange () { + this.wayTo = !this.wayTo + console.log(this.ruleForm.beingPushed) + // for (let i = 0; i < this.ruleForm.beingPushed.length; i++) { + // // console.log(this.ruleForm.beingPushed[i]) + // if (this.ruleForm.beingPushed[i] === '鐭俊鎺ㄩ��' || this.ruleForm.beingPushed[i] === '鎵嬫満搴旂敤鎺ㄩ��') { + // this.wayTo = true + // } else { + // this.wayTo = !this.wayTo + // } + // } + // if (this.ruleForm.beingPushed[0] === '鐭俊鎺ㄩ��') { + // console.log('鐭俊鎺ㄩ��') + // this.wayTo = true + // } + }, handleRemove (file, fileList) { console.log(file, fileList) }, @@ -231,11 +324,24 @@ </script> <style lang="less" scoped> - .public-bounced { - z-index: 2000; - position: absolute; - top: 15%; - left: 20%; + + /deep/ .el-form-item.is-required:not(.is-no-asterisk) .el-form-item__label-wrap>.el-form-item__label:before, .el-form-item.is-required:not(.is-no-asterisk)>.el-form-item__label:before { + display: none; + } + + /deep/ .el-form-item.is-required:not(.is-no-asterisk) .el-form-item__label-wrap > .el-form-item__label:before, .el-form-item.is-required:not(.is-no-asterisk) > .el-form-item__label:after { + content: '*'; + color: #F56C6C; + margin-left: 4px; + } + /deep/ .el-checkbox__label ::after { + content: '*' !important; + color: #F56C6C !important; + margin-left: 4px !important; + } + + /deep/ .el-checkbox__label { + color: #00fff6 !important; } /deep/ input { @@ -244,12 +350,21 @@ border: solid 1px #00fff6; color: #C0C4CC; font-size: 0.01rem; - padding: 0 15px; + /*padding: 0 15px;*/ + } + + /deep/ .el-input.is-disabled .el-input__inner { + border-radius: 0; + background-color: rgba(0, 255, 246, 0.14); + border: solid 1px #00fff6; + color: #C0C4CC; + font-size: 0.01rem; + /*padding: 0 15px;*/ } /deep/ .input-event-name { margin: 15px 0; - width: 55%; + width: 75%; .el-input__inner { width: 100%; diff --git a/src/components/panel/topicSearch/EnterpriseEmergency/ResourcesQuery.vue b/src/components/panel/topicSearch/EnterpriseEmergency/ResourcesQuery.vue index a0f5f65..05777b2 100644 --- a/src/components/panel/topicSearch/EnterpriseEmergency/ResourcesQuery.vue +++ b/src/components/panel/topicSearch/EnterpriseEmergency/ResourcesQuery.vue @@ -53,18 +53,22 @@ </template> <script> +// wfs ajax import WfsHelper from '@components/helpers/WfsHelper' import AjaxUtils from '@utils/AjaxUtils' +// 鍥惧眰鎺у埗閫夋嫨鐨勬暟鎹� import { LayerEmergencySource } from '../../../../conf/layers/LayerEmergencySource' import { LayerSurroundings } from '../../../../conf/layers/LayerSurroundings' -// import { pulseEffect } from '../../../../utils/utils' -import { locate } from '../../../helpers/LocateHelper' +// 寮曞叆鐨勬柟娉� +import { pulseEffect } from '../../../../utils/utils' +// import { locate } from '../../../helpers/LocateHelper' // import { fitBounds, highlight, locate, openPropsPopup } from '../../../helpers/LocateHelper' export default { name: 'ResourcesQuery', data () { return { + // form 琛ㄥ崟缁戝畾鏁版嵁 form: { eventName: '', pipelineType: LayerEmergencySource.name, @@ -75,11 +79,16 @@ { name: '鍗椾含鍖栧' } ] }, + // 鎼滅储鍒扮殑鏁版嵁缁戝畾鐨刟ctive鐨勬牱寮� activeNum: -1, + // 鎼滅储鍒扮殑鏁版嵁杩涜瀛樺偍鐨刲ist list: [], + // form琛ㄥ崟缁戝畾鐨勫浘灞傛暟鎹� items: [LayerEmergencySource, LayerSurroundings], subItems: LayerEmergencySource.layers || LayerSurroundings.layers, + // wfs WfsHelper: null, + // 搴旀�� || 鍛ㄨ竟 鐨勫尯鍒嗙粦瀹氭暟鎹� changeAmount: '璧勬簮' } }, @@ -87,11 +96,13 @@ this.wfsHelper = new WfsHelper() }, methods: { + // 鎼滅储灞曠ず鍥剧墖鏍规嵁杩斿洖鍊煎睍绀� getImgSrc (type) { // console.log(type) // const icon = this.form.dataType.icon return 'assets/images/map/sewers/' + type + '.png' }, + // form 琛ㄥ崟閫夋嫨鏁版嵁鏁版嵁閫夋嫨鍒嗛厤 handlePipelineType (val) { // console.log(val) this.list = [] @@ -110,10 +121,12 @@ this.changeAmount = '鐜' } }, + // 浜岀骇from琛ㄥ崟閫夋嫨鏁版嵁娓呯┖ 宸叉湁灞曠ず鏁版嵁 handleDataType (val) { // console.log(val) this.list = [] }, + // 鐐瑰嚮鎼滅储浜嬩欢 async handleSearch () { this.list = [] this.wfsHelper.clearFilter() @@ -136,13 +149,13 @@ }, // 鏌ヨ瀹氫綅鍔熻兘 handleLocation (val, index) { - console.log(val) + // console.log(val) this.activeNum = index - const config = this.form.dataType - locate(val, config) - // const positionArea = [val.properties.y, val.properties.x] - // window.map.setView(positionArea, 17) - // pulseEffect(positionArea) + const positionArea = [val.properties.y, val.properties.x] + window.map.setView(positionArea, 17) + pulseEffect(positionArea) + // const config = this.form.dataType + // locate(val, config) // fitBounds(val, this.form.dataType.code) // highlight(val, this.form.dataType) } diff --git a/src/components/panel/topicSearch/ReportSearch.vue b/src/components/panel/topicSearch/EnterpriseEmergencySearch.vue similarity index 72% rename from src/components/panel/topicSearch/ReportSearch.vue rename to src/components/panel/topicSearch/EnterpriseEmergencySearch.vue index d7b4b4d..09db101 100644 --- a/src/components/panel/topicSearch/ReportSearch.vue +++ b/src/components/panel/topicSearch/EnterpriseEmergencySearch.vue @@ -9,17 +9,15 @@ <ResourcesQuery></ResourcesQuery> </el-tab-pane> </el-tabs> - <!-- <ReportPopup></ReportPopup>--> </div> </template> <script> import EventQuery from './EnterpriseEmergency/EventQuery' import ResourcesQuery from './EnterpriseEmergency/ResourcesQuery' -// import ReportPopup from './SewersSelect/EnterpriseEmergency/ReportPopup' export default { - name: 'ReportSearch', + name: 'EnterpriseEmergencySearch', props: ['title'], components: { EventQuery, @@ -35,13 +33,6 @@ methods: { handleClick (tab) { console.log(tab) - if (tab.label === '鍒嗘瀽') { - // 鍏抽棴寮圭獥 - window.layerFactory.clickSwitch = false - } else { - // 鎵撳紑寮圭獥 - window.layerFactory.clickSwitch = true - } } } } diff --git a/src/components/panel/topicSearch/SewersSearch.vue b/src/components/panel/topicSearch/SewersSearch.vue index 698c1d5..40677f1 100644 --- a/src/components/panel/topicSearch/SewersSearch.vue +++ b/src/components/panel/topicSearch/SewersSearch.vue @@ -135,6 +135,13 @@ // tab鍒囨崲 handleClick (tab, event) { console.log(tab, event) + if (tab.label === '鍒嗘瀽') { + // 鍏抽棴寮圭獥 + window.layerFactory.clickSwitch = false + } else { + // 鎵撳紑寮圭獥 + window.layerFactory.clickSwitch = true + } }, // 鏍规嵁杩斿洖鏁版嵁 纭灞曠ず鍥剧墖 getImgSrc () { diff --git a/src/components/panel/topicSearch/SewersSelect/SewersAnalysis.vue b/src/components/panel/topicSearch/SewersSelect/SewersAnalysis.vue index ad9b07f..949543b 100644 --- a/src/components/panel/topicSearch/SewersSelect/SewersAnalysis.vue +++ b/src/components/panel/topicSearch/SewersSelect/SewersAnalysis.vue @@ -215,8 +215,6 @@ // 杩為�氭�� 璧峰绠℃ table鍒楄〃鏁版嵁 閫夋嫨鏁版嵁浜嬩欢 鐨勭偣鍑讳簨浠� linkSelectStart (e) { // console.log(e) - // console.log('閫夋嫨璧峰绠℃') - // this.$refs.singleTable.setCurrentRow(e) this.currentSelectStart = e if (this.currentSelectStartLine != null) { this.currentSelectStartLine.remove() diff --git a/src/conf/Topic.js b/src/conf/Topic.js index 31db08c..8e4e0d7 100644 --- a/src/conf/Topic.js +++ b/src/conf/Topic.js @@ -9,7 +9,7 @@ envProtectSearch: () => import('@components/panel/topicSearch/EnvRiskSearch'), soilGroundWaterSearch: () => import('@components/panel/topicSearch/SoilGroundWaterSearch'), sewersSearch: () => import('@components/panel/topicSearch/SewersSearch.vue'), - ReportSearchL: () => import('@components/panel/topicSearch/ReportSearch.vue') + EnterpriseEmergencySearch: () => import('@components/panel/topicSearch/EnterpriseEmergencySearch.vue') } export const TopicList = [{ -- Gitblit v1.8.0