2025-07-08 20:10:24 +08:00
|
|
|
|
<template>
|
|
|
|
|
|
<div class="dialog" v-if="dialogForm">
|
|
|
|
|
|
<div class="head_box">
|
|
|
|
|
|
<span class="title">布控对象</span>
|
|
|
|
|
|
<div>
|
2026-04-22 21:06:37 +08:00
|
|
|
|
<el-button size="small" type="primary" v-if="!disabled" :loading="loading" @click="submit">保存</el-button>
|
2025-07-10 17:59:39 +08:00
|
|
|
|
<el-button size="small" @click="close">关闭</el-button>
|
2025-07-08 20:10:24 +08:00
|
|
|
|
</div>
|
|
|
|
|
|
</div>
|
2025-08-16 16:54:03 +08:00
|
|
|
|
<div class="flex">
|
2025-10-26 12:25:50 +08:00
|
|
|
|
<div :class="dataOrge.gzlid ? 'ww80' : 'ww100'">
|
2025-08-16 16:54:03 +08:00
|
|
|
|
<div class="form_cnt">
|
2026-04-22 21:06:37 +08:00
|
|
|
|
<el-form :model="listQuery" :rules="rules" :disabled="disabled" ref="elform" inline :label-width="100"
|
|
|
|
|
|
label-position="left">
|
2026-04-15 16:04:50 +08:00
|
|
|
|
<div class="flex align-center mb10">
|
2026-04-22 21:06:37 +08:00
|
|
|
|
<el-radio-group v-model="listQuery.bkDx" size="large" fill="#6cf" @change="shangeDx">
|
|
|
|
|
|
<el-radio-button :label="item.dm" v-for="(item, index) in props.dic.D_GS_BK_NEWDX" :key="index">{{
|
|
|
|
|
|
item.zdmc }}</el-radio-button>
|
2025-11-22 21:59:58 +08:00
|
|
|
|
</el-radio-group>
|
2026-04-22 21:06:37 +08:00
|
|
|
|
<el-button type="primary" @click="handleAddPeo" v-if="!disabled" class="ml10">
|
2026-04-15 16:04:50 +08:00
|
|
|
|
<el-icon class="vam">
|
2025-08-16 16:54:03 +08:00
|
|
|
|
<CirclePlus />
|
|
|
|
|
|
</el-icon>
|
2026-04-15 16:04:50 +08:00
|
|
|
|
<span class="vam">新增</span>
|
2025-08-16 16:54:03 +08:00
|
|
|
|
</el-button>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div class="relative ww100">
|
2026-04-22 21:06:37 +08:00
|
|
|
|
<MyTable :tableData="listQuery.bkdxList" :tableColumn="tableDate.tableColumn"
|
|
|
|
|
|
:tableHeight="tableDate.tableHeight" :key="tableDate.keyCount" :tableConfiger="tableDate.tableConfiger"
|
|
|
|
|
|
:controlsWidth="tableDate.controlsWidth">
|
2025-08-16 16:54:03 +08:00
|
|
|
|
<template #fjZp="{ row }">
|
2025-11-22 21:59:58 +08:00
|
|
|
|
<el-image :src="setAddress(row.fjZp)"></el-image>
|
2025-08-16 16:54:03 +08:00
|
|
|
|
</template>
|
|
|
|
|
|
<template #yjdj="{ row }">
|
2026-04-22 21:06:37 +08:00
|
|
|
|
<DictTag :tag="false" :value="row.yjdj" :options="props.dic.D_GS_ZDR_YJDJ" />
|
2025-08-16 16:54:03 +08:00
|
|
|
|
</template>
|
|
|
|
|
|
<template #yjbq="{ row }">
|
2026-04-22 21:06:37 +08:00
|
|
|
|
<DictTag :tag="false" :value="row.yjbq" :options="props.dic.BD_BK_CLYJBQ" />
|
2025-08-16 16:54:03 +08:00
|
|
|
|
</template>
|
|
|
|
|
|
<template #ryXb="{ row }">
|
2026-04-22 21:06:37 +08:00
|
|
|
|
<DictTag :tag="false" :value="row.ryXb" :options="props.dic.D_BZ_XB" />
|
2025-08-16 16:54:03 +08:00
|
|
|
|
</template>
|
|
|
|
|
|
<template #bqList="{ row }">
|
|
|
|
|
|
<span v-if="row.bqList">
|
2026-04-15 16:04:50 +08:00
|
|
|
|
<span v-for="(it, idx) in row.bqList" :key="idx">
|
2026-04-22 21:06:37 +08:00
|
|
|
|
{{ it.bqMc }}、</span>
|
2025-08-16 16:54:03 +08:00
|
|
|
|
</span>
|
|
|
|
|
|
</template>
|
|
|
|
|
|
<!-- 操作 -->
|
|
|
|
|
|
<template #controls="{ row }">
|
|
|
|
|
|
<el-link type="primary">查看档案</el-link>
|
|
|
|
|
|
<el-link type="danger" @click="deleteRow(row)">删除</el-link>
|
|
|
|
|
|
</template>
|
|
|
|
|
|
</MyTable>
|
|
|
|
|
|
</div>
|
2026-04-22 21:06:37 +08:00
|
|
|
|
<div class="ww100 mt25 mb10" style="display: flex;justify-content: space-between;">
|
2026-01-20 17:06:37 +08:00
|
|
|
|
<el-form-item prop="bkSjKs" label="布控开始时间">
|
2026-04-22 21:06:37 +08:00
|
|
|
|
<MOSTY.Date v-model="listQuery.bkSjKs" type="datetime" format="YYYY-MM-DD HH:mm:ss"
|
|
|
|
|
|
placeholder="请选择布控开始时间" clearable />
|
2025-08-16 16:54:03 +08:00
|
|
|
|
</el-form-item>
|
2026-01-20 17:06:37 +08:00
|
|
|
|
<el-form-item prop="bkSjJs" label="布控结束时间">
|
2026-04-22 21:06:37 +08:00
|
|
|
|
<MOSTY.Date v-model="listQuery.bkSjJs" type="datetime" format="YYYY-MM-DD HH:mm:ss"
|
|
|
|
|
|
placeholder="请选择布控结束时间" clearable />
|
2025-08-16 16:54:03 +08:00
|
|
|
|
</el-form-item>
|
2026-04-15 16:04:50 +08:00
|
|
|
|
<el-form-item prop="czcs" label="处置措施">
|
2026-04-22 21:06:37 +08:00
|
|
|
|
<MOSTY.Select v-model="listQuery.czcs" :dictEnum="props.dic.D_GS_BK_CZYQ" placeholder="请选择处置措施"
|
|
|
|
|
|
clearable />
|
2025-08-16 16:54:03 +08:00
|
|
|
|
</el-form-item>
|
2026-04-15 16:04:50 +08:00
|
|
|
|
</div>
|
2026-01-20 17:06:37 +08:00
|
|
|
|
|
2026-04-15 16:04:50 +08:00
|
|
|
|
<div class="ww100 mt10 mb10">
|
|
|
|
|
|
<el-form-item prop="czYq" label="处置要求" class="ww100">
|
2026-04-22 21:06:37 +08:00
|
|
|
|
<MOSTY.Other v-model="listQuery.czYq" placeholder="请输入处置要求" type="textarea" class="ww100"
|
|
|
|
|
|
style="width: 100%;" clearable />
|
2026-04-15 16:04:50 +08:00
|
|
|
|
</el-form-item>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div class="ww100 mt10 mb10">
|
|
|
|
|
|
<el-form-item prop="bkSy" label="布控原因" class="ww100">
|
2026-04-22 21:06:37 +08:00
|
|
|
|
<MOSTY.Other v-model="listQuery.bkSy" placeholder="请输入布控原因" type="textarea" style="width: 100%;"
|
|
|
|
|
|
clearable />
|
2026-04-15 16:04:50 +08:00
|
|
|
|
</el-form-item>
|
2026-01-20 17:06:37 +08:00
|
|
|
|
</div>
|
2026-04-15 16:04:50 +08:00
|
|
|
|
<div class="ww100 mt10 mb10">
|
2026-04-22 21:06:37 +08:00
|
|
|
|
<el-form-item prop="bkDj" label="布控等级" v-if="props.name == 'myControl'">
|
|
|
|
|
|
<MOSTY.Select v-model="listQuery.bkDj" :dictEnum="props.dic.D_GS_SSYJ" placeholder="请选择布控级别"
|
|
|
|
|
|
clearable />
|
2026-01-20 17:06:37 +08:00
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item prop="bkDj" label="布控等级" v-else>
|
2026-04-22 21:06:37 +08:00
|
|
|
|
<MOSTY.Select v-model="listQuery.bkDj" :dictEnum="props.dic.D_BZ_JQDJ" placeholder="请选择布控级别"
|
|
|
|
|
|
clearable />
|
2026-01-20 17:06:37 +08:00
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item prop="bklylx" label="布控来源">
|
2026-04-22 21:06:37 +08:00
|
|
|
|
<MOSTY.Select v-model="listQuery.bklylx" :dictEnum="props.dic.D_BZ_BKLYS" placeholder="请选择布控来源"
|
|
|
|
|
|
clearable />
|
2026-01-20 17:06:37 +08:00
|
|
|
|
</el-form-item>
|
|
|
|
|
|
</div>
|
2026-04-15 16:04:50 +08:00
|
|
|
|
<div class="ww100 mt10 mb10">
|
|
|
|
|
|
<el-form-item prop="zfyj" label="执法依据" class="ww100">
|
2026-04-22 21:06:37 +08:00
|
|
|
|
<MOSTY.Other v-model="listQuery.zfyj" placeholder="请输入执法依据" type="textarea" clearable
|
|
|
|
|
|
style="width: 100%;" />
|
2025-08-16 16:54:03 +08:00
|
|
|
|
</el-form-item>
|
|
|
|
|
|
</div>
|
2026-04-15 16:04:50 +08:00
|
|
|
|
|
|
|
|
|
|
<div class="ww100 mt10">
|
|
|
|
|
|
<el-form-item prop="bkfj" label="上传附件" class="ww100">
|
2025-08-16 16:54:03 +08:00
|
|
|
|
<div>
|
2026-04-22 21:06:37 +08:00
|
|
|
|
<MOSTY.Upload :showBtn="true" :limit="10" :isImg="false" :isAll="true" v-model="listQuery.bkfj" />
|
2025-08-16 16:54:03 +08:00
|
|
|
|
<div>支持png、jpg、pdf文件上传</div>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
</el-form-item>
|
2025-11-22 21:59:58 +08:00
|
|
|
|
</div>
|
2026-04-15 16:04:50 +08:00
|
|
|
|
<!-- <div class="smallTitle">布控范围</div>
|
|
|
|
|
|
<div class="mapSearch flex">
|
|
|
|
|
|
<el-select
|
|
|
|
|
|
v-model="hzfs"
|
|
|
|
|
|
placeholder="请选择布控范围"
|
|
|
|
|
|
clearable
|
|
|
|
|
|
@change="qhhzfs"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-option label="区域选择" value="1"></el-option> -->
|
|
|
|
|
|
<!-- <el-option label="自定义范围" value="2"></el-option> -->
|
|
|
|
|
|
<!-- </el-select> -->
|
|
|
|
|
|
<!-- <el-select
|
|
|
|
|
|
multiple
|
|
|
|
|
|
style="margin-left: 10px"
|
|
|
|
|
|
v-model="bkqyList"
|
|
|
|
|
|
placeholder="请选择布控范围"
|
|
|
|
|
|
clearable
|
|
|
|
|
|
@change="hzfsChage"
|
|
|
|
|
|
v-if="hzfs == '1'"
|
|
|
|
|
|
>
|
|
|
|
|
|
<el-option
|
|
|
|
|
|
:label="item.label"
|
|
|
|
|
|
:value="item.value"
|
|
|
|
|
|
v-for="(item, index) in bkqyArr"
|
|
|
|
|
|
:key="index"
|
|
|
|
|
|
>{{ item.label }}</el-option
|
|
|
|
|
|
>
|
|
|
|
|
|
</el-select> -->
|
|
|
|
|
|
|
|
|
|
|
|
<!-- <el-button type="primary" @click="drawQy" style="margin-left: 10px;" v-else>
|
2025-11-22 21:59:58 +08:00
|
|
|
|
<el-icon style="vertical-align: middle">
|
|
|
|
|
|
<CirclePlus />
|
|
|
|
|
|
</el-icon>
|
|
|
|
|
|
<span style="vertical-align: middle">自定义区域</span>
|
2026-01-20 17:06:37 +08:00
|
|
|
|
</el-button> -->
|
2026-04-15 16:04:50 +08:00
|
|
|
|
<!-- </div> -->
|
2026-01-20 17:06:37 +08:00
|
|
|
|
<!-- <div class="ww100 relative mb10"
|
2025-11-22 21:59:58 +08:00
|
|
|
|
style="height: 60vh;border: 1px solid #dcdfe6;border-radius: 4px;overflow: hidden;">
|
|
|
|
|
|
<GdMap></GdMap>
|
2026-01-20 17:06:37 +08:00
|
|
|
|
</div> -->
|
2025-08-16 16:54:03 +08:00
|
|
|
|
</el-form>
|
2025-08-06 14:25:36 +08:00
|
|
|
|
</div>
|
2025-08-16 16:54:03 +08:00
|
|
|
|
</div>
|
|
|
|
|
|
<div class="ww20" v-if="dataOrge.gzlid">
|
2025-10-26 12:25:50 +08:00
|
|
|
|
<ApprovalEcho ref="approvalEcho" />
|
2025-08-16 16:54:03 +08:00
|
|
|
|
</div>
|
2025-07-08 20:10:24 +08:00
|
|
|
|
</div>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<!-- 选择布控人员 -->
|
2026-04-22 21:06:37 +08:00
|
|
|
|
<BkryDialod :modelValue="chooseVisible_RY" @update:modelValue="chooseVisible_RY = $event" @choosed="choosed"
|
|
|
|
|
|
@choosedAdd="choosedAdd" :roleIds="roleIds" />
|
2025-08-06 14:25:36 +08:00
|
|
|
|
<!-- 选择车辆布控 -->
|
2026-04-22 21:06:37 +08:00
|
|
|
|
<BkclDialod :modelValue="chooseVisible_CL" @update:modelValue="chooseVisible_CL = $event" @choosed="choosed"
|
|
|
|
|
|
@choosedAdd="choosedAdd" :roleIds="roleIds" />
|
2025-07-10 17:59:39 +08:00
|
|
|
|
<!-- 选择布控群体 -->
|
2026-04-22 21:06:37 +08:00
|
|
|
|
<BkqtDialod :modelValue="chooseVisible_QT" @update:modelValue="chooseVisible_QT = $event" @choosed="choosed"
|
|
|
|
|
|
:roleIds="roleIds" />
|
|
|
|
|
|
<BksfzDialod :modelValue="chooseVisible_SFZ" @update:modelValue="chooseVisible_SFZ = $event" @choosed="choosed"
|
|
|
|
|
|
:roleIds="roleIds" :bkDx="listQuery.bkDx" @choosedAdd="choosedAdd" />
|
2025-07-08 20:10:24 +08:00
|
|
|
|
</template>
|
|
|
|
|
|
|
|
|
|
|
|
<script setup>
|
2025-07-10 17:59:39 +08:00
|
|
|
|
import { getItem } from "@/utils/storage";
|
2026-04-15 16:04:50 +08:00
|
|
|
|
import BkryDialod from "@/components/ChooseList/ChooseZdr/index.vue";
|
|
|
|
|
|
import BkqtDialod from "@/components/ChooseList/ChooseQt/index.vue";
|
|
|
|
|
|
import BkclDialod from "@/components/ChooseList/ChooseCl/index.vue";
|
|
|
|
|
|
import BksfzDialod from "./dolog/sfzLog.vue";
|
2025-07-08 20:10:24 +08:00
|
|
|
|
import GdMap from "@/components/GdMap/index.vue";
|
|
|
|
|
|
import * as MOSTY from "@/components/MyComponents/index";
|
|
|
|
|
|
import MyTable from "@/components/aboutTable/MyTable.vue";
|
2025-08-06 14:25:36 +08:00
|
|
|
|
import { qcckGet, qcckPost } from "@/api/qcckApi.js";
|
2026-04-15 16:04:50 +08:00
|
|
|
|
import {
|
|
|
|
|
|
tableColumnList,
|
|
|
|
|
|
Zd
|
|
|
|
|
|
} from "@/views/backOfficeSystem/ApprovalInformation/tableRow.js";
|
2025-10-26 12:25:50 +08:00
|
|
|
|
import emitter from "@/utils/eventBus.js";
|
2026-04-15 16:04:50 +08:00
|
|
|
|
import {
|
|
|
|
|
|
ref,
|
|
|
|
|
|
defineExpose,
|
|
|
|
|
|
reactive,
|
|
|
|
|
|
defineEmits,
|
|
|
|
|
|
getCurrentInstance,
|
|
|
|
|
|
nextTick,
|
|
|
|
|
|
watch,
|
|
|
|
|
|
onMounted
|
|
|
|
|
|
} from "vue";
|
2025-08-16 16:54:03 +08:00
|
|
|
|
import ApprovalEcho from "@/components/flowPath/ApprovalEcho.vue";
|
2026-04-15 16:04:50 +08:00
|
|
|
|
import { useRouter, useRoute } from "vue-router";
|
|
|
|
|
|
import { setAddress } from "@/utils/tools.js";
|
2025-10-26 12:25:50 +08:00
|
|
|
|
import { tbGsxtBkId } from "@/api/commit.js";
|
2025-07-08 20:10:24 +08:00
|
|
|
|
const emit = defineEmits(["change"]);
|
|
|
|
|
|
const props = defineProps({
|
2026-01-20 17:06:37 +08:00
|
|
|
|
dic: Object,
|
|
|
|
|
|
name: String
|
2025-07-08 20:10:24 +08:00
|
|
|
|
});
|
2026-04-15 16:04:50 +08:00
|
|
|
|
const route = useRoute();
|
|
|
|
|
|
const elform = ref();
|
2025-07-08 20:10:24 +08:00
|
|
|
|
const roleIds = ref([]); //角色ID
|
2025-07-10 17:59:39 +08:00
|
|
|
|
const chooseVisible_RY = ref(false); //选择布控人员弹窗
|
|
|
|
|
|
const chooseVisible_QT = ref(false); //选择布控群体弹窗
|
2026-04-15 16:04:50 +08:00
|
|
|
|
const chooseVisible_CL = ref(false);
|
2025-07-10 12:09:51 +08:00
|
|
|
|
const bkqyArr = ref([]); //布控区域
|
2025-07-08 20:10:24 +08:00
|
|
|
|
const { proxy } = getCurrentInstance();
|
|
|
|
|
|
const dialogForm = ref(false); //弹窗
|
2026-04-15 16:04:50 +08:00
|
|
|
|
const loading = ref(false);
|
|
|
|
|
|
const addPerson = ref([]); //单独新增的数据
|
2025-07-08 20:10:24 +08:00
|
|
|
|
const listQuery = ref({
|
2026-04-15 16:04:50 +08:00
|
|
|
|
bkYz: "01",
|
|
|
|
|
|
bkdxList: []
|
2025-07-08 20:10:24 +08:00
|
|
|
|
}); //表单数据
|
2025-07-10 17:59:39 +08:00
|
|
|
|
const rules = reactive({
|
2025-08-06 14:25:36 +08:00
|
|
|
|
bkBt: [{ required: true, message: "请输入布控标题", trigger: "blur" }],
|
|
|
|
|
|
bkDx: [{ required: true, message: "请选择布控对象", trigger: "change" }],
|
2026-04-15 16:04:50 +08:00
|
|
|
|
bkSjKs: [
|
|
|
|
|
|
{ required: true, message: "请选择布控开始时间", trigger: "change" }
|
|
|
|
|
|
],
|
|
|
|
|
|
bkSjJs: [
|
|
|
|
|
|
{ required: true, message: "请选择布控结束时间", trigger: "change" }
|
|
|
|
|
|
],
|
|
|
|
|
|
czJsdwdm: [
|
|
|
|
|
|
{ required: true, message: "请选择处置接收单位", trigger: "change" }
|
|
|
|
|
|
],
|
|
|
|
|
|
bkshrSsbmdm: [
|
|
|
|
|
|
{ required: true, message: "请选择审核部门", trigger: "change" }
|
|
|
|
|
|
],
|
|
|
|
|
|
bksprSsbmdm: [
|
|
|
|
|
|
{ required: true, message: "请选择审批部门", trigger: "change" }
|
|
|
|
|
|
],
|
|
|
|
|
|
czYq: [{ required: true, message: "请选择处置要求", trigger: "blur" }],
|
|
|
|
|
|
czcs: [{ required: true, message: "请选择处置措施", trigger: "change" }],
|
|
|
|
|
|
bkSy: [{ required: true, message: "请输入布控原因", trigger: "blur" }]
|
|
|
|
|
|
});
|
2025-08-06 14:25:36 +08:00
|
|
|
|
let tableDate = reactive({
|
2025-07-08 20:10:24 +08:00
|
|
|
|
keyCount: 0,
|
|
|
|
|
|
tableConfiger: {
|
|
|
|
|
|
rowHieght: 61,
|
|
|
|
|
|
showSelectType: "null",
|
|
|
|
|
|
loading: false
|
|
|
|
|
|
},
|
|
|
|
|
|
total: 0,
|
|
|
|
|
|
pageConfiger: {
|
|
|
|
|
|
pageSize: 20,
|
|
|
|
|
|
pageCurrent: 1
|
|
|
|
|
|
}, //分页
|
|
|
|
|
|
controlsWidth: 200, //操作栏宽度
|
|
|
|
|
|
tableColumn: [
|
2025-08-06 14:25:36 +08:00
|
|
|
|
{ label: "照片", prop: "fjZp", showSolt: true },
|
2025-07-10 10:53:48 +08:00
|
|
|
|
{ label: "姓名", prop: "ryXm" },
|
2025-08-06 14:25:36 +08:00
|
|
|
|
{ label: "性别", prop: "ryXb", showSolt: true },
|
2025-07-10 10:53:48 +08:00
|
|
|
|
{ label: "身份证号", prop: "rySfzh" },
|
|
|
|
|
|
{ label: "户籍地", prop: "ryHjd" },
|
|
|
|
|
|
{ label: "现居住地址", prop: "ryXjd" },
|
|
|
|
|
|
{ label: "手机号", prop: "rySjhm" },
|
|
|
|
|
|
{ label: "虚拟身份", prop: "qtXnsf" },
|
|
|
|
|
|
{ label: "车牌号", prop: "clCph" },
|
2025-08-16 16:54:03 +08:00
|
|
|
|
{ label: "车辆识别代码", prop: "clCjh" },
|
2025-07-10 10:53:48 +08:00
|
|
|
|
{ label: "特征描述", prop: "qtTzms" },
|
2025-08-16 16:54:03 +08:00
|
|
|
|
{ label: "标签", prop: "bqList", showSolt: true, showOverflowTooltip: true }
|
2025-07-08 20:10:24 +08:00
|
|
|
|
]
|
|
|
|
|
|
});
|
2025-10-26 12:25:50 +08:00
|
|
|
|
|
2026-04-15 16:04:50 +08:00
|
|
|
|
const title = ref("");
|
|
|
|
|
|
const disabled = ref(false);
|
2025-07-08 20:10:24 +08:00
|
|
|
|
// 初始化数据
|
2025-08-06 14:25:36 +08:00
|
|
|
|
const init = (type, row) => {
|
|
|
|
|
|
listQuery.value.bkfj = [];
|
2026-04-15 16:04:50 +08:00
|
|
|
|
if (type == "add") {
|
2025-08-06 14:25:36 +08:00
|
|
|
|
tableDate.tableConfiger.haveControls = true;
|
|
|
|
|
|
disabled.value = false;
|
|
|
|
|
|
listQuery.value.bkfqrXm = getItem("USERNAME");
|
|
|
|
|
|
listQuery.value.bkfqrSfzh = getItem("idEntityCard");
|
2026-04-15 16:04:50 +08:00
|
|
|
|
listQuery.value.bkfqrSsbmmc = getItem("deptId")[0].deptName;
|
|
|
|
|
|
listQuery.value.bkfqrSsbmdm = getItem("deptId")[0].deptCode;
|
2025-08-06 14:25:36 +08:00
|
|
|
|
}
|
2026-04-15 16:04:50 +08:00
|
|
|
|
title.value = type == "add" ? "新增" : type == "detail" ? "详情" : "编辑";
|
|
|
|
|
|
disabled.value = type == "detail" ? true : false;
|
2025-08-06 14:25:36 +08:00
|
|
|
|
dialogForm.value = true;
|
|
|
|
|
|
if (row) tableDate.tableConfiger.haveControls = false;
|
2026-04-15 16:04:50 +08:00
|
|
|
|
Zd({ D_GS_SSYJ: props.dic.D_GS_SSYJ, BD_BK_CLYJBQ: props.dic.BD_BK_CLYJBQ });
|
2025-08-16 16:54:03 +08:00
|
|
|
|
|
2026-04-15 16:04:50 +08:00
|
|
|
|
get_bkqy_list(row);
|
2025-07-08 20:10:24 +08:00
|
|
|
|
};
|
2025-07-10 17:59:39 +08:00
|
|
|
|
|
2025-07-10 12:09:51 +08:00
|
|
|
|
// 获取布控区域
|
2025-08-06 14:25:36 +08:00
|
|
|
|
const get_bkqy_list = (row) => {
|
2026-04-15 16:04:50 +08:00
|
|
|
|
qcckGet({}, "/mosty-gsxt/tbGsxtBkQy/selectList").then((res) => {
|
2025-08-06 14:25:36 +08:00
|
|
|
|
let arr = res || [];
|
2026-04-15 16:04:50 +08:00
|
|
|
|
bkqyArr.value = arr.map((item) => {
|
|
|
|
|
|
return { ...item, label: item.qymc, value: item.id };
|
|
|
|
|
|
});
|
2025-08-06 14:25:36 +08:00
|
|
|
|
if (row) getDataById(row.id);
|
2026-04-15 16:04:50 +08:00
|
|
|
|
});
|
|
|
|
|
|
};
|
|
|
|
|
|
const dataOrge = ref({});
|
|
|
|
|
|
const approvalEcho = ref();
|
|
|
|
|
|
watch(
|
|
|
|
|
|
() => approvalEcho.value,
|
|
|
|
|
|
(val) => {
|
|
|
|
|
|
if (val) {
|
|
|
|
|
|
approvalEcho.value.getWorkflow(dataOrge.value.gzlid);
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
{ deep: true }
|
|
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
|
|
watch(
|
|
|
|
|
|
() => approvalEcho.value,
|
|
|
|
|
|
(val) => {
|
|
|
|
|
|
if (val) {
|
|
|
|
|
|
console.log(approvalEcho.value);
|
|
|
|
|
|
approvalEcho.value.getWorkflow(dataOrge.value.gzlid);
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
{ deep: true }
|
|
|
|
|
|
);
|
2025-07-10 17:59:39 +08:00
|
|
|
|
|
2025-08-06 14:25:36 +08:00
|
|
|
|
const shangeDx = () => {
|
2026-04-15 16:04:50 +08:00
|
|
|
|
tableDate.tableColumn = tableColumnList[listQuery.value.bkDx];
|
|
|
|
|
|
listQuery.value.bkDxxx = "";
|
2025-08-06 14:25:36 +08:00
|
|
|
|
listQuery.value.bkdxList = [];
|
|
|
|
|
|
roleIds.value = [];
|
2026-04-15 16:04:50 +08:00
|
|
|
|
addPerson.value = [];
|
|
|
|
|
|
};
|
2025-07-10 18:27:50 +08:00
|
|
|
|
// 删除数据
|
|
|
|
|
|
const deleteRow = (row) => {
|
2026-04-15 16:04:50 +08:00
|
|
|
|
roleIds.value = roleIds.value.filter((id) => id != row.id);
|
|
|
|
|
|
addPerson.value = addPerson.value.filter((it) => it.id != row.id);
|
|
|
|
|
|
listQuery.value.bkdxList = listQuery.value.bkdxList.filter(
|
|
|
|
|
|
(it) => it.id != row.id
|
|
|
|
|
|
);
|
|
|
|
|
|
};
|
2025-07-10 18:27:50 +08:00
|
|
|
|
// 单独新增的数据
|
2025-08-06 14:25:36 +08:00
|
|
|
|
const choosedAdd = (item) => {
|
2026-04-15 16:04:50 +08:00
|
|
|
|
let obj = {};
|
|
|
|
|
|
if (listQuery.value.bkDx !== "02") {
|
|
|
|
|
|
obj = {
|
|
|
|
|
|
id: item.id,
|
|
|
|
|
|
fjZp: item.fjZp,
|
|
|
|
|
|
ryXm: item.ryXm,
|
|
|
|
|
|
ryXb: item.ryXb,
|
|
|
|
|
|
rySfzh: item.rySfzh,
|
|
|
|
|
|
ryHjd: item.hjdXz,
|
|
|
|
|
|
ryXjd: item.xzdXz,
|
|
|
|
|
|
rySjhm: item.ryLxdh,
|
|
|
|
|
|
qtXnsf: item.qtXnsf,
|
|
|
|
|
|
clCjh: item.clCjh,
|
|
|
|
|
|
clCph: item.clCph,
|
|
|
|
|
|
qtTzms: item.qtTzms,
|
|
|
|
|
|
bqList: item.bqList
|
|
|
|
|
|
};
|
2025-08-06 14:25:36 +08:00
|
|
|
|
} else {
|
2025-08-16 16:54:03 +08:00
|
|
|
|
obj = {
|
2026-04-15 16:04:50 +08:00
|
|
|
|
clCph: item.hphm,
|
|
|
|
|
|
clCjh: item.clCjh,
|
|
|
|
|
|
clSyr: item.clSyr,
|
|
|
|
|
|
clSyrsfzh: item.clSyrsfzh,
|
|
|
|
|
|
clYs: item.clYs,
|
|
|
|
|
|
gxSsbmmc: item.gxSsbmmc,
|
|
|
|
|
|
bqList: item.bqList
|
|
|
|
|
|
};
|
2025-08-16 16:54:03 +08:00
|
|
|
|
}
|
|
|
|
|
|
switch (listQuery.value.bkDx) {
|
|
|
|
|
|
default:
|
2026-04-15 16:04:50 +08:00
|
|
|
|
obj = { ...item };
|
2025-08-16 16:54:03 +08:00
|
|
|
|
break;
|
2025-08-06 14:25:36 +08:00
|
|
|
|
}
|
2026-04-15 16:04:50 +08:00
|
|
|
|
addPerson.value.push(obj); //缓存的数据
|
2025-08-06 14:25:36 +08:00
|
|
|
|
if (!listQuery.value.bkdxList) listQuery.value.bkdxList = [];
|
|
|
|
|
|
listQuery.value.bkdxList.unshift(obj);
|
2025-08-16 16:54:03 +08:00
|
|
|
|
console.log(listQuery.value.bkdxList);
|
2026-04-15 16:04:50 +08:00
|
|
|
|
};
|
2025-07-10 18:27:50 +08:00
|
|
|
|
|
2025-07-08 20:10:24 +08:00
|
|
|
|
// 选择重点人
|
|
|
|
|
|
const choosed = (val) => {
|
2026-04-15 16:04:50 +08:00
|
|
|
|
tableDate.tableColumn = tableColumnList[listQuery.value.bkDx];
|
|
|
|
|
|
if (listQuery.value.bkDx == "01") {
|
|
|
|
|
|
// 人员
|
|
|
|
|
|
roleIds.value = val.map((it) => it.id);
|
|
|
|
|
|
let arr = val.map((item) => {
|
2025-08-06 14:25:36 +08:00
|
|
|
|
let bqArr = item.bqList || [];
|
2026-04-15 16:04:50 +08:00
|
|
|
|
let bqs = bqArr.map((v) => {
|
|
|
|
|
|
return {
|
|
|
|
|
|
bqZl: v.bqZl,
|
|
|
|
|
|
bqId: v.bqId,
|
|
|
|
|
|
bqLx: v.bqLx,
|
|
|
|
|
|
bqLb: v.bqLb,
|
|
|
|
|
|
bqMc: v.bqMc,
|
|
|
|
|
|
bqDm: v.bqDm
|
|
|
|
|
|
};
|
|
|
|
|
|
});
|
2025-08-16 16:54:03 +08:00
|
|
|
|
return {
|
2026-04-15 16:04:50 +08:00
|
|
|
|
id: item.id,
|
|
|
|
|
|
fjZp: item.fjZp,
|
|
|
|
|
|
ryXm: item.ryXm,
|
|
|
|
|
|
ryXb: item.ryXb,
|
|
|
|
|
|
rySfzh: item.rySfzh,
|
|
|
|
|
|
ryHjd: item.hjdXz,
|
|
|
|
|
|
ryXjd: item.xzdXz,
|
|
|
|
|
|
rySjhm: item.ryLxdh,
|
|
|
|
|
|
qtXnsf: item.qtXnsf,
|
|
|
|
|
|
clCjh: item.clCjh,
|
|
|
|
|
|
clCph: item.clCph,
|
|
|
|
|
|
qtTzms: item.qtTzms,
|
|
|
|
|
|
bqList: bqs,
|
|
|
|
|
|
yjdj: item.zdrYjdj,
|
|
|
|
|
|
ssbmdm: item.zrSsbmdm
|
|
|
|
|
|
};
|
|
|
|
|
|
});
|
2025-08-06 14:25:36 +08:00
|
|
|
|
listQuery.value.bkdxList = [...addPerson.value, ...arr];
|
2026-04-15 16:04:50 +08:00
|
|
|
|
} else if (listQuery.value.bkDx == "03") {
|
|
|
|
|
|
roleIds.value = val.map((it) => it.id);
|
|
|
|
|
|
let arr = val.map((item) => {
|
2025-08-06 14:25:36 +08:00
|
|
|
|
return {
|
2026-04-15 16:04:50 +08:00
|
|
|
|
clCph: item.hphm,
|
|
|
|
|
|
clCjh: item.clCjh,
|
|
|
|
|
|
clSyr: item.clSyr,
|
|
|
|
|
|
clSyrsfzh: item.clSyrsfzh,
|
|
|
|
|
|
clYs: item.clYs,
|
|
|
|
|
|
gxSsbmmc: item.gxSsbmmc,
|
|
|
|
|
|
yjbq: item.yjbq,
|
|
|
|
|
|
yjdj: item.yjdj,
|
|
|
|
|
|
ssbmdm: item.zrSsbmdm
|
|
|
|
|
|
};
|
|
|
|
|
|
});
|
2025-08-06 14:25:36 +08:00
|
|
|
|
listQuery.value.bkdxList = [...addPerson.value, ...arr];
|
2026-04-15 16:04:50 +08:00
|
|
|
|
} else {
|
|
|
|
|
|
// 群体
|
|
|
|
|
|
listQuery.value.bkDxxx = val.map((it) => it.id).join(",");
|
|
|
|
|
|
let peolist = [];
|
|
|
|
|
|
val.forEach((item) => {
|
|
|
|
|
|
if (item.zdryList) peolist = peolist.concat(item.zdryList);
|
|
|
|
|
|
});
|
|
|
|
|
|
let brrPeo = peolist.map((item) => {
|
2025-08-06 14:25:36 +08:00
|
|
|
|
let bqArr = item.bqList || [];
|
2026-04-15 16:04:50 +08:00
|
|
|
|
let bqs = bqArr.map((v) => {
|
|
|
|
|
|
return {
|
|
|
|
|
|
bqZl: v.bqZl,
|
|
|
|
|
|
bqId: v.bqId,
|
|
|
|
|
|
bqLx: v.bqLx,
|
|
|
|
|
|
bqLb: v.bqLb,
|
|
|
|
|
|
bqMc: v.bqMc,
|
|
|
|
|
|
bqDm: v.bqDm
|
|
|
|
|
|
};
|
|
|
|
|
|
});
|
2025-08-06 14:25:36 +08:00
|
|
|
|
return {
|
2026-04-15 16:04:50 +08:00
|
|
|
|
id: item.id,
|
|
|
|
|
|
fjZp: item.fjZp,
|
|
|
|
|
|
ryXm: item.ryXm,
|
|
|
|
|
|
ryXb: item.ryXb,
|
|
|
|
|
|
rySfzh: item.rySfzh,
|
|
|
|
|
|
ryHjd: item.hjdXz,
|
|
|
|
|
|
ryXjd: item.xzdXz,
|
|
|
|
|
|
rySjhm: item.ryLxdh,
|
|
|
|
|
|
qtXnsf: item.qtXnsf,
|
|
|
|
|
|
clCjh: item.clCjh,
|
|
|
|
|
|
clCph: item.clCph,
|
|
|
|
|
|
qtTzms: item.qtTzms,
|
|
|
|
|
|
bqList: bqs,
|
|
|
|
|
|
yjdj: item.zdrYjdj,
|
|
|
|
|
|
ssbmdm: item.zrSsbmdm
|
|
|
|
|
|
};
|
|
|
|
|
|
});
|
2025-08-06 14:25:36 +08:00
|
|
|
|
listQuery.value.bkdxList = brrPeo;
|
|
|
|
|
|
}
|
2025-07-10 17:59:39 +08:00
|
|
|
|
};
|
2025-07-10 19:07:56 +08:00
|
|
|
|
|
2025-07-10 17:59:39 +08:00
|
|
|
|
// 选择人员
|
2025-08-06 14:25:36 +08:00
|
|
|
|
const handleAddPeo = () => {
|
2026-04-15 16:04:50 +08:00
|
|
|
|
if (!listQuery.value.bkDx)
|
|
|
|
|
|
return proxy.$message({ type: "warning", message: "请选择布控对象" });
|
2025-08-06 14:25:36 +08:00
|
|
|
|
switch (listQuery.value.bkDx) {
|
2026-04-15 16:04:50 +08:00
|
|
|
|
case "01":
|
|
|
|
|
|
chooseVisible_RY.value = true;
|
2025-08-06 14:25:36 +08:00
|
|
|
|
break;
|
2026-04-15 16:04:50 +08:00
|
|
|
|
case "04":
|
|
|
|
|
|
case "05":
|
|
|
|
|
|
case "06":
|
|
|
|
|
|
case "07":
|
|
|
|
|
|
case "08":
|
|
|
|
|
|
case "09":
|
|
|
|
|
|
case "10":
|
|
|
|
|
|
chooseVisible_SFZ.value = true;
|
2025-08-06 14:25:36 +08:00
|
|
|
|
break;
|
2026-04-15 16:04:50 +08:00
|
|
|
|
case "03":
|
|
|
|
|
|
chooseVisible_CL.value = true;
|
2025-08-06 14:25:36 +08:00
|
|
|
|
break;
|
2026-04-15 16:04:50 +08:00
|
|
|
|
case "02":
|
|
|
|
|
|
chooseVisible_QT.value = true;
|
2025-08-16 16:54:03 +08:00
|
|
|
|
break;
|
2025-08-06 14:25:36 +08:00
|
|
|
|
}
|
2026-04-15 16:04:50 +08:00
|
|
|
|
};
|
2025-07-15 20:46:37 +08:00
|
|
|
|
|
2025-07-10 17:59:39 +08:00
|
|
|
|
// 提交
|
|
|
|
|
|
const submit = () => {
|
2025-07-15 20:19:13 +08:00
|
|
|
|
elform.value.validate((validate) => {
|
2025-08-06 14:25:36 +08:00
|
|
|
|
if (!validate) return;
|
2026-04-15 16:04:50 +08:00
|
|
|
|
let bklx = "";
|
|
|
|
|
|
if (route.name == "myControl") {
|
|
|
|
|
|
bklx = "01";
|
2025-11-22 21:59:58 +08:00
|
|
|
|
} else {
|
2026-04-15 16:04:50 +08:00
|
|
|
|
bklx = "02";
|
2025-11-22 21:59:58 +08:00
|
|
|
|
}
|
|
|
|
|
|
let params = { ...listQuery.value, bklx: bklx };
|
2026-04-21 17:00:48 +08:00
|
|
|
|
params.bkfj = params.bkfj ? JSON.stringify(params.bkfj) : "";
|
2025-07-10 17:59:39 +08:00
|
|
|
|
params.bkdxList = params.bkdxList ? params.bkdxList : [];
|
2026-04-15 16:04:50 +08:00
|
|
|
|
params.bkdxList.forEach((item) => {
|
2025-12-05 21:36:34 +08:00
|
|
|
|
if (Array.isArray(item.fjZp)) {
|
2026-04-15 16:04:50 +08:00
|
|
|
|
item.fjZp = item.fjZp ? item.fjZp.join(",") : "";
|
2025-12-05 21:36:34 +08:00
|
|
|
|
} else {
|
2026-04-15 16:04:50 +08:00
|
|
|
|
item.fjZp = item.fjZp;
|
2025-12-05 21:36:34 +08:00
|
|
|
|
}
|
2026-04-15 16:04:50 +08:00
|
|
|
|
});
|
2025-12-05 21:36:34 +08:00
|
|
|
|
|
2025-07-10 17:59:39 +08:00
|
|
|
|
loading.value = true;
|
2026-04-20 20:36:59 +08:00
|
|
|
|
let url = title.value == "新增" ? "/mosty-gsxt/tbGsxtBk/save" : "/mosty-gsxt/tbGsxtBk/update";
|
2026-04-15 16:04:50 +08:00
|
|
|
|
qcckPost(params, url)
|
|
|
|
|
|
.then((res) => {
|
|
|
|
|
|
proxy.$message({ type: "success", message: "布控成功" });
|
|
|
|
|
|
emit("change");
|
|
|
|
|
|
loading.value = false;
|
|
|
|
|
|
close();
|
|
|
|
|
|
})
|
|
|
|
|
|
.catch(() => {
|
|
|
|
|
|
loading.value = false;
|
|
|
|
|
|
});
|
2025-07-10 17:59:39 +08:00
|
|
|
|
});
|
|
|
|
|
|
};
|
2025-10-26 12:25:50 +08:00
|
|
|
|
onMounted(() => {
|
|
|
|
|
|
emitter.on("coordString", (res) => {
|
2026-04-15 16:04:50 +08:00
|
|
|
|
listQuery.value.bkqyList = [
|
|
|
|
|
|
{
|
|
|
|
|
|
pgis: res.coord[0]
|
|
|
|
|
|
}
|
|
|
|
|
|
];
|
2025-10-26 12:25:50 +08:00
|
|
|
|
});
|
|
|
|
|
|
});
|
2025-07-08 20:10:24 +08:00
|
|
|
|
// 关闭
|
|
|
|
|
|
const close = () => {
|
|
|
|
|
|
listQuery.value = {};
|
|
|
|
|
|
dialogForm.value = false;
|
|
|
|
|
|
loading.value = false;
|
2025-07-10 19:07:56 +08:00
|
|
|
|
addPerson.value = [];
|
2026-04-15 16:04:50 +08:00
|
|
|
|
roleIds.value = [];
|
|
|
|
|
|
dataOrge.value = {};
|
2025-08-16 16:54:03 +08:00
|
|
|
|
};
|
|
|
|
|
|
// 选择身份证
|
2026-04-15 16:04:50 +08:00
|
|
|
|
const chooseVisible_SFZ = ref(false);
|
2025-08-16 16:54:03 +08:00
|
|
|
|
// 获取布控信息的工作流
|
2026-01-20 17:06:37 +08:00
|
|
|
|
// const workflow = ref()
|
|
|
|
|
|
// const getWorkflow = async (id) => {
|
|
|
|
|
|
// const promes = {
|
|
|
|
|
|
// processId: id
|
|
|
|
|
|
// }
|
|
|
|
|
|
// const proNode = await queryProcessNode(promes)
|
|
|
|
|
|
// const proNodeLog = await queryProcessNodeLog(promes)
|
|
|
|
|
|
// const process = await queryProcess(promes)
|
|
|
|
|
|
// workflow.value = proNode.rows.map(item => {
|
|
|
|
|
|
// const log = proNodeLog.rows.filter(items => item.nodeId == items.nodeId)
|
2025-08-16 16:54:03 +08:00
|
|
|
|
|
2026-01-20 17:06:37 +08:00
|
|
|
|
// if (item.eventType == '0') {
|
|
|
|
|
|
// return {
|
|
|
|
|
|
// ...item,
|
|
|
|
|
|
// log: {
|
|
|
|
|
|
// userData: item.userData ? JSON.parse(item.userData) : JSON.parse(process.rows[0].processData).orgNameData,
|
|
|
|
|
|
// userName: process.rows[0].userName,
|
|
|
|
|
|
// xtLrsj: process.rows[0].xtLrsj,
|
|
|
|
|
|
// processStatus: process.rows[0].processStatus,
|
|
|
|
|
|
// }
|
|
|
|
|
|
// }
|
|
|
|
|
|
// } else {
|
|
|
|
|
|
// return {
|
|
|
|
|
|
// ...item,
|
|
|
|
|
|
// orgNameData: JSON.parse(log[0].userData),
|
|
|
|
|
|
// log: log
|
|
|
|
|
|
// }
|
|
|
|
|
|
// }
|
|
|
|
|
|
// })
|
2025-08-16 16:54:03 +08:00
|
|
|
|
|
2026-01-20 17:06:37 +08:00
|
|
|
|
// };
|
|
|
|
|
|
// const drawQy = () => {
|
|
|
|
|
|
// emitter.emit("drawShape", {
|
|
|
|
|
|
// flag: "select_point",
|
|
|
|
|
|
// type: "polygon",
|
|
|
|
|
|
// isclear: true
|
|
|
|
|
|
// });
|
|
|
|
|
|
// }
|
2026-04-15 16:04:50 +08:00
|
|
|
|
const hzfs = ref("1");
|
|
|
|
|
|
const bkqyList = ref();
|
2025-10-26 12:25:50 +08:00
|
|
|
|
const qhhzfs = () => {
|
2026-04-15 16:04:50 +08:00
|
|
|
|
listQuery.value.bkqyList = [];
|
|
|
|
|
|
bkqyList.value = [];
|
|
|
|
|
|
emitter.emit("removeBj");
|
|
|
|
|
|
emitter.emit("removeEara", "select_point");
|
|
|
|
|
|
};
|
2025-07-08 20:10:24 +08:00
|
|
|
|
|
2025-10-26 12:25:50 +08:00
|
|
|
|
const hzfsChage = (val) => {
|
2026-04-15 16:04:50 +08:00
|
|
|
|
const qyList = [];
|
2025-10-26 12:25:50 +08:00
|
|
|
|
console.log(val);
|
|
|
|
|
|
|
|
|
|
|
|
listQuery.value.bkqyList = val.map((item, index) => {
|
2026-04-15 16:04:50 +08:00
|
|
|
|
const data = bkqyArr.value.filter((items) => items.id == item)[0];
|
2025-10-26 12:25:50 +08:00
|
|
|
|
console.log(data);
|
|
|
|
|
|
|
|
|
|
|
|
if (data) {
|
2026-04-15 16:04:50 +08:00
|
|
|
|
qyList.push(data.pgis);
|
2025-10-26 12:25:50 +08:00
|
|
|
|
}
|
|
|
|
|
|
console.log(item);
|
|
|
|
|
|
return {
|
|
|
|
|
|
bkQyid: data.id,
|
|
|
|
|
|
pgis: data.pgis
|
2026-04-15 16:04:50 +08:00
|
|
|
|
};
|
|
|
|
|
|
});
|
2025-10-26 12:25:50 +08:00
|
|
|
|
setTimeout(() => {
|
2026-04-15 16:04:50 +08:00
|
|
|
|
changeXzqh(qyList);
|
|
|
|
|
|
}, 2000);
|
|
|
|
|
|
};
|
2025-10-26 12:25:50 +08:00
|
|
|
|
const changeXzqh = (val) => {
|
|
|
|
|
|
// 先移除已有的边界
|
2026-04-15 16:04:50 +08:00
|
|
|
|
emitter.emit("removeBj");
|
2025-10-26 12:25:50 +08:00
|
|
|
|
// 如果传入的是多个区域数据(二维数组)
|
|
|
|
|
|
const features = val.map((area, index) => ({
|
|
|
|
|
|
geometry: {
|
|
|
|
|
|
type: "Polygon",
|
|
|
|
|
|
coordinates: [area] // 确保格式正确
|
|
|
|
|
|
},
|
2026-04-15 16:04:50 +08:00
|
|
|
|
properties: {},
|
2025-10-26 12:25:50 +08:00
|
|
|
|
type: "Feature"
|
2026-04-15 16:04:50 +08:00
|
|
|
|
}));
|
2025-10-26 12:25:50 +08:00
|
|
|
|
// 循环为每个区域创建单独的多边形,这样可以设置不同的样式
|
|
|
|
|
|
features.forEach((feature, index) => {
|
2026-04-15 16:04:50 +08:00
|
|
|
|
emitter.emit("setBoundarys", {
|
2025-10-26 12:25:50 +08:00
|
|
|
|
data: {
|
|
|
|
|
|
type: "FeatureCollection",
|
|
|
|
|
|
features: [feature]
|
|
|
|
|
|
},
|
2026-04-15 16:04:50 +08:00
|
|
|
|
color: "#cf1010",
|
|
|
|
|
|
fillColor: "rgba(255, 255, 255,0)"
|
|
|
|
|
|
});
|
|
|
|
|
|
});
|
|
|
|
|
|
};
|
2025-10-26 12:25:50 +08:00
|
|
|
|
// 根据id获取详情
|
|
|
|
|
|
const getDataById = (id) => {
|
2026-04-15 16:04:50 +08:00
|
|
|
|
qcckGet({}, "/mosty-gsxt/tbGsxtBk/selectVoById/" + id).then((res) => {
|
2026-04-21 17:00:48 +08:00
|
|
|
|
// 兼容处理:优先使用 ossList,为空则解析 bkfj JSON 字符串
|
|
|
|
|
|
if (res.ossList && res.ossList.length > 0) {
|
|
|
|
|
|
res.bkfj = res.ossList;
|
|
|
|
|
|
} else if (res.bkfj) {
|
|
|
|
|
|
try {
|
|
|
|
|
|
res.bkfj = JSON.parse(res.bkfj);
|
|
|
|
|
|
} catch (e) {
|
|
|
|
|
|
res.bkfj = [];
|
|
|
|
|
|
}
|
|
|
|
|
|
} else {
|
|
|
|
|
|
res.bkfj = [];
|
|
|
|
|
|
}
|
2026-04-15 16:04:50 +08:00
|
|
|
|
listQuery.value = res || {};
|
|
|
|
|
|
dataOrge.value = res;
|
2025-10-26 12:25:50 +08:00
|
|
|
|
if (res.bkqyList) {
|
2026-04-15 16:04:50 +08:00
|
|
|
|
bkqyList.value = res.bkqyList
|
|
|
|
|
|
? res.bkqyList.map((v) => {
|
2026-04-22 21:06:37 +08:00
|
|
|
|
{
|
|
|
|
|
|
if (v.bkQyid) {
|
|
|
|
|
|
hzfs.value = "1";
|
|
|
|
|
|
} else {
|
|
|
|
|
|
hzfs.value = "2";
|
2026-04-15 16:04:50 +08:00
|
|
|
|
}
|
2026-04-22 21:06:37 +08:00
|
|
|
|
return v.bkQyid;
|
|
|
|
|
|
}
|
|
|
|
|
|
})
|
2026-04-15 16:04:50 +08:00
|
|
|
|
: [];
|
|
|
|
|
|
const data = res.bkqyList.map((item) => {
|
|
|
|
|
|
return item.pgis;
|
|
|
|
|
|
});
|
2025-10-26 12:25:50 +08:00
|
|
|
|
setTimeout(() => {
|
|
|
|
|
|
console.log(data);
|
2026-04-15 16:04:50 +08:00
|
|
|
|
changeXzqh(data);
|
2025-10-26 12:25:50 +08:00
|
|
|
|
// listQuery.value.bkDxxx = data.join(',')
|
|
|
|
|
|
}, 2000);
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2026-04-15 16:04:50 +08:00
|
|
|
|
tableDate.tableColumn = tableColumnList[res.bkDx ? res.bkDx : "01"];
|
|
|
|
|
|
});
|
|
|
|
|
|
};
|
2025-07-08 20:10:24 +08:00
|
|
|
|
defineExpose({ init });
|
|
|
|
|
|
</script>
|
|
|
|
|
|
|
|
|
|
|
|
<style lang="scss" scoped>
|
|
|
|
|
|
@import "~@/assets/css/layout.scss";
|
|
|
|
|
|
@import "~@/assets/css/element-plus.scss";
|
2025-08-06 14:25:36 +08:00
|
|
|
|
|
|
|
|
|
|
.smallTitle {
|
|
|
|
|
|
width: 100%;
|
|
|
|
|
|
font-size: 15px;
|
|
|
|
|
|
line-height: 50px;
|
|
|
|
|
|
font-weight: 550;
|
|
|
|
|
|
color: #606266;
|
2025-07-08 20:10:24 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
2025-08-06 14:25:36 +08:00
|
|
|
|
.mapSearch {
|
2025-10-26 12:25:50 +08:00
|
|
|
|
margin-bottom: 10px;
|
2025-07-08 20:10:24 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
2025-08-06 14:25:36 +08:00
|
|
|
|
.dialog {
|
|
|
|
|
|
::v-deep .el-form-item--default {
|
|
|
|
|
|
margin: 0 1% 0 0 !important;
|
|
|
|
|
|
padding-bottom: 0 !important;
|
|
|
|
|
|
}
|
2025-07-08 20:10:24 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
2025-08-06 14:25:36 +08:00
|
|
|
|
::v-deep .avatar-uploader {
|
|
|
|
|
|
display: flex;
|
2025-07-08 20:10:24 +08:00
|
|
|
|
}
|
2025-08-06 14:25:36 +08:00
|
|
|
|
|
|
|
|
|
|
::v-deep .el-upload--picture-card i {
|
|
|
|
|
|
width: 156px;
|
2025-07-08 20:10:24 +08:00
|
|
|
|
}
|
2025-08-06 14:25:36 +08:00
|
|
|
|
|
|
|
|
|
|
.depBox {
|
|
|
|
|
|
border: 1px solid #e9e9e9;
|
|
|
|
|
|
width: 305px;
|
|
|
|
|
|
padding: 0 0 0 4px;
|
|
|
|
|
|
border-radius: 4px;
|
|
|
|
|
|
|
|
|
|
|
|
::v-deep .el-input__inner {
|
|
|
|
|
|
border: none;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
::v-deep .el-cascader .el-input.is-focus .el-input__inner {
|
|
|
|
|
|
border-color: transparent !important;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
::v-deep .el-input__inner:focus {
|
|
|
|
|
|
box-shadow: none;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
::v-deep .el-input.is-disabled .el-input__inner {
|
|
|
|
|
|
border-color: transparent !important;
|
|
|
|
|
|
}
|
2025-07-10 12:09:51 +08:00
|
|
|
|
}
|
2025-08-16 16:54:03 +08:00
|
|
|
|
|
|
|
|
|
|
/* 使用深度选择器覆盖子组件样式 */
|
|
|
|
|
|
::v-deep .el-step.is-vertical .el-step__title {
|
|
|
|
|
|
color: #000000 !important;
|
|
|
|
|
|
border-color: #000000 !important;
|
|
|
|
|
|
}
|
2025-10-26 12:25:50 +08:00
|
|
|
|
|
|
|
|
|
|
::v-deep .el-step__description {
|
2025-08-16 16:54:03 +08:00
|
|
|
|
padding: 0 !important;
|
|
|
|
|
|
}
|
2025-10-26 12:25:50 +08:00
|
|
|
|
|
2025-08-16 16:54:03 +08:00
|
|
|
|
::v-deep .el-step__description.is-wait {
|
|
|
|
|
|
color: #000000 !important;
|
|
|
|
|
|
border-color: #000000 !important;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
.el-step__title.is-wait {
|
|
|
|
|
|
color: #000000 !important;
|
|
|
|
|
|
border-color: #000000 !important;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
::v-deep .el-step__head.is-wait {
|
|
|
|
|
|
color: #000000 !important;
|
|
|
|
|
|
border-color: #000000 !important;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
::v-deep .el-step__line {
|
|
|
|
|
|
background-color: #000000 !important;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
.nodeBox {
|
|
|
|
|
|
width: 80%;
|
|
|
|
|
|
text-align: center;
|
|
|
|
|
|
line-height: 30px;
|
|
|
|
|
|
border-radius: 10px;
|
|
|
|
|
|
overflow: hidden;
|
|
|
|
|
|
background-color: aliceblue;
|
|
|
|
|
|
|
|
|
|
|
|
.nodeorgNameTg {
|
|
|
|
|
|
background-color: #1abe20;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
.nameTag {
|
|
|
|
|
|
line-height: 30px;
|
|
|
|
|
|
padding: 0 10px;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
.nodeorgNameDd {
|
|
|
|
|
|
background-color: #18a2dd;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
.fontColor {
|
|
|
|
|
|
color: #1abe20;
|
2025-10-26 12:25:50 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
.fontColorDd {
|
2025-08-16 16:54:03 +08:00
|
|
|
|
color: #18a2dd;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
2025-12-05 21:36:34 +08:00
|
|
|
|
|
|
|
|
|
|
::v-deep .el-form-item__label {
|
2025-11-22 21:59:58 +08:00
|
|
|
|
padding: 0;
|
|
|
|
|
|
}
|
2025-12-05 21:36:34 +08:00
|
|
|
|
|
|
|
|
|
|
::v-deep .el-radio-button__inner {
|
|
|
|
|
|
color: #000 !important;
|
2025-11-22 21:59:58 +08:00
|
|
|
|
}
|
2026-04-22 21:06:37 +08:00
|
|
|
|
|
|
|
|
|
|
.form_cnt {
|
|
|
|
|
|
width: 80%;
|
|
|
|
|
|
}
|
2025-07-08 20:10:24 +08:00
|
|
|
|
</style>
|