Browse Source

fix: 修复编辑模型数字工坊的信息无法回显的问题

main
wxc 8 months ago
parent
commit
84bce4d1b4
  1. 35
      src/views/sensitivePerception/Model.vue

35
src/views/sensitivePerception/Model.vue

@ -149,7 +149,7 @@
v-model="show" v-model="show"
top="4vh" top="4vh"
> >
<el-form label-width="130" ref="formRef" :model="form"> <el-form label-width="130" ref="formRef" :model="form" v-loading="editLoading">
<el-form-item <el-form-item
label="模型名称" label="模型名称"
prop="modelName" prop="modelName"
@ -222,7 +222,7 @@
<el-select <el-select
v-model="form.clueTableName" v-model="form.clueTableName"
style="width: 340px" style="width: 340px"
@change="handleSelectClueTableName" clearable
> >
<el-option <el-option
v-for="item in clueMappingData" v-for="item in clueMappingData"
@ -1140,6 +1140,7 @@ import {
delModel, delModel,
listModel, listModel,
listClueMappingData, listClueMappingData,
getModel
} from "@/api/sensitivePerception/model"; } from "@/api/sensitivePerception/model";
import { listModelClue } from "@/api/sensitivePerception/modelClue"; import { listModelClue } from "@/api/sensitivePerception/modelClue";
import { listTopModelClueRecords } from "@/api/sensitivePerception/modelClue"; import { listTopModelClueRecords } from "@/api/sensitivePerception/modelClue";
@ -1245,15 +1246,22 @@ async function handleAdd() {
clueMappingData.value = await listClueMappingData(); clueMappingData.value = await listClueMappingData();
} }
function handleEdit() { const editLoading = ref(false)
async function handleEdit() {
show.value = true; show.value = true;
mode.value = "edit"; mode.value = "edit";
form.value = { ...activeModel.value }; editLoading.value = true
if (activeModel.value.involveProblem) { const data = await getModel(activeModel.value.id)
form.value.involveProblem = activeModel.value.involveProblem.split(","); clueMappingData.value = await listClueMappingData();
} else { if (data.modelingMethod === '2') {
form.value.involveProblem = []; form.value = { ...data };
modelClueTargetColumns.value[0].columnName = form.value.modelGeneration.involveDepartName
modelClueTargetColumns.value[1].columnName = form.value.modelGeneration.involveDepartId
modelClueTargetColumns.value[2].columnName = form.value.modelGeneration.involvePoliceName
modelClueTargetColumns.value[3].columnName = form.value.modelGeneration.involvePoliceEmpNo
modelClueTargetColumns.value[4].columnName = form.value.modelGeneration.happenTime
} }
editLoading.value = false
} }
function handleAddProblem() { function handleAddProblem() {
@ -1372,21 +1380,26 @@ const modelClueColumns = [
]; ];
function handleChangeColumn(val, row) { function handleChangeColumn(val, row) {
if (val) {
const item = fields.value.find((item) => item.columnName === val); const item = fields.value.find((item) => item.columnName === val);
row.dataType = item.dataType; row.dataType = item.dataType;
row.columnComment = item.columnComment; row.columnComment = item.columnComment;
} else {
row.dataType = null;
row.columnComment = null;
}
} }
const modelClueTargetColumns = ref([{}, {}, {}, {}, {}]); const modelClueTargetColumns = ref([{}, {}, {}, {}, {}]);
const fields = ref([]); const fields = ref([]);
function handleSelectClueTableName(val) { watch(() => form.value.clueTableName, (val) => {
if (val) { if (val) {
fields.value = clueMappingData.value.filter( fields.value = clueMappingData.value.filter(
(item) => item.tableName === val (item) => item.tableName === val
)[0].fields; )[0].fields;
} }
} })
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.menu { .menu {

Loading…
Cancel
Save