更新
This commit is contained in:
@ -10,6 +10,14 @@
|
||||
<el-form-item prop="uid" label="选择民警" v-if="props.type == '指定分配'">
|
||||
<MOSTY.Other @click="chooseUserVisible = true" readonly v-model="listQuery.uidMc" width="100%" clearable placeholder="请选择选择民警"/>
|
||||
</el-form-item>
|
||||
<el-form-item prop="bqList" label="添加标签" v-if="props.type == '添加标签'">
|
||||
<div @click="chooseMarksVisible = true" style="border: 1px solid #e1e1e1;border-radius: 4px;" class="ww100 pl10 pointer">
|
||||
<span v-if="!listQuery.bqList || listQuery.bqList.length == 0" style="color: #e7e7e7;">请选择添加标签</span>
|
||||
<span v-else >
|
||||
<el-tag @close.stop="closeTag(idx)" type="success" closable v-for="(it,idx) in listQuery.bqList" :key="idx">{{ it.bqMc }}</el-tag >
|
||||
</span>
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<template #footer>
|
||||
<div class="tc">
|
||||
@ -19,11 +27,13 @@
|
||||
</template>
|
||||
</el-dialog>
|
||||
<ChooseUser v-model="chooseUserVisible" @choosedUsers="handleUserSelected" :roleIds="roleIds" />
|
||||
<ChooseMarks v-model="chooseMarksVisible" @choosed="choosed" :roleIds="roleIds" />
|
||||
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import ChooseUser from "@/components/MyComponents/ChooseUser/index.vue";
|
||||
import ChooseMarks from "@/components/MyComponents/ChooseMarks/index.vue";
|
||||
import { ElMessage } from "element-plus";
|
||||
import { qcckPost } from "@/api/qcckApi.js";
|
||||
import * as MOSTY from "@/components/MyComponents/index";
|
||||
@ -41,6 +51,7 @@ const props = defineProps({
|
||||
dic:Object
|
||||
})
|
||||
const chooseUserVisible = ref(false)
|
||||
const chooseMarksVisible = ref(false)
|
||||
const roleIds = ref([])
|
||||
const emits = defineEmits(["update:modelValue",'getDepValue']);
|
||||
const formValidate = ref()
|
||||
@ -48,25 +59,41 @@ const rules = reactive({
|
||||
fxDj: [{ required: true, message: "请选择风险等级", trigger: "change" }],
|
||||
ssbmdm: [{ required: true, message: "请选择所属部门", trigger: "change" }],
|
||||
uid: [{ required: true, message: "请选择民警", trigger: "change" }],
|
||||
bqList: [{ required: true, message: "请选择标签", trigger: "change" }],
|
||||
})
|
||||
const listQuery = ref({});
|
||||
|
||||
// 选择民警
|
||||
const handleUserSelected = (val) => {
|
||||
listQuery.value.uid = val[0].id;
|
||||
listQuery.value.uidMc = val[0].userName;
|
||||
roleIds.value = [val[0].id]
|
||||
}
|
||||
// 选择标签
|
||||
const choosed = (val) => {
|
||||
listQuery.value.bqList = val.map(v=>{
|
||||
return { bqDm:v.bqDm, bqId:v.id, bqLb:v.bqLb, bqLx:v.bqLx, bqMc:v.bqMc }
|
||||
});
|
||||
roleIds.value = val.map(v=>v.id)
|
||||
}
|
||||
|
||||
// 删除数据
|
||||
const closeTag = (idx) =>{
|
||||
listQuery.value.bqList.splice(idx,1)
|
||||
roleIds.value.splice(idx,1)
|
||||
}
|
||||
|
||||
const submitForm = () =>{
|
||||
formValidate.value.validate((valid) => {
|
||||
if (!valid) return false;
|
||||
let params = { ids:props.ids, ...listQuery.value }
|
||||
let url = ''
|
||||
if( props.type == '警种变更') '/mosty-gsxt/tbGsxtRqfjRy/updateByBm'
|
||||
if( props.type == '指定分配') '/mosty-gsxt/tbGsxtRqfjRy/updateByMj'
|
||||
if( props.type == '级别变更') '/mosty-gsxt/tbGsxtRqfjRy/updateByFxDj'
|
||||
if( props.type == '警种变更') url = '/mosty-gsxt/tbGsxtRqfjRy/updateByBm'
|
||||
if( props.type == '指定分配') url = '/mosty-gsxt/tbGsxtRqfjRy/updateByMj'
|
||||
if( props.type == '级别变更') url = '/mosty-gsxt/tbGsxtRqfjRy/updateByFxDj'
|
||||
if( props.type == '添加标签') url = '/mosty-gsxt/tbGsxtRqfjRy/updateAddBq'
|
||||
qcckPost(params,url).then(res=>{
|
||||
ElMessage.success("修改成功");
|
||||
ElMessage.success("成功");
|
||||
emits('update:modelValue',false)
|
||||
emits('change')
|
||||
})
|
||||
@ -74,6 +101,7 @@ const submitForm = () =>{
|
||||
}
|
||||
|
||||
const handleClose = () =>{
|
||||
roleIds.value = []
|
||||
emits('update:modelValue',false)
|
||||
formValidate.value.resetFields();
|
||||
}
|
||||
|
@ -127,7 +127,7 @@ const checkData = reactive({
|
||||
hasChoose: ["警情"],
|
||||
list: ["警情","人力情报","线索","民警处置文本", "交通事故"],
|
||||
});
|
||||
const btnsList = reactive(['级别变更','警种变更','指定分配','添加标签','批量导入','导出','批量删除'])
|
||||
const btnsList = reactive(['级别变更','警种变更','指定分配','添加标签','导出','批量删除'])
|
||||
|
||||
const chooselx = ref('')
|
||||
const isShow = ref(false)
|
||||
@ -171,7 +171,7 @@ const pageData = reactive({
|
||||
{ label: "现住地址", prop: "ryXzdz" ,showOverflowTooltip:true},
|
||||
{ label: "附件照片", prop: "ryFjZp" ,showOverflowTooltip:true},
|
||||
{ label: "管辖单位", prop: "gxDwDm" ,showOverflowTooltip:true},
|
||||
{ label: "户籍地址", prop: "ssbm",showOverflowTooltip:true},
|
||||
{ label: "责任部门", prop: "ssbm",showOverflowTooltip:true},
|
||||
{ label: "风险等级", prop: "fxDj",showOverflowTooltip:true, showSolt: true },
|
||||
{ label: "风险类别", prop: "fxLb",showOverflowTooltip:true, showSolt: true },
|
||||
{ label: "是否关注", prop: "sfGz",showOverflowTooltip:true, showSolt: true },
|
||||
@ -243,7 +243,16 @@ const chooseDataBottom = (val) =>{
|
||||
const chooseType = (val)=>{
|
||||
if(ids.value.length == 0) return ElMessage.warning("请选择对应的数据");
|
||||
chooselx.value = val;
|
||||
isShow.value = true;
|
||||
switch(val){
|
||||
case '级别变更':
|
||||
case '警种变更':
|
||||
case '指定分配':
|
||||
case '添加标签':
|
||||
isShow.value = true;
|
||||
break;
|
||||
case '批量删除':
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
const tabHeightFn = () => {
|
||||
|
@ -1,542 +0,0 @@
|
||||
<template>
|
||||
<div class="dialog" v-if="dialogForm">
|
||||
<div class="head_box" style="width: 83vw">
|
||||
<span class="title">{{ title }}</span>
|
||||
<div>
|
||||
<el-button size="small" type="primary" @click="close">暂存</el-button>
|
||||
<el-button size="small" type="primary" @click="submit">确认</el-button>
|
||||
<el-button size="small" @click="close">关闭</el-button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="cntinfo">
|
||||
<div class="left">
|
||||
<div class="top" ref="topBox">
|
||||
<div class="title">图像信息</div>
|
||||
<MyTable
|
||||
:tableData="pageData.tableData"
|
||||
:tableColumn="pageData.tableColumn"
|
||||
:tableHeight="250"
|
||||
:key="pageData.keyCount"
|
||||
:tableConfiger="pageData.tableConfiger"
|
||||
:controlsWidth="pageData.controlsWidth"
|
||||
@chooseData="chooseData"
|
||||
>
|
||||
<template #cjhx>
|
||||
<img width="60" height="60" :src="pro" alt="" />
|
||||
</template>
|
||||
<template #ytp>
|
||||
<img width="60" height="60" :src="pro" alt="" />
|
||||
</template>
|
||||
<template #controls="{ row }">
|
||||
<el-link size="small" type="success" @click="addEdit('edit', row)"
|
||||
>研判确认</el-link
|
||||
>
|
||||
<el-link size="small" type="primary">查看</el-link>
|
||||
<el-link size="small" type="danger" @click="deleteRow(row)"
|
||||
>删除</el-link
|
||||
>
|
||||
</template>
|
||||
</MyTable>
|
||||
</div>
|
||||
<div class="mt20">
|
||||
<div class="title">人员信息</div>
|
||||
<MyTable
|
||||
:tableData="pageData.tableDataPeople"
|
||||
:tableColumn="pageData.tableColumnPeople"
|
||||
:tableHeight="pageData.tableHeight"
|
||||
:key="pageData.keyCount"
|
||||
:tableConfiger="pageData.tableConfiger"
|
||||
:controlsWidth="pageData.controlsWidth"
|
||||
@chooseData="chooseData"
|
||||
>
|
||||
<template #fxDj="{ row }">
|
||||
<DictTag
|
||||
:tag="false"
|
||||
:value="row.fxDj"
|
||||
:options="D_GS_RQFJ_FXDJ"
|
||||
/>
|
||||
</template>
|
||||
<template #fxLb="{ row }">
|
||||
<DictTag
|
||||
:tag="false"
|
||||
:value="row.fxLb"
|
||||
:options="D_GS_RQFJ_FXLB"
|
||||
/>
|
||||
</template>
|
||||
<template #sfGz="{ row }">
|
||||
<DictTag :tag="false" :value="row.sfGz" :options="D_BZ_SF" />
|
||||
</template>
|
||||
<template #sfZbkry="{ row }">
|
||||
<DictTag :tag="false" :value="row.sfZbkry" :options="D_BZ_SF" />
|
||||
</template>
|
||||
<template #sfZzdry="{ row }">
|
||||
<DictTag :tag="false" :value="row.sfZzdry" :options="D_BZ_SF" />
|
||||
</template>
|
||||
<template #controls="{ row }">
|
||||
<el-link size="small" type="primary" @click="addEdit('edit', row)"
|
||||
>关联重点人</el-link
|
||||
>
|
||||
<el-link size="small" type="primary">查看</el-link>
|
||||
<el-link size="small" type="primary" @click="deleteRow(row)"
|
||||
>修改</el-link
|
||||
>
|
||||
</template>
|
||||
</MyTable>
|
||||
<Pages
|
||||
class="mt10"
|
||||
@changeNo="changeNo"
|
||||
@changeSize="changeSize"
|
||||
:tableHeight="pageData.tableHeight"
|
||||
:pageConfiger="{
|
||||
...pageData.pageConfiger,
|
||||
total: pageData.total
|
||||
}"
|
||||
></Pages>
|
||||
</div>
|
||||
</div>
|
||||
<el-divider direction="vertical" style="height: 100%" />
|
||||
<div class="right noScollLine">
|
||||
<div class="title">轨迹信息</div>
|
||||
|
||||
<div>
|
||||
<div
|
||||
class="step"
|
||||
v-for="(item, index) in stepList"
|
||||
:key="`${index}stepList`"
|
||||
>
|
||||
<div class="icon">
|
||||
<div class="circle"></div>
|
||||
<div class="line"></div>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<div>{{ item.time }}</div>
|
||||
<div class="desc">
|
||||
<div class="ellipsis mb5">事由:{{ item.sy }}</div>
|
||||
<div class="ellipsis mb5">数据来源:{{ item.sjly }}</div>
|
||||
<div class="ellipsis">所在地址:{{ item.szdz }}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<el-dialog v-model="dialogVisible" title="请选择风险" width="500px">
|
||||
<FormMessage
|
||||
v-model="elform"
|
||||
:formList="elformata"
|
||||
ref="elformRef"
|
||||
:rules="rules"
|
||||
>
|
||||
</FormMessage>
|
||||
<template #footer>
|
||||
<div class="dialog-footer">
|
||||
<el-button @click="dialogVisible = false">取消</el-button>
|
||||
<el-button type="primary" @click="submitData"> 确定 </el-button>
|
||||
</div>
|
||||
</template>
|
||||
</el-dialog>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import { ref, reactive, onMounted, nextTick, getCurrentInstance } from "vue";
|
||||
import MyTable from "@/components/aboutTable/MyTable.vue";
|
||||
import Pages from "@/components/aboutTable/Pages.vue";
|
||||
import FormMessage from "@/components/aboutTable/FormMessage.vue";
|
||||
import { pa } from "element-plus/es/locale.mjs";
|
||||
import { qcckPost } from "@/api/qcckApi.js";
|
||||
|
||||
const { proxy } = getCurrentInstance();
|
||||
|
||||
const { D_GS_RQFJ_FXDJ, D_GS_RQFJ_FXLB } = proxy.$dict(
|
||||
"D_GS_RQFJ_FXDJ",
|
||||
"D_GS_RQFJ_FXLB"
|
||||
); //获取字典数据
|
||||
const dialogForm = ref(false);
|
||||
const activeName = ref("basic");
|
||||
const title = ref("深度研判");
|
||||
const listQuery = ref({});
|
||||
const topBox = ref();
|
||||
const areaOptions = ref([]); // 区域选项数据
|
||||
const rowId = ref(null);
|
||||
const rules = reactive({
|
||||
fxDj: [{ required: true, message: "请选择风险等级", trigger: "change" }],
|
||||
fxLb: [{ required: true, message: "请选择风险类别", trigger: "change" }]
|
||||
});
|
||||
const dialogVisible = ref(false);
|
||||
// 初始化数据
|
||||
const init = (id) => {
|
||||
rowId.value = id;
|
||||
dialogForm.value = true;
|
||||
tabHeightFn();
|
||||
// 根据type和row初始化表单数据
|
||||
};
|
||||
|
||||
const close = () => {
|
||||
dialogForm.value = false;
|
||||
};
|
||||
|
||||
const elformRef = ref();
|
||||
|
||||
const elform = ref({}); //表单
|
||||
const elformata = ref([
|
||||
{ label: "风险等级", prop: "fxDj", type: "select", options: D_GS_RQFJ_FXDJ },
|
||||
{ label: "风险类别", prop: "fxLb", type: "select", options: D_GS_RQFJ_FXLB }
|
||||
]);
|
||||
|
||||
//确认
|
||||
const submit = () => {
|
||||
dialogVisible.value = true;
|
||||
};
|
||||
const submitData = () => {
|
||||
elformRef.value.submit((data) => {
|
||||
let url = "/mosty-gsxt/tbGsxtRqfjRy/updateSdfj";
|
||||
let params = { ...data, id: rowId.value };
|
||||
qcckPost(params, url)
|
||||
.then((res) => {
|
||||
proxy.$message({ type: "success", message: title.value + "成功" });
|
||||
dialogVisible.value = true;
|
||||
close();
|
||||
emit("getList");
|
||||
})
|
||||
.catch(() => {});
|
||||
});
|
||||
};
|
||||
const pageData = reactive({
|
||||
tableData: [
|
||||
{
|
||||
tpzy: "GBJD01",
|
||||
dwmc: "工布江达重点人",
|
||||
zylyxz: "涉稳",
|
||||
cjhx: "系统新增",
|
||||
ytp: "低级",
|
||||
rxxsd: "2025/05/05"
|
||||
},
|
||||
{
|
||||
tpzy: "GBJD01",
|
||||
dwmc: "工布江达重点人",
|
||||
zylyxz: "涉稳",
|
||||
cjhx: "系统新增",
|
||||
ytp: "低级",
|
||||
rxxsd: "2025/05/05"
|
||||
},
|
||||
{
|
||||
tpzy: "GBJD01",
|
||||
dwmc: "工布江达重点人",
|
||||
zylyxz: "涉稳",
|
||||
cjhx: "系统新增",
|
||||
ytp: "低级",
|
||||
rxxsd: "2025/05/05"
|
||||
},
|
||||
{
|
||||
tpzy: "GBJD01",
|
||||
dwmc: "工布江达重点人",
|
||||
zylyxz: "涉稳",
|
||||
cjhx: "系统新增",
|
||||
ytp: "低级",
|
||||
rxxsd: "2025/05/05"
|
||||
},
|
||||
{
|
||||
tpzy: "GBJD01",
|
||||
dwmc: "工布江达重点人",
|
||||
zylyxz: "涉稳",
|
||||
cjhx: "系统新增",
|
||||
ytp: "低级",
|
||||
rxxsd: "2025/05/05"
|
||||
}
|
||||
],
|
||||
tableDataPeople: [
|
||||
{
|
||||
xm: "111",
|
||||
xb: "111",
|
||||
sfzh: "111",
|
||||
hjd: "111",
|
||||
xjd: "111",
|
||||
sjh: "111",
|
||||
cph: "111",
|
||||
gkzt: "111"
|
||||
},
|
||||
{
|
||||
xm: "111",
|
||||
xb: "111",
|
||||
sfzh: "111",
|
||||
hjd: "111",
|
||||
xjd: "111",
|
||||
sjh: "111",
|
||||
cph: "111",
|
||||
gkzt: "111"
|
||||
},
|
||||
{
|
||||
xm: "111",
|
||||
xb: "111",
|
||||
sfzh: "111",
|
||||
hjd: "111",
|
||||
xjd: "111",
|
||||
sjh: "111",
|
||||
cph: "111",
|
||||
gkzt: "111"
|
||||
},
|
||||
{
|
||||
xm: "111",
|
||||
xb: "111",
|
||||
sfzh: "111",
|
||||
hjd: "111",
|
||||
xjd: "111",
|
||||
sjh: "111",
|
||||
cph: "111",
|
||||
gkzt: "111"
|
||||
},
|
||||
{
|
||||
xm: "111",
|
||||
xb: "111",
|
||||
sfzh: "111",
|
||||
hjd: "111",
|
||||
xjd: "111",
|
||||
sjh: "111",
|
||||
cph: "111",
|
||||
gkzt: "111"
|
||||
},
|
||||
{
|
||||
xm: "111",
|
||||
xb: "111",
|
||||
sfzh: "111",
|
||||
hjd: "111",
|
||||
xjd: "111",
|
||||
sjh: "111",
|
||||
cph: "111",
|
||||
gkzt: "111"
|
||||
}
|
||||
],
|
||||
keyCount: 0,
|
||||
tableConfiger: {
|
||||
rowHieght: 61,
|
||||
showSelectType: "checkBox",
|
||||
loading: false
|
||||
},
|
||||
total: 0,
|
||||
pageConfiger: {
|
||||
pageSize: 20,
|
||||
pageCurrent: 1
|
||||
},
|
||||
controlsWidth: 220,
|
||||
tableColumn: [
|
||||
{ label: "图片资源", prop: "tpzy" },
|
||||
{ label: "单位名称", prop: "dwmc" },
|
||||
{ label: "资源来源详址", prop: "zylyxz" },
|
||||
{ label: "采集画像", prop: "cjhx", showSolt: true },
|
||||
{ label: "原图片", prop: "ytp", showSolt: true },
|
||||
{ label: "人像相似度", prop: "rxxsd" }
|
||||
],
|
||||
|
||||
tableColumnPeople: [
|
||||
{ label: "姓名", prop: "ryXm" },
|
||||
{ label: "英文姓名", prop: "ryXmYw" },
|
||||
{ label: "别名", prop: "ryBm" },
|
||||
{ label: "网名", prop: "ryWm" },
|
||||
{ label: "绰号", prop: "ryCh" },
|
||||
{ label: "手机号码", prop: "rySjhm" },
|
||||
{ label: "身份证号码", prop: "rySfzh" },
|
||||
{ label: "户籍地址", prop: "ryHjdz" },
|
||||
{ label: "护照号码", prop: "ryHzhm" },
|
||||
{ label: "现住地址", prop: "ryXzdz" },
|
||||
{ label: "银行卡号", prop: "ryYhkh" },
|
||||
{ label: "附件照片", prop: "ryFjZp" },
|
||||
{ label: "管辖单位", prop: "gxDwDm" },
|
||||
{ label: "风险等级", prop: "fxDj", showSolt: true },
|
||||
{ label: "风险类别", prop: "fxLb", showSolt: true },
|
||||
{ label: "是否关注", prop: "sfGz", showSolt: true },
|
||||
{ label: "是否转布控人员", prop: "sfZbkry", showSolt: true },
|
||||
{ label: "是否转重点人员", prop: "sfZzdry", showSolt: true }
|
||||
]
|
||||
});
|
||||
const stepList = ref([
|
||||
{
|
||||
time: "2025-4-25 16:40",
|
||||
sy: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高",
|
||||
sjly: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高",
|
||||
szdz: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高"
|
||||
},
|
||||
{
|
||||
time: "2025-4-25 16:40",
|
||||
sy: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高",
|
||||
sjly: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高",
|
||||
szdz: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高"
|
||||
},
|
||||
{
|
||||
time: "2025-4-25 16:40",
|
||||
sy: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高",
|
||||
sjly: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高",
|
||||
szdz: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高"
|
||||
},
|
||||
{
|
||||
time: "2025-4-25 16:40",
|
||||
sy: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高",
|
||||
sjly: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高",
|
||||
szdz: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高"
|
||||
},
|
||||
{
|
||||
time: "2025-4-25 16:40",
|
||||
sy: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高",
|
||||
sjly: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高",
|
||||
szdz: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高"
|
||||
},
|
||||
{
|
||||
time: "2025-4-25 16:40",
|
||||
sy: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高",
|
||||
sjly: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高",
|
||||
szdz: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高"
|
||||
},
|
||||
{
|
||||
time: "2025-4-25 16:40",
|
||||
sy: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高",
|
||||
sjly: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高",
|
||||
szdz: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高"
|
||||
},
|
||||
{
|
||||
time: "2025-4-25 16:40",
|
||||
sy: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高",
|
||||
sjly: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高",
|
||||
szdz: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高"
|
||||
},
|
||||
{
|
||||
time: "2025-4-25 16:40",
|
||||
sy: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高",
|
||||
sjly: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高",
|
||||
szdz: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高"
|
||||
},
|
||||
{
|
||||
time: "2025-4-25 16:40",
|
||||
sy: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高",
|
||||
sjly: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高",
|
||||
szdz: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高"
|
||||
}
|
||||
]);
|
||||
// 表格高度计算
|
||||
const tabHeightFn = () => {
|
||||
nextTick(() => {
|
||||
pageData.tableHeight = window.innerHeight - 410 - 250;
|
||||
});
|
||||
window.onresize = function () {
|
||||
tabHeightFn();
|
||||
};
|
||||
};
|
||||
|
||||
defineExpose({ init });
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.dialog {
|
||||
padding: 20px;
|
||||
|
||||
// :deep(.el-form-item__label) {
|
||||
// background-color: #f7fafb;
|
||||
// padding: 0px 8px;
|
||||
// color: #000;
|
||||
// font-weight: 500;
|
||||
// border: 1px solid #e3e7ed;
|
||||
// }
|
||||
|
||||
.head_box {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
.cntinfo {
|
||||
height: calc(100% - 70px);
|
||||
overflow: hidden;
|
||||
overflow-y: auto;
|
||||
display: flex;
|
||||
.title {
|
||||
font-size: 20px;
|
||||
|
||||
font-weight: 700;
|
||||
margin-bottom: 20px;
|
||||
position: relative;
|
||||
|
||||
&::after {
|
||||
content: "";
|
||||
position: absolute;
|
||||
bottom: 2px;
|
||||
left: 0;
|
||||
width: 78px;
|
||||
height: 4px;
|
||||
background: linear-gradient(
|
||||
90deg,
|
||||
#3597f9c4 0%,
|
||||
rgba(53, 150, 249, 0) 100%
|
||||
);
|
||||
border-radius: 4px 4px 4px 4px;
|
||||
}
|
||||
}
|
||||
.left {
|
||||
width: calc(100% - 560px);
|
||||
}
|
||||
.right {
|
||||
width: 400px;
|
||||
padding: 10px 0;
|
||||
overflow: auto;
|
||||
.step {
|
||||
// position: relative;
|
||||
display: flex;
|
||||
gap: 5px;
|
||||
box-sizing: border-box;
|
||||
.desc {
|
||||
margin: 5px;
|
||||
color: #929090;
|
||||
width: 350px;
|
||||
}
|
||||
.icon {
|
||||
// position: absolute;
|
||||
// top: 0;
|
||||
// left: 0;
|
||||
text-align: center;
|
||||
.circle {
|
||||
height: 14px;
|
||||
width: 14px;
|
||||
border-radius: 50%;
|
||||
background-color: rgb(3, 134, 251);
|
||||
}
|
||||
.line {
|
||||
margin: 0 auto;
|
||||
width: 0;
|
||||
height: calc(100% - 14px);
|
||||
border: 1px dashed rgb(3, 134, 251);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.form-row {
|
||||
display: flex;
|
||||
|
||||
.el-form-item {
|
||||
flex: 1;
|
||||
}
|
||||
}
|
||||
|
||||
.upload-group {
|
||||
display: flex;
|
||||
// gap: 20px;
|
||||
|
||||
.el-form-item {
|
||||
flex: 1;
|
||||
}
|
||||
}
|
||||
|
||||
.unit {
|
||||
margin-left: 5px;
|
||||
}
|
||||
::v-deep .el-input__inner {
|
||||
height: 36px !important;
|
||||
line-height: 36px !important;
|
||||
border-radius: 0;
|
||||
color: #777575;
|
||||
}
|
||||
}
|
||||
.el-form-item--default {
|
||||
margin-bottom: 0px;
|
||||
}
|
||||
</style>
|
@ -1,221 +0,0 @@
|
||||
<template>
|
||||
<div class="dialog" v-if="dialogForm">
|
||||
<div class="head_box">
|
||||
<span class="title">{{ title }}</span>
|
||||
<div>
|
||||
<el-button size="small" @click="close">关闭</el-button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="cntinfo">
|
||||
<el-tabs v-model="activeName">
|
||||
<el-tab-pane label="场所信息" name="basic">
|
||||
<el-form :model="listQuery" :label-width="230" label-position="left">
|
||||
<div class="flex align-center">
|
||||
<div style="width: calc(100% - 176px);">
|
||||
<div class="form-row">
|
||||
<el-form-item label="统一社会信用代码">
|
||||
<el-input v-model="listQuery.tyshdm" placeholder="ktv"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="单位名称(营业执照登记名称)">
|
||||
<el-input v-model="listQuery.djmc" placeholder="请输入"/>
|
||||
</el-form-item>
|
||||
</div>
|
||||
<div class="form-row">
|
||||
<el-form-item label="场所名称">
|
||||
<el-input v-model="listQuery.csmc" placeholder="请输入"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="场所联系电话">
|
||||
<el-input v-model="listQuery.cslxdh" placeholder="请输入"/>
|
||||
</el-form-item>
|
||||
</div>
|
||||
<div class="form-row">
|
||||
<el-form-item label="经营状况">
|
||||
<el-input v-model="listQuery.csdm" placeholder="请输入"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="场所面积">
|
||||
<el-input v-model="listQuery.csmj" placeholder="请输入"/>
|
||||
</el-form-item>
|
||||
</div>
|
||||
<div class="form-row">
|
||||
<el-form-item label="开业日期">
|
||||
<el-input v-model="listQuery.kyrq" placeholder="请输入"/>
|
||||
</el-form-item>
|
||||
</div>
|
||||
</div>
|
||||
<img height="130" src="@/assets/images/person.png" alt="">
|
||||
</div>
|
||||
|
||||
<el-form-item label="单位注册地址">
|
||||
<el-input v-model="listQuery.dwzcdz" placeholder="请输入"/>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="场所地址">
|
||||
<el-input v-model="listQuery.csdz" placeholder="请输入"/>
|
||||
</el-form-item>
|
||||
|
||||
<div class="flex align-center">
|
||||
<div style="width: calc(100% - 176px);">
|
||||
<div class="form-row">
|
||||
<el-form-item label="法定代表人">
|
||||
<el-input v-model="listQuery.fddbr" placeholder="请输入"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="法定代表人证件号码">
|
||||
<el-input v-model="listQuery.fddbrzjhm" placeholder="请输入"/>
|
||||
</el-form-item>
|
||||
</div>
|
||||
<div class="form-row">
|
||||
<el-form-item label="法定代表人联系电话">
|
||||
<el-input v-model="listQuery.fddbrLxdh" placeholder="请输入"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="法定代表人居住地址">
|
||||
<el-input v-model="listQuery.fddbrJzdz" placeholder="请输入"/>
|
||||
</el-form-item>
|
||||
</div>
|
||||
<div class="form-row">
|
||||
<el-form-item label="场所负责人">
|
||||
<el-input v-model="listQuery.csfzr" placeholder="请输入"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="场所负责人身份证号">
|
||||
<el-input v-model="listQuery.csfzrSfzh" placeholder="请输入"/>
|
||||
</el-form-item>
|
||||
</div>
|
||||
<div class="form-row">
|
||||
<el-form-item label="场所负责人联系方式">
|
||||
<el-input v-model="listQuery.csfzrLxfs" placeholder="请输入"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="场所负责人居住地址">
|
||||
<el-input v-model="listQuery.csfzrJzdz" placeholder="请输入"/>
|
||||
</el-form-item>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<img height="65" style="width: 100%;" src="@/assets/images/person.png" alt="">
|
||||
<img height="65" style="width: 100%;" src="@/assets/images/person.png" alt="">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="upload-group">
|
||||
<el-form-item label="营业执照照片">
|
||||
<img height="130" src="@/assets/images/person.png" alt="">
|
||||
<img height="130" src="@/assets/images/person.png" alt="">
|
||||
<img height="130" src="@/assets/images/person.png" alt="">
|
||||
</el-form-item>
|
||||
</div>
|
||||
|
||||
<div class="form-row">
|
||||
<el-form-item label="机修场所备案编号">
|
||||
<el-input v-model="listQuery.jxcsbabh" placeholder="请输入"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="场所备案机构名称">
|
||||
<el-input v-model="listQuery.ylcsbajgmc" placeholder="请输入"/>
|
||||
</el-form-item>
|
||||
</div>
|
||||
|
||||
<div class="form-row">
|
||||
<el-form-item label="备案登记日期">
|
||||
<el-input v-model="listQuery.badjrq" placeholder="请输入"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="所属辖区">
|
||||
<el-input v-model="listQuery.ssxq" placeholder="请输入"/>
|
||||
</el-form-item>
|
||||
</div>
|
||||
|
||||
<div class="form-row">
|
||||
<el-form-item label="责任民警">
|
||||
<el-input v-model="listQuery.zrmj" placeholder="请输入"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="警号">
|
||||
<el-input v-model="listQuery.jh" placeholder="请输入"/>
|
||||
</el-form-item>
|
||||
</div>
|
||||
</el-form>
|
||||
</el-tab-pane>
|
||||
<el-tab-pane label="从业人员" name="staff">
|
||||
<!-- 从业人员表格 -->
|
||||
</el-tab-pane>
|
||||
</el-tabs>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import { ref, reactive } from 'vue';
|
||||
import { Plus } from '@element-plus/icons-vue';
|
||||
|
||||
const dialogForm = ref(false);
|
||||
const activeName = ref('basic');
|
||||
const title = ref('3D打印业场所管理详情');
|
||||
const listQuery = ref({});
|
||||
|
||||
const areaOptions = ref([]); // 区域选项数据
|
||||
|
||||
// 初始化数据
|
||||
const init = (type, row,) => {
|
||||
dialogForm.value = true;
|
||||
// 根据type和row初始化表单数据
|
||||
};
|
||||
|
||||
|
||||
const close = () => {
|
||||
dialogForm.value = false;
|
||||
};
|
||||
|
||||
defineExpose({init})
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.dialog {
|
||||
padding: 20px;
|
||||
|
||||
:deep(.el-form-item__label) {
|
||||
background-color: #F7FAFB;
|
||||
padding: 0px 8px;
|
||||
color: #000;
|
||||
font-weight: 500;
|
||||
border: 1px solid #E3E7ED;
|
||||
}
|
||||
|
||||
.head_box {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
.cntinfo{
|
||||
height: calc(100% - 70px);
|
||||
overflow: hidden;
|
||||
overflow-y: auto;
|
||||
}
|
||||
|
||||
.form-row {
|
||||
display: flex;
|
||||
|
||||
.el-form-item {
|
||||
flex: 1;
|
||||
}
|
||||
}
|
||||
|
||||
.upload-group {
|
||||
display: flex;
|
||||
// gap: 20px;
|
||||
|
||||
.el-form-item {
|
||||
flex: 1;
|
||||
}
|
||||
}
|
||||
|
||||
.unit {
|
||||
margin-left: 5px;
|
||||
}
|
||||
::v-deep .el-input__inner{
|
||||
height: 36px !important;
|
||||
line-height: 36px !important;
|
||||
border-radius: 0;
|
||||
color: #777575;
|
||||
}
|
||||
}
|
||||
.el-form-item--default{
|
||||
margin-bottom: 0px;
|
||||
}
|
||||
</style>
|
@ -1,360 +1,364 @@
|
||||
<template>
|
||||
<div class="statistical-analysis">
|
||||
<!-- 左侧树形菜单 -->
|
||||
<div class="left-menu">
|
||||
<!-- 这个部分用的是组件-后期替换 -->
|
||||
<el-tree
|
||||
:data="treeData"
|
||||
:props="defaultProps"
|
||||
@node-click="handleNodeClick"
|
||||
default-expand-all
|
||||
/>
|
||||
<div class="left">
|
||||
<div style="background:#fff" class="pl10 pr10 pb10 pt10">
|
||||
<div class="title">图像信息</div>
|
||||
<MyTable
|
||||
:tableData="pageData.tableData"
|
||||
:tableColumn="pageData.tableColumn"
|
||||
:tableHeight="pageData.tableHeight"
|
||||
:key="pageData.keyCount"
|
||||
:tableConfiger="pageData.tableConfiger"
|
||||
:controlsWidth="pageData.controlsWidth"
|
||||
@chooseData="chooseData"
|
||||
>
|
||||
<template #cjhx>
|
||||
<img width="60" height="60" :src="pro" alt="" />
|
||||
</template>
|
||||
<template #ytp>
|
||||
<img width="60" height="60" :src="pro" alt="" />
|
||||
</template>
|
||||
<template #controls="{ row }">
|
||||
<el-link size="small" type="success" @click="addEdit('edit', row)" >研判确认</el-link >
|
||||
<el-link size="small" type="primary">查看</el-link>
|
||||
<el-link size="small" type="danger" @click="deleteRow(row)">删除</el-link>
|
||||
</template>
|
||||
</MyTable>
|
||||
</div>
|
||||
<div style="background:#fff" class="mt10 pl10 pr10 pb10 pt10" >
|
||||
<div class="title">人员信息</div>
|
||||
<MyTable
|
||||
:tableData="pageData.tableDataPeople"
|
||||
:tableColumn="pageData.tableColumnPeople"
|
||||
:tableHeight="pageData.tableHeight1"
|
||||
:key="pageData.keyCount"
|
||||
:tableConfiger="pageData.tableConfiger1"
|
||||
:controlsWidth="pageData.controlsWidth"
|
||||
@chooseData="chooseData"
|
||||
>
|
||||
<template #ryXm="{ row }">
|
||||
<div>姓名:{{ row.ryXm }} ;</div>
|
||||
<div>电话:{{ row.rySjhm }} ;</div>
|
||||
<div>身份证:{{ row.rySfzh }} </div>
|
||||
</template>
|
||||
<template #fxDj="{ row }">
|
||||
<DictTag :tag="false" :value="row.fxDj" :options="D_GS_RQFJ_FXDJ"/>
|
||||
</template>
|
||||
<template #fxLb="{ row }">
|
||||
<DictTag :tag="false" :value="row.fxLb" :options="D_GS_RQFJ_FXLB"/>
|
||||
</template>
|
||||
<template #czfs="{ row }">
|
||||
<div>关注:<DictTag :tag="false" style="display: inline;" :value="row.sfGz" :options="D_BZ_SF" /> ;</div>
|
||||
<div>布控人员:<DictTag :tag="false" style="display: inline;" :value="row.sfZbkry" :options="D_BZ_SF" /> ;</div>
|
||||
<div>重点人员<DictTag :tag="false" style="display: inline;" :value="row.sfZzdry" :options="D_BZ_SF" /></div>
|
||||
</template>
|
||||
</MyTable>
|
||||
<Pages
|
||||
@changeNo="changeNo"
|
||||
@changeSize="changeSize"
|
||||
:tableHeight="pageData.tableHeight1"
|
||||
:pageConfiger="{ ...pageData.pageConfiger, total: pageData.total }"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- 右侧内容区 -->
|
||||
<div class="right-content">
|
||||
<Search
|
||||
:searchArr="searchConfiger"
|
||||
@submit="onSearch"
|
||||
@reset="onReset"
|
||||
:key="pageData.keyCount"
|
||||
>
|
||||
<template #defaultSlot>
|
||||
<CheckBox :data="checkData" @changeData="changeData"></CheckBox>
|
||||
</template>
|
||||
</Search>
|
||||
<div class="tableCnt mb10 pl10 pr10">
|
||||
<PageTitle title="发掘内容" style="color: #333">
|
||||
<el-button type="primary" size="small" @click="addEdit('add', '')">
|
||||
<el-icon style="vertical-align: middle"><CirclePlus /></el-icon>
|
||||
<span style="vertical-align: middle">新增</span>
|
||||
</el-button>
|
||||
<el-button type="primary" size="small" @click="importData">
|
||||
<el-icon style="vertical-align: middle"><Upload /></el-icon>
|
||||
<span style="vertical-align: middle">导入内容</span>
|
||||
</el-button>
|
||||
<el-button type="danger" size="small" @click="exportData">
|
||||
<el-icon style="vertical-align: middle"><Delete /></el-icon>
|
||||
<span style="vertical-align: middle">删除</span>
|
||||
</el-button>
|
||||
</PageTitle>
|
||||
<div>
|
||||
<MyTable
|
||||
:tableData="pageData.tableData"
|
||||
:tableColumn="pageData.tableColumn"
|
||||
:tableHeight="pageData.tableHeight"
|
||||
:key="pageData.keyCount"
|
||||
:tableConfiger="pageData.tableConfiger"
|
||||
:controlsWidth="pageData.controlsWidth"
|
||||
@chooseData="chooseData"
|
||||
>
|
||||
<template #fjLx="{ row }">
|
||||
<DictTag :tag="false" :value="row.fjLx" :options="D_GS_RQFJ_LX" />
|
||||
</template>
|
||||
<!-- 操作 -->
|
||||
<template #controls="{ row }">
|
||||
<el-link size="small" type="danger" @click="deleteRow(row)"
|
||||
>删除</el-link
|
||||
>
|
||||
<el-link size="small" type="primary" @click="viewDetails(row)"
|
||||
>查看</el-link
|
||||
>
|
||||
</template>
|
||||
</MyTable>
|
||||
<!-- <div class="ww100 flex just-center mt8">
|
||||
<el-button type="primary">智能解析</el-button>
|
||||
</div> -->
|
||||
</div>
|
||||
</div>
|
||||
<div class="tableCnt mb10 pl10 pr10">
|
||||
<PageTitle
|
||||
title="模型智能识别/LP解析结果"
|
||||
style="color: #333"
|
||||
></PageTitle>
|
||||
<div ref="searchBox" class="mb8">
|
||||
<el-button
|
||||
v-for="(it, idx) in btns"
|
||||
:key="idx"
|
||||
:type="it.type"
|
||||
:icon="it.icon"
|
||||
size="small"
|
||||
@click="importData"
|
||||
>
|
||||
{{ it.label }}
|
||||
</el-button>
|
||||
</div>
|
||||
<div>
|
||||
<MyTable
|
||||
:tableData="pageData.tableData2"
|
||||
:tableColumn="pageData.tableColumn2"
|
||||
:tableHeight="pageData.tableHeight2"
|
||||
:key="pageData.keyCount"
|
||||
:tableConfiger="pageData.tableConfiger2"
|
||||
:controlsWidth="pageData.controlsWidth2"
|
||||
@chooseData="chooseData"
|
||||
>
|
||||
<!-- 操作 -->
|
||||
<template #controls="{ row }">
|
||||
<el-link size="small" type="primary" @click="handleDeepIn(row.id)"
|
||||
>深度研判</el-link
|
||||
>
|
||||
<el-link size="small" type="primary" @click="viewDetails(row)"
|
||||
>查看</el-link
|
||||
>
|
||||
<el-link size="small" type="primary" @click="viewDetails(row)"
|
||||
>修改</el-link
|
||||
>
|
||||
<el-link size="small" type="danger" @click="deleteRow(row)"
|
||||
>删除</el-link
|
||||
>
|
||||
</template>
|
||||
</MyTable>
|
||||
<Pages
|
||||
@changeNo="changeNo"
|
||||
@changeSize="changeSize"
|
||||
:tableHeight="pageData.tableHeight2"
|
||||
:pageConfiger="{
|
||||
...pageData.pageConfiger,
|
||||
total: pageData.total
|
||||
}"
|
||||
></Pages>
|
||||
</div>
|
||||
</div>
|
||||
<div class="right">
|
||||
<div class="title">轨迹信息</div>
|
||||
<ul class="cntBox">
|
||||
<li class="step" v-for="(item, index) in stepList" :key="index">
|
||||
<div style="color: #000;">{{ item.time }}</div>
|
||||
<div class="desc">
|
||||
<div class="ellipsis mb5">事由:{{ item.sy }}</div>
|
||||
<div class="ellipsis mb5">数据来源:{{ item.sjly }}</div>
|
||||
<div class="ellipsis">所在地址:{{ item.szdz }}</div>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<DeepIn ref="deepIn" @getList="getList" ></DeepIn>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import DeepIn from "./components/deepIn.vue";
|
||||
import CheckBox from "@/components/checkBox/index.vue";
|
||||
import PageTitle from "@/components/aboutTable/PageTitle.vue";
|
||||
import { qcckGet } from "@/api/qcckApi.js";
|
||||
import { ref, reactive, onMounted, getCurrentInstance } from "vue";
|
||||
import MyTable from "@/components/aboutTable/MyTable.vue";
|
||||
import Pages from "@/components/aboutTable/Pages.vue";
|
||||
import Search from "@/components/aboutTable/Search.vue";
|
||||
import { qcckGet, qcckPost, qcckDelete } from "@/api/qcckApi.js";
|
||||
import { reactive, ref, onMounted, getCurrentInstance } from "vue";
|
||||
import FormMessage from "@/components/aboutTable/FormMessage.vue";
|
||||
import { qcckPost } from "@/api/qcckApi.js";
|
||||
const { proxy } = getCurrentInstance();
|
||||
const { D_GS_RQFJ_LX } = proxy.$dict("D_GS_RQFJ_LX"); //获取字典数据
|
||||
const searchConfiger = ref([
|
||||
{
|
||||
label: "管辖部门",
|
||||
prop: "department",
|
||||
placeholder: "请选择管辖部门",
|
||||
showType: "select"
|
||||
},
|
||||
{ label: "是否关注", prop: "sfgz", showType: "defaultSlot" }
|
||||
]);
|
||||
const checkData = reactive({
|
||||
list: ["是", "否"],
|
||||
hasChoose: ["是", "否"]
|
||||
});
|
||||
const { D_GS_RQFJ_FXDJ, D_GS_RQFJ_FXLB } = proxy.$dict("D_GS_RQFJ_FXDJ","D_GS_RQFJ_FXLB"); //获取字典数据
|
||||
const pageData = reactive({
|
||||
tableData: [
|
||||
{ nrbh: "测试内容", lx: "1", nr: "测试内容" },
|
||||
{ nrbh: "测试内容", lx: "1", nr: "测试内容" }
|
||||
],
|
||||
tableData2: [
|
||||
{
|
||||
pm: "1",
|
||||
lx: "1",
|
||||
zp: "xx",
|
||||
xm: "张三",
|
||||
sfzh: "12345619900101001X",
|
||||
jzdz: "浙江省杭州市西湖区",
|
||||
rylb: "xx",
|
||||
bkyy: "xx",
|
||||
fxdj: "xx",
|
||||
fxjf: "xx",
|
||||
mxbq: "xx",
|
||||
sfgz: "是"
|
||||
tpzy: "GBJD01",
|
||||
dwmc: "工布江达重点人",
|
||||
zylyxz: "涉稳",
|
||||
cjhx: "系统新增",
|
||||
ytp: "低级",
|
||||
rxxsd: "2025/05/05"
|
||||
},
|
||||
{
|
||||
tpzy: "GBJD01",
|
||||
dwmc: "工布江达重点人",
|
||||
zylyxz: "涉稳",
|
||||
cjhx: "系统新增",
|
||||
ytp: "低级",
|
||||
rxxsd: "2025/05/05"
|
||||
},
|
||||
{
|
||||
tpzy: "GBJD01",
|
||||
dwmc: "工布江达重点人",
|
||||
zylyxz: "涉稳",
|
||||
cjhx: "系统新增",
|
||||
ytp: "低级",
|
||||
rxxsd: "2025/05/05"
|
||||
},
|
||||
{
|
||||
tpzy: "GBJD01",
|
||||
dwmc: "工布江达重点人",
|
||||
zylyxz: "涉稳",
|
||||
cjhx: "系统新增",
|
||||
ytp: "低级",
|
||||
rxxsd: "2025/05/05"
|
||||
},
|
||||
{
|
||||
tpzy: "GBJD01",
|
||||
dwmc: "工布江达重点人",
|
||||
zylyxz: "涉稳",
|
||||
cjhx: "系统新增",
|
||||
ytp: "低级",
|
||||
rxxsd: "2025/05/05"
|
||||
}
|
||||
],
|
||||
tableDataPeople: [],
|
||||
keyCount: 0,
|
||||
tableConfiger: {
|
||||
rowHieght: 61,
|
||||
showSelectType: "checkBox",
|
||||
loading: false
|
||||
},
|
||||
tableConfiger2: {
|
||||
tableConfiger1: {
|
||||
rowHieght: 61,
|
||||
showSelectType: "checkBox",
|
||||
showSelectType: "null",
|
||||
loading: false,
|
||||
showIndex: false
|
||||
haveControls:false
|
||||
},
|
||||
tableHeight: 230,
|
||||
total: 0,
|
||||
pageConfiger: {
|
||||
pageSize: 20,
|
||||
pageCurrent: 1
|
||||
},
|
||||
controlsWidth: 120,
|
||||
controlsWidth2: 220,
|
||||
controlsWidth: 220,
|
||||
tableColumn: [
|
||||
{ label: "发掘类型", prop: "fjLx", showSolt: true },
|
||||
{ label: "发掘文本 ", prop: "fjWb" }
|
||||
{ label: "图片资源", prop: "tpzy" },
|
||||
{ label: "单位名称", prop: "dwmc" },
|
||||
{ label: "资源来源详址", prop: "zylyxz" },
|
||||
{ label: "采集画像", prop: "cjhx", showSolt: true },
|
||||
{ label: "原图片", prop: "ytp", showSolt: true },
|
||||
{ label: "人像相似度", prop: "rxxsd" }
|
||||
],
|
||||
tableColumn2: [
|
||||
{ label: "姓名", prop: "ryXm" },
|
||||
{ label: "英文姓名", prop: "ryXmYw" },
|
||||
{ label: "别名", prop: "ryBm" },
|
||||
{ label: "网名", prop: "ryWm" },
|
||||
{ label: "绰号", prop: "ryCh" },
|
||||
{ label: "手机号码", prop: "rySjhm" },
|
||||
{ label: "身份证号码", prop: "rySfzh" },
|
||||
{ label: "户籍地址", prop: "ryHjdz" },
|
||||
{ label: "护照号码", prop: "ryHzhm" },
|
||||
{ label: "现住地址", prop: "ryXzdz" },
|
||||
{ label: "银行卡号", prop: "ryYhkh" },
|
||||
{ label: "附件照片", prop: "ryFjZp" },
|
||||
{ label: "管辖单位", prop: "gxDwDm" },
|
||||
{ label: "风险等级", prop: "fxDj", showSolt: true },
|
||||
{ label: "风险类别", prop: "fxLb", showSolt: true },
|
||||
{ label: "是否关注", prop: "sfGz", showSolt: true },
|
||||
{ label: "是否转布控人员", prop: "sfZbkry", showSolt: true },
|
||||
{ label: "是否转重点人员", prop: "sfZzdry", showSolt: true }
|
||||
tableColumnPeople: [
|
||||
{ label: "姓名", prop: "ryXm",showOverflowTooltip:true ,showSolt: true},
|
||||
{ label: "户籍地址", prop: "ryHjdz" ,showOverflowTooltip:true},
|
||||
{ label: "护照号码", prop: "ryHzhm" ,showOverflowTooltip:true},
|
||||
{ label: "现住地址", prop: "ryXzdz" ,showOverflowTooltip:true},
|
||||
{ label: "附件照片", prop: "ryFjZp" ,showOverflowTooltip:true},
|
||||
{ label: "管辖单位", prop: "gxDwDm" ,showOverflowTooltip:true},
|
||||
{ label: "责任部门", prop: "ssbm",showOverflowTooltip:true},
|
||||
{ label: "风险等级", prop: "fxDj",showOverflowTooltip:true, showSolt: true },
|
||||
{ label: "风险类别", prop: "fxLb",showOverflowTooltip:true, showSolt: true },
|
||||
{ label: "处置方式", prop: "czfs",showOverflowTooltip:true, showSolt: true },
|
||||
]
|
||||
});
|
||||
const btns = reactive([
|
||||
{ label: "新增", type: "primary", icon: "CirclePlus" },
|
||||
{ label: "一件布控", type: "primary" },
|
||||
{ label: "级别变更", type: "primary" },
|
||||
{ label: "警种变更", type: "primary" },
|
||||
{ label: "指定分配", type: "primary" },
|
||||
{ label: "添加标签", type: "primary" },
|
||||
{ label: "协控申请", type: "primary" },
|
||||
{ label: "撤控申请", type: "primary" },
|
||||
{ label: "移交管控", type: "primary" },
|
||||
{ label: "批量导入", type: "primary" },
|
||||
{ label: "导出", type: "primary" },
|
||||
{ label: "批量删除", type: "danger", icon: "Delete" }
|
||||
]);
|
||||
const queryFrom = ref({});
|
||||
const searchBox = ref();
|
||||
|
||||
// 树形菜单数据
|
||||
const treeData = ref([
|
||||
const stepList = ref([
|
||||
{
|
||||
label: "林芝市公安局(200)",
|
||||
children: [
|
||||
{ label: "工布江达县公安局(100)" },
|
||||
{ label: "工布江达城区派出所(10)" },
|
||||
{ label: "某某某派出所(10)" },
|
||||
{ label: "某某某公安局(100)" }
|
||||
]
|
||||
time: "2025-4-25 16:40",
|
||||
sy: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高",
|
||||
sjly: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高",
|
||||
szdz: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高"
|
||||
},
|
||||
{
|
||||
time: "2025-4-25 16:40",
|
||||
sy: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高",
|
||||
sjly: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高",
|
||||
szdz: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高"
|
||||
},
|
||||
{
|
||||
time: "2025-4-25 16:40",
|
||||
sy: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高",
|
||||
sjly: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高",
|
||||
szdz: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高"
|
||||
},
|
||||
{
|
||||
time: "2025-4-25 16:40",
|
||||
sy: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高",
|
||||
sjly: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高",
|
||||
szdz: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高"
|
||||
},
|
||||
{
|
||||
time: "2025-4-25 16:40",
|
||||
sy: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高",
|
||||
sjly: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高",
|
||||
szdz: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高"
|
||||
},
|
||||
{
|
||||
time: "2025-4-25 16:40",
|
||||
sy: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高",
|
||||
sjly: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高",
|
||||
szdz: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高"
|
||||
},
|
||||
{
|
||||
time: "2025-4-25 16:40",
|
||||
sy: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高",
|
||||
sjly: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高",
|
||||
szdz: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高"
|
||||
},
|
||||
{
|
||||
time: "2025-4-25 16:40",
|
||||
sy: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高",
|
||||
sjly: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高",
|
||||
szdz: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高"
|
||||
},
|
||||
{
|
||||
time: "2025-4-25 16:40",
|
||||
sy: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高",
|
||||
sjly: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高",
|
||||
szdz: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高"
|
||||
},
|
||||
{
|
||||
time: "2025-4-25 16:40",
|
||||
sy: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高",
|
||||
sjly: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高",
|
||||
szdz: "乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高铁到站乘坐高"
|
||||
}
|
||||
]);
|
||||
const defaultProps = {
|
||||
children: "children",
|
||||
label: "label"
|
||||
};
|
||||
|
||||
// 搜索
|
||||
const onSearch = (val) => {
|
||||
queryFrom.value = { ...val };
|
||||
pageData.pageConfiger.pageCurrent = 1;
|
||||
getList();
|
||||
};
|
||||
|
||||
const changeNo = (val) => {
|
||||
pageData.pageConfiger.pageCurrent = val;
|
||||
getModelList();
|
||||
getList();
|
||||
};
|
||||
const changeSize = (val) => {
|
||||
pageData.pageConfiger.pageSize = val;
|
||||
getModelList();
|
||||
};
|
||||
// 获取内容列表
|
||||
const getList = (val) => {
|
||||
pageData.tableConfiger.loading = true;
|
||||
let data = { ...queryFrom.value };
|
||||
let url = "/mosty-gsxt/tbGsxtRqfjNr/selectPage";
|
||||
qcckGet(data, url)
|
||||
.then((res) => {
|
||||
pageData.tableData = res.records || [];
|
||||
pageData.tableConfiger.loading = false;
|
||||
})
|
||||
.catch(() => {
|
||||
pageData.tableConfiger.loading = false;
|
||||
});
|
||||
getList();
|
||||
};
|
||||
|
||||
|
||||
//获取模型识别列表
|
||||
const getModelList = (val) => {
|
||||
pageData.tableConfiger2.loading = true;
|
||||
const getList = () => {
|
||||
let data = { ...pageData.pageConfiger };
|
||||
let url = "/mosty-gsxt/tbGsxtRqfjRy/selectPage";
|
||||
qcckGet(data, url)
|
||||
.then((res) => {
|
||||
pageData.tableData2 = res.records || [];
|
||||
pageData.total2 = res.total;
|
||||
pageData.tableConfiger2.loading = false;
|
||||
})
|
||||
.catch(() => {
|
||||
pageData.tableConfiger2.loading = false;
|
||||
});
|
||||
};
|
||||
//删除操作
|
||||
const deleteRow = (row) => {
|
||||
qcckGet({}, "/mosty-gsxt/tbGsxtRqfjNr/closeById/" + row.id)
|
||||
.then((res) => {
|
||||
ElMessage.success("删除成功");
|
||||
getList();
|
||||
})
|
||||
.catch(() => {});
|
||||
};
|
||||
// 事件处理函数
|
||||
const handleNodeClick = (data) => {
|
||||
console.log(data);
|
||||
};
|
||||
|
||||
const deepIn = ref();
|
||||
// 处理深度研判
|
||||
const handleDeepIn = (id) => {
|
||||
deepIn.value.init(id);
|
||||
qcckGet(data, "/mosty-gsxt/tbGsxtRqfjRy/selectPage").then((res) => {
|
||||
pageData.tableDataPeople = res.records || [];
|
||||
pageData.total = res.total;
|
||||
})
|
||||
};
|
||||
|
||||
// 表格高度计算
|
||||
const tabHeightFn = () => {
|
||||
pageData.tableHeight2 =
|
||||
window.innerHeight - searchBox.value.offsetHeight - 690;
|
||||
pageData.tableHeight =( window.innerHeight - 280 ) / 2;
|
||||
pageData.tableHeight1 =(( window.innerHeight - 280 ) / 2 )- 50;
|
||||
window.onresize = function () {
|
||||
tabHeightFn();
|
||||
};
|
||||
};
|
||||
|
||||
onMounted(() => {
|
||||
getList();
|
||||
onMounted(()=>{
|
||||
tabHeightFn();
|
||||
getModelList();
|
||||
});
|
||||
getList()
|
||||
})
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.statistical-analysis {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
.left-menu {
|
||||
float: left;
|
||||
width: 280px;
|
||||
height: calc(100% - 20px);
|
||||
padding: 20px;
|
||||
margin-top: 20px;
|
||||
border-radius: 4px;
|
||||
background-color: #fff;
|
||||
border-right: 1px solid #e8e8e8;
|
||||
}
|
||||
.right-content {
|
||||
float: left;
|
||||
width: calc(100% - 452px);
|
||||
height: 100%;
|
||||
padding: 0 20px 0;
|
||||
margin-top: 20px;
|
||||
margin-left: 10px;
|
||||
border-radius: 4px;
|
||||
box-sizing: border-box;
|
||||
.tableCnt {
|
||||
height: calc((100vh - 253px) / 2);
|
||||
background: #fff;
|
||||
border-radius: 4px;
|
||||
padding: 10px 10px 0 10px ;
|
||||
box-sizing: border-box;
|
||||
overflow: hidden;
|
||||
.title {
|
||||
font-size: 20px;
|
||||
font-weight: 700;
|
||||
margin-bottom: 20px;
|
||||
position: relative;
|
||||
color: #333;
|
||||
&::after {
|
||||
content: "";
|
||||
position: absolute;
|
||||
bottom: -4px;
|
||||
left: 0;
|
||||
width: 78px;
|
||||
height: 4px;
|
||||
background: linear-gradient( 90deg, #3597f9c4 0%, rgba(53, 150, 249, 0) 100%);
|
||||
border-radius: 4px 4px 4px 4px;
|
||||
}
|
||||
}
|
||||
.left {
|
||||
width: calc(100% - 410px);
|
||||
height: 100%;
|
||||
float: left;
|
||||
}
|
||||
.right {
|
||||
width: 400px;
|
||||
height: 100%;
|
||||
padding: 10px 10px 0 10px;
|
||||
margin-left: 10px;
|
||||
float: right;
|
||||
box-sizing: border-box;
|
||||
background: #fff;
|
||||
.cntBox{
|
||||
height: calc(100% - 60px);
|
||||
overflow: hidden;
|
||||
overflow-y: auto;
|
||||
.step {
|
||||
padding-left: 20px;
|
||||
box-sizing: border-box;
|
||||
position: relative;
|
||||
border-left: 3px dashed #0072ff;
|
||||
margin-left: 10px;
|
||||
&::before{
|
||||
position: absolute;
|
||||
content: '';
|
||||
width: 20px;
|
||||
height: 20px;
|
||||
background: #0072ff;
|
||||
border-radius: 50%;
|
||||
left: -12px;
|
||||
top: 0;
|
||||
}
|
||||
.desc {
|
||||
margin: 5px;
|
||||
color: #929090;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.form-row {
|
||||
display: flex;
|
||||
|
||||
.el-form-item {
|
||||
flex: 1;
|
||||
}
|
||||
}
|
||||
|
||||
.upload-group {
|
||||
display: flex;
|
||||
// gap: 20px;
|
||||
|
||||
.el-form-item {
|
||||
flex: 1;
|
||||
}
|
||||
}
|
||||
|
||||
.unit {
|
||||
margin-left: 5px;
|
||||
}
|
||||
::v-deep .el-input__inner {
|
||||
height: 36px !important;
|
||||
line-height: 36px !important;
|
||||
border-radius: 0;
|
||||
color: #777575;
|
||||
}
|
||||
}
|
||||
.el-form-item--default {
|
||||
margin-bottom: 0px;
|
||||
}
|
||||
</style>
|
||||
|
Reference in New Issue
Block a user