src/api/index.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/components.d.ts | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/constant/scene-types/options.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/sourcetrace/SourceTrace.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/sourcetrace/component/ClueRecordItem.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/sourcetrace/component/SourceTraceFilter.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/api/index.js
@@ -1,8 +1,8 @@ import axios from 'axios'; import { ElMessage } from 'element-plus'; const openLog = true; const debug = true; const openLog = false; const debug = false; let ip1 = 'http://47.100.191.150:9029/'; let ws = `47.100.191.150:9031`; src/components.d.ts
@@ -14,7 +14,6 @@ 'CardDialog copy': typeof import('./components/CardDialog copy.vue')['default'] CheckButton: typeof import('./components/common/CheckButton.vue')['default'] ConfigManage: typeof import('./components/map/ConfigManage.vue')['default'] copy: typeof import('./components/CardDialog copy.vue')['default'] CoreHeader: typeof import('./components/core/CoreHeader.vue')['default'] CoreMenu: typeof import('./components/core/CoreMenu.vue')['default'] DataSummary: typeof import('./components/monitor/DataSummary.vue')['default'] @@ -39,6 +38,7 @@ ElFormItem: typeof import('element-plus/es')['ElFormItem'] ElIcon: typeof import('element-plus/es')['ElIcon'] ElInput: typeof import('element-plus/es')['ElInput'] ElInputNumber: typeof import('element-plus/es')['ElInputNumber'] ElLink: typeof import('element-plus/es')['ElLink'] ElOption: typeof import('element-plus/es')['ElOption'] ElPagination: typeof import('element-plus/es')['ElPagination'] src/constant/scene-types/options.js
@@ -82,5 +82,9 @@ { label: '市控点', value: '20' }, { label: '小微站', value: '21' } ]; src/views/sourcetrace/SourceTrace.vue
@@ -200,7 +200,10 @@ } // 判断场景类型是否选中 if (v.pollutedSource.sceneList.length == 0) { if ( v.pollutedSource == undefined || v.pollutedSource.sceneList.length == 0 ) { b3 = selectedSceneTypes.value.indexOf(NO_SCENE) != -1; } else { b3 = @@ -306,25 +309,29 @@ } // 筛选场景类型 if (objData.pollutedSource.sceneList.length == 0) { // 若没有找到风险源时,将该分类设定为null if (sceneOptions.value.findIndex((v) => v.value == NO_SCENE) == -1) { sceneOptions.value.push({ label: '未知', value: NO_SCENE }); selectedSceneTypes.value.push(NO_SCENE); } } else { objData.pollutedSource.sceneList.forEach((s) => { if (sceneOptions.value.findIndex((v) => v.value == s.typeId) == -1) { if (objData.pollutedSource != undefined) { if (objData.pollutedSource.sceneList.length == 0) { // 若没有找到风险源时,将该分类设定为null if (sceneOptions.value.findIndex((v) => v.value == NO_SCENE) == -1) { sceneOptions.value.push({ label: s.type, value: s.typeId label: '未知', value: NO_SCENE }); selectedSceneTypes.value.push(s.typeId); selectedSceneTypes.value.push(NO_SCENE); } }); } else { objData.pollutedSource.sceneList.forEach((s) => { if ( sceneOptions.value.findIndex((v) => v.value == s.typeId) == -1 ) { sceneOptions.value.push({ label: s.type, value: s.typeId }); selectedSceneTypes.value.push(s.typeId); } }); } } // case '2': // break; @@ -355,6 +362,10 @@ dataAnalysisApi .fetchPollutionTraceHistory(props.missionCode) .then((res) => { factorOptions.value = []; selectedFactorTypes.value = []; sceneOptions.value = []; selectedSceneTypes.value = []; const objList = JSON.parse(res.data); objList.forEach((obj) => { obj._type = obj.msgType + ''; src/views/sourcetrace/component/ClueRecordItem.vue
@@ -43,7 +43,7 @@ <el-text :type="noWarn ? 'info' : 'warning'"> {{ item.pollutedSource.sceneList.length == 0 ? '未找到风险源' ? '可能存在现场污染,请注意周边情况。' : '找到' + item.pollutedSource.sceneList.length + '个风险源' }} </el-text> src/views/sourcetrace/component/SourceTraceFilter.vue
@@ -26,15 +26,15 @@ size="default" :min="1" > <el-space> <el-checkbox v-for="item in factorOptions" :value="item.value" :key="item.label" > {{ item.label }} </el-checkbox> </el-space> <!-- <el-space> --> <el-checkbox v-for="item in factorOptions" :value="item.value" :key="item.label" > {{ item.label }} </el-checkbox> <!-- </el-space> --> </el-checkbox-group> </el-space> </div> @@ -65,13 +65,30 @@ import { ref } from 'vue'; const props = defineProps({ // 数据切片,线索、提示、溯源 /** * 包含追踪信息的数据切片,包括线索、提示和溯源数据 * @type {Array} */ dataSlice: Array, // 监测因子 /** * 监测因子类型数组 * @type {Array} */ factorType: Array, /** * 监测因子的可用选项 * @type {Array<{value: string, label: string}>} */ factorOptions: Array, // 场景类型 /** * 用于过滤的场景类型数组 * @type {Array} */ sceneType: Array, /** * 场景选择的可用选项 * @type {Array<{value: string, label: string}>} */ sceneOptions: Array });