lcw
This commit is contained in:
@ -76,6 +76,11 @@ export const publicRoutes = [
|
|||||||
name: "clueVerification",
|
name: "clueVerification",
|
||||||
component: () => import("@/views/backOfficeSystem/ApprovalInformation/Clue/index.vue"),
|
component: () => import("@/views/backOfficeSystem/ApprovalInformation/Clue/index.vue"),
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
path: "/ReviewListSH",
|
||||||
|
name: "ReviewListSH",
|
||||||
|
component: () => import("@/views/backOfficeSystem/JudgmentHome/ReviewList/detail.vue"),
|
||||||
|
},
|
||||||
// 重点人发掘
|
// 重点人发掘
|
||||||
{
|
{
|
||||||
path: "/focusExploration",
|
path: "/focusExploration",
|
||||||
@ -518,6 +523,15 @@ export const publicRoutes = [
|
|||||||
icon: "article-create"
|
icon: "article-create"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
path: "/ReviewList",
|
||||||
|
name: "ReviewList",
|
||||||
|
component: () => import("@/views/backOfficeSystem/JudgmentHome/ReviewList/index.vue"),
|
||||||
|
meta: {
|
||||||
|
title: "审核列表",
|
||||||
|
icon: "article-create"
|
||||||
|
}
|
||||||
|
},
|
||||||
{
|
{
|
||||||
path: "/judgmentCommand",
|
path: "/judgmentCommand",
|
||||||
name: "judgmentCommand",
|
name: "judgmentCommand",
|
||||||
@ -588,7 +602,7 @@ export const publicRoutes = [
|
|||||||
name: "gzPeo",
|
name: "gzPeo",
|
||||||
component: () => import("@/views/backOfficeSystem/DeploymentDisposal/gzPeo/index"),
|
component: () => import("@/views/backOfficeSystem/DeploymentDisposal/gzPeo/index"),
|
||||||
meta: {
|
meta: {
|
||||||
title: "关注库",
|
title: "关注人员库",
|
||||||
icon: "article-create"
|
icon: "article-create"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -1146,6 +1160,7 @@ export const publicRoutes = [
|
|||||||
icon: "article-create"
|
icon: "article-create"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
path: "/strategicResearch",
|
path: "/strategicResearch",
|
||||||
name: "strategicResearch",
|
name: "strategicResearch",
|
||||||
|
|||||||
@ -36,14 +36,10 @@
|
|||||||
<div class="grid-item flex just-between" style="" v-for="(item, index) in srcList" :key="index">
|
<div class="grid-item flex just-between" style="" v-for="(item, index) in srcList" :key="index">
|
||||||
<div class="names">{{ item.name }}</div>
|
<div class="names">{{ item.name }}</div>
|
||||||
<div class="icon"><a :href="setAddress(item.id)" download><el-icon><Download /></el-icon></a></div>
|
<div class="icon"><a :href="setAddress(item.id)" download><el-icon><Download /></el-icon></a></div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</el-card>
|
</el-card>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup>
|
<script setup>
|
||||||
@ -116,7 +112,6 @@ const route = useRoute()
|
|||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
const id = route.query.id
|
const id = route.query.id
|
||||||
getDataById(id)
|
getDataById(id)
|
||||||
|
|
||||||
})
|
})
|
||||||
// const onSubmit = async (val) => {
|
// const onSubmit = async (val) => {
|
||||||
// const data = []
|
// const data = []
|
||||||
|
|||||||
@ -65,7 +65,7 @@
|
|||||||
<DictTag :tag="false" :value="row.zdrRyjb" :options="D_GS_ZDR_RYJB" />
|
<DictTag :tag="false" :value="row.zdrRyjb" :options="D_GS_ZDR_RYJB" />
|
||||||
</template>
|
</template>
|
||||||
<template #zdrBkZt="{ row }">
|
<template #zdrBkZt="{ row }">
|
||||||
<DictTag :tag="false" :value="row.zdrBkZt" :options="D_GS_ZDR_BK_ZT" />
|
<DictTag :tag="false" :value="row.zdrBkZt" :options="D_ZDRGK_GKZT" />
|
||||||
</template>
|
</template>
|
||||||
<template #zdrCzzt="{ row }">
|
<template #zdrCzzt="{ row }">
|
||||||
<DictTag :tag="false" :value="row.zdrCzzt" :options="D_GS_ZDR_CZZT" />
|
<DictTag :tag="false" :value="row.zdrCzzt" :options="D_GS_ZDR_CZZT" />
|
||||||
@ -120,8 +120,8 @@ import { useRouter, useRoute } from 'vue-router'
|
|||||||
const router = useRouter()
|
const router = useRouter()
|
||||||
const route = useRoute()
|
const route = useRoute()
|
||||||
const { proxy } = getCurrentInstance();
|
const { proxy } = getCurrentInstance();
|
||||||
const { D_GS_ZDQT_ZT, D_GS_ZDR_RYJB, D_BZ_XB, D_BZ_MZ, D_BZ_XZQHDM, D_GS_ZDR_BK_ZT, D_GS_ZDR_CZZT, D_GS_BQ_ZL, D_GS_BQ_LB, D_GS_BQ_LX, D_GS_ZDR_YJDJ, D_GS_BK_SSJZ, D_GS_BK_SQLX, D_BZ_SF, D_GS_XS_LY, D_BZ_SSZT, D_GS_XS_LX, D_GS_XS_QTLX } =
|
const { D_ZDRGK_GKZT,D_GS_ZDQT_ZT, D_GS_ZDR_RYJB, D_BZ_XB, D_BZ_MZ, D_BZ_XZQHDM, D_GS_ZDR_BK_ZT, D_GS_ZDR_CZZT, D_GS_BQ_ZL, D_GS_BQ_LB, D_GS_BQ_LX, D_GS_ZDR_YJDJ, D_GS_BK_SSJZ, D_GS_BK_SQLX, D_BZ_SF, D_GS_XS_LY, D_BZ_SSZT, D_GS_XS_LX, D_GS_XS_QTLX } =
|
||||||
proxy.$dict("D_GS_ZDQT_ZT", "D_GS_ZDR_RYJB", "D_BZ_XB", "D_BZ_MZ", "D_BZ_XZQHDM", "D_GS_ZDR_BK_ZT", "D_GS_ZDR_CZZT", "D_GS_BQ_ZL", "D_GS_BQ_LB", "D_GS_BQ_LX", "D_GS_ZDR_YJDJ", "D_GS_BK_SSJZ", "D_GS_BK_SQLX", "D_BZ_SF", "D_GS_XS_LY", "D_BZ_SSZT", "D_GS_XS_LX", "D_GS_XS_QTLX");
|
proxy.$dict('D_ZDRGK_GKZT',"D_GS_ZDQT_ZT", "D_GS_ZDR_RYJB", "D_BZ_XB", "D_BZ_MZ", "D_BZ_XZQHDM", "D_GS_ZDR_BK_ZT", "D_GS_ZDR_CZZT", "D_GS_BQ_ZL", "D_GS_BQ_LB", "D_GS_BQ_LX", "D_GS_ZDR_YJDJ", "D_GS_BK_SSJZ", "D_GS_BK_SQLX", "D_BZ_SF", "D_GS_XS_LY", "D_BZ_SSZT", "D_GS_XS_LX", "D_GS_XS_QTLX");
|
||||||
const obj = ref({});
|
const obj = ref({});
|
||||||
const showzxs = ref(false);
|
const showzxs = ref(false);
|
||||||
const zxsDilof = ref();
|
const zxsDilof = ref();
|
||||||
@ -176,22 +176,16 @@ const pageData = reactive({
|
|||||||
},
|
},
|
||||||
controlsWidth: 250,
|
controlsWidth: 250,
|
||||||
tableColumn: [
|
tableColumn: [
|
||||||
{ label: "姓名", prop: "ryXm", width: 150 },
|
{ label: "姓名", prop: "ryXm",width: 100 },
|
||||||
{ label: "性别", prop: "ryXb", showSolt: true, width: 100 },
|
{ label: "性别", prop: "ryXb", showSolt: true, width: 80 },
|
||||||
{ label: "籍贯", prop: "ryJg", showSolt: true, width: 100 },
|
{ label: "身份证", prop: "rySfzh", width: 170 },
|
||||||
{ label: "身份证", prop: "rySfzh", width: 200 },
|
{ label: "民族", prop: "ryMz", showSolt: true, width: 80 },
|
||||||
{ label: "民族", prop: "ryMz", showSolt: true, width: 100 },
|
{ label: "户籍派出所", prop: "hjdPcsmc" },
|
||||||
{ label: "户籍地区划", prop: "hjdQh", showSolt: true, width: 150 },
|
{ label: "标签", prop: "bqList", showSolt: true, showOverflowTooltip: true },
|
||||||
{ label: "户籍派出所", prop: "hjdPcsmc", width: 200 },
|
{ label: "管辖单位", prop: "gxSsbmmc" },
|
||||||
{ label: "户籍地详址", prop: "hjdXz", width: 200 },
|
{ label: "管控状态", prop: "zdrBkZt", showOverflowTooltip: true,showSolt: true, width: 100 },
|
||||||
{ label: "标签", prop: "bqList", showSolt: true, width: 400, showOverflowTooltip: true },
|
{ label: "审核状态", prop: "zdrZt", showSolt: true, width: 100 },
|
||||||
{ label: "管辖单位", prop: "gxSsbmmc", width: 200 },
|
{ label: "入库时间", prop: "zdrRkkssj", },
|
||||||
{ label: "人员级别", prop: "zdrRyjb", showSolt: true, width: 130 },
|
|
||||||
{ label: "管控原因", prop: "zdrLkyy", width: 200, showOverflowTooltip: true },
|
|
||||||
{ label: "管控状态", prop: "zdrBkZt", width: 200, showOverflowTooltip: true },
|
|
||||||
{ label: "处置状态", prop: "zdrCzzt", showSolt: true },
|
|
||||||
{ label: "审核状态", prop: "zdrZt", showSolt: true },
|
|
||||||
{ label: "状态", prop: "xtSjzt", showSolt: true },
|
|
||||||
]
|
]
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
@ -65,7 +65,7 @@
|
|||||||
<DictTag :tag="false" :value="row.zdrRyjb" :options="D_GS_ZDR_RYJB" />
|
<DictTag :tag="false" :value="row.zdrRyjb" :options="D_GS_ZDR_RYJB" />
|
||||||
</template>
|
</template>
|
||||||
<template #zdrBkZt="{ row }">
|
<template #zdrBkZt="{ row }">
|
||||||
<DictTag :tag="false" :value="row.zdrBkZt" :options="D_GS_ZDR_BK_ZT" />
|
<DictTag :tag="false" :value="row.zdrBkZt" :options="D_ZDRGK_GKZT" />
|
||||||
</template>
|
</template>
|
||||||
<template #zdrCzzt="{ row }">
|
<template #zdrCzzt="{ row }">
|
||||||
<DictTag :tag="false" :value="row.zdrCzzt" :options="D_GS_ZDR_CZZT" />
|
<DictTag :tag="false" :value="row.zdrCzzt" :options="D_GS_ZDR_CZZT" />
|
||||||
@ -96,7 +96,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<!-- 详情 -->
|
<!-- 详情 -->
|
||||||
<AddForm ref="addFormDiloag" @updateDate="getList"
|
<AddForm ref="addFormDiloag" @updateDate="getList"
|
||||||
:dic="{ D_GS_ZDR_RYJB, D_BZ_XB, D_BZ_MZ, D_BZ_XZQHDM, D_GS_ZDR_BK_ZT, D_GS_ZDR_CZZT, D_GS_BQ_ZL, D_GS_BQ_LB, D_GS_BQ_LX, D_GS_ZDR_YJDJ, D_GS_BK_SSJZ }" />
|
:dic="{ D_GS_ZDR_RYJB, D_BZ_XB, D_BZ_MZ, D_BZ_XZQHDM, D_ZDRGK_GKZT, D_GS_ZDR_CZZT, D_GS_BQ_ZL, D_GS_BQ_LB, D_GS_BQ_LX, D_GS_ZDR_YJDJ, D_GS_BK_SSJZ }" />
|
||||||
<!-- 选择用户 -->
|
<!-- 选择用户 -->
|
||||||
<ChooseUser v-model="chooseUserVisible" @choosedUsers="handleUserSelected" :roleIds="roleIds" />
|
<ChooseUser v-model="chooseUserVisible" @choosedUsers="handleUserSelected" :roleIds="roleIds" />
|
||||||
<!-- 转线索 -->
|
<!-- 转线索 -->
|
||||||
@ -120,8 +120,8 @@ import { useRouter, useRoute } from 'vue-router'
|
|||||||
const router = useRouter()
|
const router = useRouter()
|
||||||
const route = useRoute()
|
const route = useRoute()
|
||||||
const { proxy } = getCurrentInstance();
|
const { proxy } = getCurrentInstance();
|
||||||
const { D_GS_ZDQT_ZT, D_GS_ZDR_RYJB, D_BZ_XB, D_BZ_MZ, D_BZ_XZQHDM, D_GS_ZDR_BK_ZT, D_GS_ZDR_CZZT, D_GS_BQ_ZL, D_GS_BQ_LB, D_GS_BQ_LX, D_GS_ZDR_YJDJ, D_GS_BK_SSJZ, D_GS_BK_SQLX, D_BZ_SF, D_GS_XS_LY, D_BZ_SSZT, D_GS_XS_LX, D_GS_XS_QTLX } =
|
const { D_GS_ZDQT_ZT, D_GS_ZDR_RYJB, D_BZ_XB, D_BZ_MZ, D_BZ_XZQHDM, D_ZDRGK_GKZT, D_GS_ZDR_CZZT, D_GS_BQ_ZL, D_GS_BQ_LB, D_GS_BQ_LX, D_GS_ZDR_YJDJ, D_GS_BK_SSJZ, D_GS_BK_SQLX, D_BZ_SF, D_GS_XS_LY, D_BZ_SSZT, D_GS_XS_LX, D_GS_XS_QTLX } =
|
||||||
proxy.$dict("D_GS_ZDQT_ZT", "D_GS_ZDR_RYJB", "D_BZ_XB", "D_BZ_MZ", "D_BZ_XZQHDM", "D_GS_ZDR_BK_ZT", "D_GS_ZDR_CZZT", "D_GS_BQ_ZL", "D_GS_BQ_LB", "D_GS_BQ_LX", "D_GS_ZDR_YJDJ", "D_GS_BK_SSJZ", "D_GS_BK_SQLX", "D_BZ_SF", "D_GS_XS_LY", "D_BZ_SSZT", "D_GS_XS_LX", "D_GS_XS_QTLX");
|
proxy.$dict("D_GS_ZDQT_ZT", "D_GS_ZDR_RYJB", "D_BZ_XB", "D_BZ_MZ", "D_BZ_XZQHDM", "D_ZDRGK_GKZT", "D_GS_ZDR_CZZT", "D_GS_BQ_ZL", "D_GS_BQ_LB", "D_GS_BQ_LX", "D_GS_ZDR_YJDJ", "D_GS_BK_SSJZ", "D_GS_BK_SQLX", "D_BZ_SF", "D_GS_XS_LY", "D_BZ_SSZT", "D_GS_XS_LX", "D_GS_XS_QTLX");
|
||||||
const obj = ref({});
|
const obj = ref({});
|
||||||
const showzxs = ref(false);
|
const showzxs = ref(false);
|
||||||
const zxsDilof = ref();
|
const zxsDilof = ref();
|
||||||
@ -176,22 +176,16 @@ const pageData = reactive({
|
|||||||
},
|
},
|
||||||
controlsWidth: 250,
|
controlsWidth: 250,
|
||||||
tableColumn: [
|
tableColumn: [
|
||||||
{ label: "姓名", prop: "ryXm", width: 150 },
|
{ label: "姓名", prop: "ryXm",width: 100 },
|
||||||
{ label: "性别", prop: "ryXb", showSolt: true, width: 100 },
|
{ label: "性别", prop: "ryXb", showSolt: true, width: 80 },
|
||||||
{ label: "籍贯", prop: "ryJg", showSolt: true, width: 100 },
|
{ label: "身份证", prop: "rySfzh", width: 170 },
|
||||||
{ label: "身份证", prop: "rySfzh", width: 200 },
|
{ label: "民族", prop: "ryMz", showSolt: true, width: 80 },
|
||||||
{ label: "民族", prop: "ryMz", showSolt: true, width: 100 },
|
{ label: "户籍派出所", prop: "hjdPcsmc" },
|
||||||
{ label: "户籍地区划", prop: "hjdQh", showSolt: true, width: 150 },
|
{ label: "标签", prop: "bqList", showSolt: true, showOverflowTooltip: true },
|
||||||
{ label: "户籍派出所", prop: "hjdPcsmc", width: 200 },
|
{ label: "管辖单位", prop: "gxSsbmmc" },
|
||||||
{ label: "户籍地详址", prop: "hjdXz", width: 200 },
|
{ label: "管控状态", prop: "zdrBkZt", showOverflowTooltip: true,showSolt: true, width: 100 },
|
||||||
{ label: "标签", prop: "bqList", showSolt: true, width: 400, showOverflowTooltip: true },
|
{ label: "审核状态", prop: "zdrZt", showSolt: true, width: 100 },
|
||||||
{ label: "管辖单位", prop: "gxSsbmmc", width: 200 },
|
{ label: "入库时间", prop: "zdrRkkssj", },
|
||||||
{ label: "人员级别", prop: "zdrRyjb", showSolt: true, width: 130 },
|
|
||||||
{ label: "管控原因", prop: "zdrLkyy", width: 200, showOverflowTooltip: true },
|
|
||||||
{ label: "管控状态", prop: "zdrBkZt", width: 200, showOverflowTooltip: true },
|
|
||||||
{ label: "处置状态", prop: "zdrCzzt", showSolt: true },
|
|
||||||
{ label: "审核状态", prop: "zdrZt", showSolt: true },
|
|
||||||
{ label: "状态", prop: "xtSjzt", showSolt: true },
|
|
||||||
]
|
]
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
@ -1,645 +1,40 @@
|
|||||||
<template>
|
<template>
|
||||||
<div>
|
<div>
|
||||||
<!-- 搜索 -->
|
<PageTitle :malginLeft="10" :height="35" backgroundColor="#ffff" :marginBottom="5" :marginTop="5">
|
||||||
<div ref="searchBox" class="mt10">
|
<template #left>
|
||||||
<Searchs :searchArr="searchConfiger" @submit="onSearch" :key="pageData.keyCount" />
|
<el-button size="small" v-for="el in tabBtn" :type="tabActive==el?'primary':''" @click="tabActive=el" :key="el">{{ el }}</el-button>
|
||||||
</div>
|
|
||||||
<PageTitle :malginLeft="10" :height="35" backgroundColor="#ffff" :marginBottom="5" :marginTop="5">
|
|
||||||
<template #left>
|
|
||||||
<el-button type="primary" @click="addEdit('add')" size="small">
|
|
||||||
<el-icon class="vertical-middle">
|
|
||||||
<CirclePlus />
|
|
||||||
</el-icon>
|
|
||||||
<span class="vertical-middle">新增</span>
|
|
||||||
</el-button>
|
|
||||||
<el-button type="primary" @click="dologCancel()" size="small">
|
|
||||||
<el-icon class="vertical-middle">
|
|
||||||
<CirclePlus />
|
|
||||||
</el-icon>
|
|
||||||
<span class="vertical-middle">导出</span>
|
|
||||||
</el-button>
|
|
||||||
<el-button type="primary" :disabled="ids.length === 0" @click="handleSumbit(ids)" v-if="qxkz.deptLevel != '01'"
|
|
||||||
size="small">
|
|
||||||
<el-icon class="vertical-middle">
|
|
||||||
<CirclePlus />
|
|
||||||
</el-icon>
|
|
||||||
<span class="vertical-middle">上报</span>
|
|
||||||
</el-button>
|
|
||||||
<el-button type="primary" :disabled="ids.length === 0" @click="delDictItem(ids)" size="small">
|
|
||||||
<el-icon class="vertical-middle">
|
|
||||||
<CirclePlus />
|
|
||||||
</el-icon>
|
|
||||||
<span class="vertical-middle">删除</span>
|
|
||||||
</el-button></template>
|
|
||||||
</PageTitle>
|
|
||||||
<!-- 表格 -->
|
|
||||||
<div class="tabBox" :style="{ height: (pageData.tableHeight + 40) + 'px' }">
|
|
||||||
<MyTable :tableData="pageData.tableData" :tableColumn="pageData.tableColumn" :tableHeight="pageData.tableHeight"
|
|
||||||
:key="pageData.keyCount" :tableConfiger="pageData.tableConfiger" :controlsWidth="pageData.controlsWidth"
|
|
||||||
@chooseData="chooseData" @handleCellClick="openXxqk">
|
|
||||||
<template #qblx="{ row }">
|
|
||||||
<DictTag :tag="false" :value="row.qblx" :options="D_GS_XS_LX" />
|
|
||||||
</template>
|
</template>
|
||||||
<template #qbly="{ row }">
|
</PageTitle>
|
||||||
<DictTag :tag="false" :value="row.qbly" :options="D_BZ_CJLX" />
|
<Infomation v-if="tabActive=='信息采集'" />
|
||||||
</template>
|
<FQXX v-else-if="tabActive=='蜂群信息'" />
|
||||||
<template #czzt="{ row }">
|
|
||||||
<DictTag :tag="false" :value="row.czzt" :options="D_BZ_QBCZZT" />
|
|
||||||
</template>
|
|
||||||
<template #lczt="{ row }">
|
|
||||||
<DictTag :tag="false" :value="row.lczt" :options="D_BZ_LCZT" />
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<template #cyqk="{ row }">
|
|
||||||
<el-link v-if="isShowBtn('采纳')" size="small" type="danger" @click="cnMsg(row)"
|
|
||||||
:disabled="butcontroll('04', row.lczt)">采纳</el-link>
|
|
||||||
<!-- 只有上报状态才能回退 -->
|
|
||||||
<el-link v-if="isShowBtn('回退')" size="small" type="danger" @click="rollbackNewspapers(row)"
|
|
||||||
:disabled="butcontroll('04', row.lczt)">回退</el-link>
|
|
||||||
</template>
|
|
||||||
<!-- 操作 -->
|
|
||||||
<!-- "市情指挥人员": ["采纳", "回退", "分组", "转线索", "转合成", "转会商", "打标签", "修改", "详情", "关注部门", "送审"], -->
|
|
||||||
<!-- "县情指人员": ["上报", "回退", "修改", "详情", "送审"], -->
|
|
||||||
<template #controls="{ row }">
|
|
||||||
<el-link v-if="isShowBtn('送审', row) && qxkz.deptLevel == '01'" :disabled="row.sldshzt != '00'||row.lczt == '04'" size="small"
|
|
||||||
type="primary" @click="postXxcjXxcjTjsh(row)">送审</el-link>
|
|
||||||
<el-link v-if="isShowBtn('送审', row) && qxkz.deptLevel == '02'" :disabled="row.xldshzt != '00'||row.lczt == '04'" size="small"
|
|
||||||
type="primary" @click="postXxcjXxcjTjsh(row)">送审</el-link>
|
|
||||||
<!-- (01 提交 02 上报县局 03 上班市局 04 采纳 05 退回 06 打标签 07 转合成 08 转线索 09 转会商)v-if="qxkz.deptLevel == '01'" -->
|
|
||||||
<!-- 在提交和退回得状态才能进行上报 -->
|
|
||||||
<el-link v-if="isShowBtn('上报')" size="small" type="primary" @click="appearNewspapers(row)"
|
|
||||||
:disabled="row.xldshzt != '02'||(row.lczt != '02'||row.lczt != '03')">上报</el-link>
|
|
||||||
<el-link v-if="isShowBtn('分组')" size="small" type="primary" @click="opneMsg(row)"
|
|
||||||
:disabled="row.sldshzt != '02'">分组</el-link>
|
|
||||||
<!-- 只有领导有肯定 -->
|
|
||||||
<!-- <el-link v-if="isShowBtn('肯定')" size="small" type="primary" @click="affirm(row)">肯定</el-link> -->
|
|
||||||
<el-link v-if="isShowBtn('删除')" size="small" type="primary" @clic.stopk="delDictItem(row.id)">删除</el-link>
|
|
||||||
<el-link v-if="isShowBtn('修改', row)" size="small" type="primary" @click="addEdit('edit', row)">修改</el-link>
|
|
||||||
<el-link v-if="isShowBtn('续报', row)" size="small" type="primary" @click="addEdit('followUpReport', row)">续报</el-link>
|
|
||||||
|
|
||||||
<el-link v-if="isShowBtn('详情')" size="small" type="primary" @click="addEdit('info', row)">详情</el-link>
|
|
||||||
<!-- 所有状态都能进行转线索 -->
|
|
||||||
<el-link v-if="isShowBtn('转线索')" size="small" type="primary" @click="FollowUpOnLeads(row)"
|
|
||||||
:disabled="row.sldshzt != '02' ">转线索</el-link>
|
|
||||||
<!-- 所有状态都能进行转合成 -->
|
|
||||||
<!-- <el-link v-if="isShowBtn('转合成')" size="small" type="primary" @click="openFkDialogszl(row)"
|
|
||||||
:disabled="butcontroll('01', row.lczt)">转合成</el-link> -->
|
|
||||||
<!-- 所有状态都能进行转会商 -->
|
|
||||||
<!-- <el-link v-if="isShowBtn('转会商')" size="small" type="primary" @click="handleTransferMerchant(row)"
|
|
||||||
:disabled="butcontroll('01', row.lczt)">转会商</el-link> -->
|
|
||||||
|
|
||||||
<el-link v-if="isShowBtn('关注部门')" :disabled="row.sldshzt != '02'" size="small" type="primary" @click="FollowUpOnDept(row)">关注</el-link>
|
|
||||||
<!-- 市局能给所有数据创建标签 -->
|
|
||||||
<el-link v-if="isShowBtn('打标签')" size="small" type="primary" @click="openCustomTag(row)"
|
|
||||||
:disabled="row.sldshzt != '02' ">打标签</el-link>
|
|
||||||
</template>
|
|
||||||
</MyTable>
|
|
||||||
<Pages @changeNo="changeNo" @changeSize="changeSize" :tableHeight="pageData.tableHeight" :pageConfiger="{
|
|
||||||
...pageData.pageConfiger,
|
|
||||||
total: pageData.total
|
|
||||||
}"></Pages>
|
|
||||||
</div>
|
|
||||||
<!-- 新增 -->
|
|
||||||
<AddForm ref="detailDiloag" @getList="getList" :titleData="titleData" :dict="{ D_BZ_LCZT, D_BZ_SSSHZT }" />
|
|
||||||
</div>
|
</div>
|
||||||
<ExportFile v-model="exportFileModel" :tableColumn="tableColumn" :dict="{ D_GS_XS_LY, D_GS_XS_LX, D_GS_XS_LX }"
|
|
||||||
:dataModel="pageData.tableData" />
|
|
||||||
<MakeTag v-model="chooseRow" :dataList="dataList" :dict="{ D_BZ_CJLX, D_BZ_QBCZZT, D_GS_XS_LX, D_BZ_BQJB }"
|
|
||||||
@getList="getList" />
|
|
||||||
<Fszl v-model="fszlShow" path="/xxcj/sendFqzl" :itemData="dataList" />
|
|
||||||
<CustomTag v-model="customTagShow" :dataList="dataList" @getList="getList" :dict="{ D_XXCJ_BQLX }" />
|
|
||||||
<Configuration v-model="configurationShow" :dataList="dataList" @getList="getList" />
|
|
||||||
|
|
||||||
<!-- 转会商 -->
|
|
||||||
<transferMerchant v-if="isShowTransferMerchantTc" :row="currRow" ref="transferMerchantRef" title="转会商"
|
|
||||||
@close="isShowTransferMerchantTc = false" @ok="getList" />
|
|
||||||
|
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup>
|
<script setup>
|
||||||
import PageTitle from "@/components/aboutTable/PageTitle.vue";
|
import PageTitle from "@/components/aboutTable/PageTitle.vue";
|
||||||
import MyTable from "@/components/aboutTable/MyTable.vue";
|
import Infomation from "./infomation.vue";
|
||||||
import Pages from "@/components/aboutTable/Pages.vue";
|
import FQXX from "@/views/backOfficeSystem/InformationReporting/index.vue";
|
||||||
import Searchs from "@/components/aboutTable/Search.vue";
|
|
||||||
import AddForm from "./components/addForm.vue";
|
|
||||||
import { useRouter, useRoute } from 'vue-router'
|
|
||||||
import { qbcjSelectQbsbPage, qbcjDeletes, qbcjCzzt, qbcjPlsb } from "@/api/Intelligence.js";
|
|
||||||
import { xxcjSelectXxsbPage, xxcjDeletes, xxcjXxzsx, xxcjUpdateCzlc, xxcjXxqd, xxcjXxcjTjsh } from '@/api/xxcj.js'
|
|
||||||
import { reactive, ref, onMounted, getCurrentInstance, nextTick } from "vue";
|
import { reactive, ref, onMounted, getCurrentInstance, nextTick } from "vue";
|
||||||
import MakeTag from '../components/maketag.vue'
|
|
||||||
import ExportFile from './components/exportFile.vue'
|
|
||||||
import { ElMessageBox } from 'element-plus'
|
|
||||||
import { getItem } from '@//utils/storage.js'
|
|
||||||
import Fszl from '@/views/backOfficeSystem/HumanIntelligence/components/fszl.vue'
|
|
||||||
import CustomTag from '../components/customTag.vue'
|
|
||||||
import Configuration from '../components/configuration.vue'
|
|
||||||
import transferMerchant from "./components/transferMerchant.vue";
|
|
||||||
import { isShiQingZhi } from "@/utils/auth.js"
|
|
||||||
|
|
||||||
const { proxy } = getCurrentInstance();
|
const { proxy } = getCurrentInstance();
|
||||||
const { D_GS_XS_LY, D_BZ_SSSHZT, D_BZ_SSZT, D_BZ_SF, D_GS_XS_LX, D_BZ_BQJB,
|
const tabBtn=ref(["信息采集","蜂群信息"])
|
||||||
D_GS_XS_QTLX, D_GS_ZDQT_LB,
|
const tabActive=ref('信息采集')
|
||||||
D_BZ_BMJB, D_BZ_CLPP, D_BZ_CLYS, D_BZ_CLLX, D_BZ_XZQHDM, D_BZ_QBCZZT, D_BZ_CJLX, D_BZ_LCZT,
|
|
||||||
D_XXCJ_BQLX } =
|
|
||||||
proxy.$dict("D_BZ_BMJB", "D_GS_XS_LY", 'D_BZ_SSSHZT',
|
|
||||||
"D_BZ_SSZT", "D_BZ_SF", "D_GS_XS_LX", "D_GS_XS_QTLX",
|
|
||||||
"D_GS_ZDQT_LB", "D_BZ_CLPP", "D_BZ_CLYS", "D_BZ_CLLX", "D_BZ_XZQHDM", "D_BZ_QBCZZT", "D_BZ_CJLX", "D_BZ_BQJB", "D_BZ_LCZT", "D_XXCJ_BQLX"); //获取字典数据
|
|
||||||
const detailDiloag = ref();
|
|
||||||
const searchBox = ref(); //搜索框
|
|
||||||
const ids = ref([])
|
|
||||||
const tableList = ref([]);
|
|
||||||
const chooseData = (val) => {
|
|
||||||
ids.value = val.map(item => {
|
|
||||||
return item.id
|
|
||||||
})
|
|
||||||
tableList.value = val
|
|
||||||
}
|
|
||||||
/** 市情指 */
|
|
||||||
const cityIntelligenceCommand = isShiQingZhi()
|
|
||||||
const currRow = ref({})
|
|
||||||
const transferMerchantRef = ref()
|
|
||||||
const isShowTransferMerchantTc = ref(false)
|
|
||||||
|
|
||||||
const isShow = ref(false)
|
|
||||||
const searchConfiger = ref([
|
|
||||||
{ label: "录入人", prop: 'xssbr', placeholder: "请输入录入人", showType: "input" },
|
|
||||||
{ label: "录入单位", prop: "ssbmdm", placeholder: "请选择录入单位", showType: "department" },
|
|
||||||
{ label: "编号", prop: 'xsBh', placeholder: "请输入编号", showType: "input" },
|
|
||||||
{ label: "时间", prop: "startTime", placeholder: "请选择时间", showType: "daterange" },
|
|
||||||
{ label: "情报标题", prop: 'qbmc', placeholder: "请输入情报标题", showType: "input" },
|
|
||||||
{ label: "标签内容", prop: 'bqdmList', placeholder: "请选择标签内容", showType: "select", options: D_XXCJ_BQLX,multiple:true},
|
|
||||||
{ label: "标签级别", prop: 'qbjb', placeholder: "请选择标签级别", showType: "select", options: D_BZ_BQJB },
|
|
||||||
{ label: "情报处置状态", prop: 'lczt', placeholder: "请选择处置状态", showType: "select", options: D_BZ_LCZT },
|
|
||||||
{ label: "关键字", prop: 'keyword', placeholder: "请输入关键字", showType: "input" },
|
|
||||||
]);
|
|
||||||
const pageData = reactive({
|
|
||||||
tableData: [],
|
|
||||||
keyCount: 0,
|
|
||||||
tableConfiger: {
|
|
||||||
rowHieght: 61,
|
|
||||||
showSelectType: "checkBox",
|
|
||||||
loading: false
|
|
||||||
},
|
|
||||||
total: 0,
|
|
||||||
pageConfiger: {
|
|
||||||
pageSize: 20,
|
|
||||||
pageCurrent: 1
|
|
||||||
},
|
|
||||||
controlsWidth: 300,
|
|
||||||
tableColumn: [
|
|
||||||
{ label: "情报上报时间", prop: "sxsbsj" },
|
|
||||||
{ label: "情报编号", prop: "xsBh" },
|
|
||||||
{ label: "情报标题", prop: "qbmc" },
|
|
||||||
{ label: "情报来源", prop: "qbly", showSolt: true },
|
|
||||||
{ label: "上报人", prop: "xssbr" },
|
|
||||||
{ label: "上报单位", prop: "ssbm" },
|
|
||||||
{ label: "流程状态", prop: "lczt", showSolt: true },
|
|
||||||
{ label: "采用情况", prop: "cyqk", showSolt: true },
|
|
||||||
// { label: "标签内容", prop: "lczt", showSolt: true },
|
|
||||||
// { label: "消息状态", prop: "czzt", showSolt: true },
|
|
||||||
]
|
|
||||||
});
|
|
||||||
const queryFrom = ref({});
|
|
||||||
|
|
||||||
const chooseRow = ref(false)
|
|
||||||
const dataList = ref()
|
|
||||||
|
|
||||||
// 采纳
|
|
||||||
const cnMsg = (item) => {
|
|
||||||
// if ( qxkz.depBool) {
|
|
||||||
proxy.$confirm("确定要采纳", "警告", { type: "warning" }).then(() => {
|
|
||||||
xxcjUpdateCzlc({ id: item.id, lczt: '04' }).then(res => {
|
|
||||||
proxy.$message({ type: "success", message: "采纳成功" });
|
|
||||||
getList();
|
|
||||||
})
|
|
||||||
}).catch(() => { });
|
|
||||||
// }
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
// 回退
|
|
||||||
const rollbackNewspapers = (item) => {
|
|
||||||
// if (item.lczt == '04') {
|
|
||||||
// proxy.$message({
|
|
||||||
// message: '已经采纳的信息无法回退',
|
|
||||||
// type: 'warning',
|
|
||||||
// showClose: true,
|
|
||||||
// })
|
|
||||||
// return
|
|
||||||
// }
|
|
||||||
// if (item.lczt == '03') {
|
|
||||||
// proxy.$message({
|
|
||||||
// message: '无法回退市局上报信息',
|
|
||||||
// type: 'warning',
|
|
||||||
// showClose: true,
|
|
||||||
// })
|
|
||||||
// return
|
|
||||||
// }
|
|
||||||
if (item.qbjb == '00') {
|
|
||||||
ElMessageBox.prompt('请输入回退原因', '警告', {
|
|
||||||
confirmButtonText: '确定',
|
|
||||||
cancelButtonText: '取消',
|
|
||||||
})
|
|
||||||
.then(({ value }) => {
|
|
||||||
xxcjUpdateCzlc({ id: item.id, lczt: '05', czthyy: value }).then(res => {
|
|
||||||
proxy.$message({ type: "success", message: "回退成功" });
|
|
||||||
getList();
|
|
||||||
})
|
|
||||||
})
|
|
||||||
.catch(() => {
|
|
||||||
})
|
|
||||||
} else {
|
|
||||||
proxy.$message({
|
|
||||||
message: '只能回退已上报的情报',
|
|
||||||
type: 'warning',
|
|
||||||
showClose: true,
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
// 上报
|
|
||||||
const appearNewspapers = (item) => {
|
|
||||||
if ((item.lczt == '01' || item.lczt == '05' || item.lczt == '02') && item.qbjb == '00' && qxkz.deptLevel != '01') {
|
|
||||||
proxy.$confirm("确定要上报", "警告", { type: "warning" }).then(() => {
|
|
||||||
let promes = {}
|
|
||||||
if (qxkz.deptLevel == '02') {
|
|
||||||
promes = { id: item.id, lczt: '03' }
|
|
||||||
} else {
|
|
||||||
promes = { id: item.id, lczt: '02' }
|
|
||||||
}
|
|
||||||
xxcjUpdateCzlc(promes).then(res => {
|
|
||||||
proxy.$message({ type: "success", message: "上报成功" });
|
|
||||||
getList();
|
|
||||||
})
|
|
||||||
|
|
||||||
}).catch(() => { });
|
|
||||||
} else {
|
|
||||||
proxy.$message({ type: "warning", message: "市局无法进行上报" });
|
|
||||||
}
|
|
||||||
}
|
|
||||||
// 分组
|
|
||||||
const opneMsg = (item) => {
|
|
||||||
chooseRow.value = true
|
|
||||||
dataList.value = [item]
|
|
||||||
}
|
|
||||||
// 打标签
|
|
||||||
const customTagShow = ref(false)
|
|
||||||
const openCustomTag = (item) => {
|
|
||||||
if (qxkz.depBool) {
|
|
||||||
customTagShow.value = true
|
|
||||||
dataList.value = item
|
|
||||||
} else {
|
|
||||||
proxy.$message.warning('暂无权限')
|
|
||||||
}
|
|
||||||
}
|
|
||||||
// 肯定
|
|
||||||
const affirm = (item) => {
|
|
||||||
proxy.$confirm("确定要肯定吗?", "警告", { type: "warning" }).then(() => {
|
|
||||||
xxcjXxqd({ ids: item.id }).then(res => {
|
|
||||||
proxy.$message({ type: "success", message: "肯定成功" });
|
|
||||||
getList();
|
|
||||||
})
|
|
||||||
})
|
|
||||||
|
|
||||||
}
|
|
||||||
// 配置关注部门
|
|
||||||
const configurationShow = ref(false)
|
|
||||||
const FollowUpOnDept = (item) => {
|
|
||||||
if (qxkz.depBool) {
|
|
||||||
configurationShow.value = true
|
|
||||||
dataList.value = item
|
|
||||||
} else {
|
|
||||||
proxy.$message.warning('暂无权限')
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// 批量分组
|
|
||||||
// const batchMark = () => {
|
|
||||||
// const listDb = tableList.value.filter(item => item.lczt != '04')
|
|
||||||
// if (listDb.length == 0) {
|
|
||||||
// chooseRow.value = true
|
|
||||||
// dataList.value = tableList.value
|
|
||||||
// } else {
|
|
||||||
// proxy.$message({
|
|
||||||
// message: '还有情报未采纳',
|
|
||||||
// type: 'warning',
|
|
||||||
// showClose: true,
|
|
||||||
// })
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
const handleSumbit = () => {
|
|
||||||
const listDb = tableList.value.filter(item => item.czzt != '01' && item.czzt != '04')
|
|
||||||
if (listDb.length == 0) {
|
|
||||||
proxy.$confirm("确定要上报", "警告", { type: "warning" }).then(() => {
|
|
||||||
qbcjPlsb({ ids: ids.value, qbjb: '00' }).then(res => {
|
|
||||||
proxy.$message({ type: "success", message: "上报成功" });
|
|
||||||
getList();
|
|
||||||
})
|
|
||||||
}).catch(() => { });
|
|
||||||
} else {
|
|
||||||
proxy.$message({
|
|
||||||
message: '请选择正确数据',
|
|
||||||
type: 'warning',
|
|
||||||
showClose: true,
|
|
||||||
})
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// <!-- [04、06、07、08、09] -->打标签
|
|
||||||
// <!-- [03、05] -->采纳
|
|
||||||
// <!-- [04] -->回退
|
|
||||||
// <!-- (01 提交 02 上报县局 03 上班市局 04 采纳 05 退回 06 打标签 07 转合成 08 转线索 09 转会商)v-if="qxkz.deptLevel == '01'" -->
|
|
||||||
const butcontroll = (val, zt) => {
|
|
||||||
switch (val) {
|
|
||||||
case '01':
|
|
||||||
return !(['04', '06', '07', '08', '09'].includes(zt))
|
|
||||||
case '02':
|
|
||||||
return !(['03', '05'].includes(zt))
|
|
||||||
case '03':
|
|
||||||
return !(['02', '03', '04'].includes(zt))
|
|
||||||
case '04':
|
|
||||||
return ([ '04', '05' ,'06', '07', '08', '09'].includes(zt))
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// 搜索
|
|
||||||
const onSearch = (val) => {
|
|
||||||
console.log(val.bqdmList);
|
|
||||||
|
|
||||||
const promes = {
|
|
||||||
...pageData.pageConfiger,
|
|
||||||
...val,
|
|
||||||
startTime: val.startTime ? val.startTime[0] : '',
|
|
||||||
endTime: val.endTime ? val.endTime[1] : '',
|
|
||||||
bqdmList:val.bqdmList?val.bqdmList.join(','):""
|
|
||||||
}
|
|
||||||
|
|
||||||
queryFrom.value = { ...promes }
|
|
||||||
pageData.pageConfiger.pageCurrent = 1;
|
|
||||||
getList()
|
|
||||||
}
|
|
||||||
|
|
||||||
const changeNo = (val) => {
|
|
||||||
pageData.pageConfiger.pageCurrent = val;
|
|
||||||
getList()
|
|
||||||
}
|
|
||||||
const changeSize = (val) => {
|
|
||||||
pageData.pageConfiger.pageSize = val;
|
|
||||||
getList()
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获取列表
|
|
||||||
const getList = () => {
|
|
||||||
pageData.tableConfiger.loading = true;
|
|
||||||
console.log(pageData.pageConfiger);
|
|
||||||
|
|
||||||
let data = { ...pageData.pageConfiger, ...queryFrom.value };
|
|
||||||
xxcjSelectXxsbPage(data).then(res => {
|
|
||||||
pageData.tableData = res.records || [];
|
|
||||||
pageData.total = res.total;
|
|
||||||
pageData.tableConfiger.loading = false;
|
|
||||||
}).catch(() => { pageData.tableConfiger.loading = false; })
|
|
||||||
}
|
|
||||||
// 删除
|
|
||||||
const delDictItem = (id) => {
|
|
||||||
proxy.$confirm("确定要删除", "警告", { type: "warning" }).then(() => {
|
|
||||||
xxcjDeletes({ ids: Array.isArray(id) ? id : [id] }).then((res) => {
|
|
||||||
proxy.$message({ type: "success", message: "删除成功" });
|
|
||||||
getList();
|
|
||||||
}).catch(() => {
|
|
||||||
})
|
|
||||||
}).catch(() => { });
|
|
||||||
}
|
|
||||||
// 导出数据
|
|
||||||
const tableColumn = reactive([
|
|
||||||
{ label: "上报人姓名", prop: "xssbr" },
|
|
||||||
{ label: "情报上报时间", prop: "sxsbsj" },
|
|
||||||
{ label: "情报编号", prop: "xsBh" },
|
|
||||||
{ label: "情报标题", prop: "qbmc" },
|
|
||||||
// { label: "情报类型", prop: "qblx", showSolt: true, zd: 'D_GS_XS_LX' },
|
|
||||||
{ label: "情报来源", prop: "qbly", showSolt: true, zd: 'D_BZ_CJLX' },
|
|
||||||
// { label: "指向地点", prop: "zxdz" },
|
|
||||||
// { label: "情报内容", prop: "qbnr", showOverflowTooltip: true },
|
|
||||||
])
|
|
||||||
// 详情
|
|
||||||
const addEdit = (type, row) => {
|
|
||||||
isShow.value = true;
|
|
||||||
setTimeout(() => {
|
|
||||||
detailDiloag.value.init(type, row);
|
|
||||||
}, 500)
|
|
||||||
};
|
|
||||||
const openXxqk = (row) => {
|
|
||||||
if (row.column.property == 'qbmc' || row.column.property == 'xsBh') {
|
|
||||||
isShow.value = true;
|
|
||||||
setTimeout(() => {
|
|
||||||
detailDiloag.value.init('info', row.row);
|
|
||||||
}, 500)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
const route = useRoute()
|
|
||||||
const titleData = ref()
|
|
||||||
const qxkz = reactive({
|
|
||||||
deptBizType: '',
|
|
||||||
deptLevel: '',
|
|
||||||
roleCode: false,
|
|
||||||
depBool: false
|
|
||||||
});
|
|
||||||
const qxzt = ref(false)
|
|
||||||
|
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
const { deptBizType, deptLevel } = getItem('deptId')[0]
|
|
||||||
const Jb = deptLevel[0] == '2' ? '01' : deptLevel[0] == '3' ? '02' : '03'
|
|
||||||
qxkz.roleCode = getItem('roleList').find(item => item.roleCode == 'JS_666666') != undefined
|
|
||||||
qxkz.deptBizType = deptBizType
|
|
||||||
qxkz.deptLevel = Jb
|
|
||||||
if (deptBizType == '23' && Jb == '01') {
|
|
||||||
qxkz.depBool = true
|
|
||||||
} else {
|
|
||||||
qxkz.depBool = false
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
getRouter()
|
|
||||||
tabHeightFn()
|
|
||||||
if (route.query.id) {
|
|
||||||
detailDiloag.value.init('edit', {
|
|
||||||
id: route.query.id
|
|
||||||
});
|
|
||||||
return
|
|
||||||
}
|
|
||||||
getList()
|
|
||||||
|
|
||||||
|
|
||||||
});
|
});
|
||||||
const getRouter = () => {
|
|
||||||
titleData.value = route.meta.title
|
|
||||||
}
|
|
||||||
const exportFileModel = ref(false)
|
|
||||||
const dologCancel = () => {
|
|
||||||
exportFileModel.value = true;
|
|
||||||
}
|
|
||||||
// 搜索栏
|
|
||||||
|
|
||||||
// 表格高度计算
|
|
||||||
const tabHeightFn = () => {
|
|
||||||
pageData.tableHeight = window.innerHeight - searchBox.value.offsetHeight - 250;
|
|
||||||
window.onresize = function () {
|
|
||||||
tabHeightFn();
|
|
||||||
};
|
|
||||||
};
|
|
||||||
// 转线索
|
|
||||||
const FollowUpOnLeads = (row) => {
|
|
||||||
if (!qxkz.depBool) {
|
|
||||||
proxy.$message({
|
|
||||||
message: '权限不足',
|
|
||||||
type: 'warning',
|
|
||||||
showClose: true,
|
|
||||||
})
|
|
||||||
return
|
|
||||||
} else {
|
|
||||||
proxy.$confirm("确定要转线索吗?", "警告", { type: "warning" }).then(() => {
|
|
||||||
xxcjXxzsx({ ids: Array.isArray(row) ? row.join(',') : row.id }).then(res => {
|
|
||||||
proxy.$message({ type: "success", message: "转线索成功" });
|
|
||||||
getList();
|
|
||||||
})
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
// 发送指令
|
|
||||||
const fszlShow = ref(false)
|
|
||||||
const openFkDialogszl = (row) => {
|
|
||||||
if (!qxkz.depBool) {
|
|
||||||
proxy.$message({
|
|
||||||
message: '权限不足',
|
|
||||||
type: 'warning',
|
|
||||||
showClose: true,
|
|
||||||
})
|
|
||||||
return
|
|
||||||
} else {
|
|
||||||
fszlShow.value = true
|
|
||||||
dataList.value = row
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/** 获取当前角色 */
|
|
||||||
function getRole() {
|
|
||||||
const { deptBizType, deptLevel } = getItem('deptId')[0]
|
|
||||||
/** 是否是市情指领导 */
|
|
||||||
const isShiQzLeader = getItem('roleList').find(item => item.roleCode == 'JS_666666') != undefined
|
|
||||||
if (isShiQzLeader) return '市情指领导'
|
|
||||||
/** 是否是市情指人员 */
|
|
||||||
const isShiQz = getItem('roleList').find(item => item.roleCode == 'JS_777777') != undefined
|
|
||||||
if (isShiQz) return '市情指挥人员'
|
|
||||||
/** 是否是县情指人员 */
|
|
||||||
const isXianQz = getItem('roleList').find(item => item.roleCode == 'JS_888888') != undefined
|
|
||||||
if (isXianQz) return '县情指人员'
|
|
||||||
return '部门'
|
|
||||||
}
|
|
||||||
/** 是否展示按钮 */
|
|
||||||
const isShowBtn = (btnName, row = {}) => {
|
|
||||||
/** @type {String} 流程状态(01 提交 02 上报县局 03 上班市局 04 采纳 05 退回 06 打标签 08 转线索) */
|
|
||||||
const lczt = row.lczt
|
|
||||||
/** 按钮权限 */
|
|
||||||
const buttonPermissions = {
|
|
||||||
"市情指领导": ["肯定", "采纳", "回退", "分组", "转线索", "转合成", "转会商", "打标签", "修改", "详情", "关注部门"],
|
|
||||||
"市情指挥人员": ["采纳", "回退", "分组", "转线索", "转合成", "转会商", "打标签", "修改", "详情", "关注部门", "送审"],
|
|
||||||
"县情指人员": ["上报", "回退", "修改", "详情", "送审"],
|
|
||||||
"部门": ["上报", "新增", "修改", "续报", "详情"]
|
|
||||||
};
|
|
||||||
|
|
||||||
const role = getRole(); // 角色
|
|
||||||
const isHadAuth = buttonPermissions[role]?.includes(btnName) // 当前角色所有会显示的按钮
|
|
||||||
if (!isHadAuth) return false
|
|
||||||
// 拦截部分逻辑
|
|
||||||
if (role === '部门') {
|
|
||||||
if (btnName === '续报') return lczt != '01'
|
|
||||||
if (btnName === '修改') return lczt == '01'
|
|
||||||
// if(btnName === '上报') return lczt == '01'
|
|
||||||
}
|
|
||||||
return true
|
|
||||||
}
|
|
||||||
const handleTransferMerchant = (row) => {
|
|
||||||
currRow.value = row
|
|
||||||
isShowTransferMerchantTc.value = true
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// 送审
|
|
||||||
const postXxcjXxcjTjsh = (row) => {
|
|
||||||
proxy.$confirm("确定要送审吗", "提示", { type: "warning" }).then(() => {
|
|
||||||
xxcjXxcjTjsh({ xxid: row.id }).then(res => {
|
|
||||||
proxy.$message({ type: "success", message: "送审成功" });
|
|
||||||
getList();
|
|
||||||
})
|
|
||||||
}).catch(() => { })
|
|
||||||
}
|
|
||||||
const getDisabled = (val, zt) => {
|
|
||||||
console.log(val, zt);
|
|
||||||
|
|
||||||
// switch (val) {
|
|
||||||
// case '01':
|
|
||||||
// return !(['04', '06', '07', '08', '09'].includes(zt))
|
|
||||||
// case '02':
|
|
||||||
// return !(['03', '05'].includes(zt))
|
|
||||||
// case '03':
|
|
||||||
// return !(['02', '03', '04'].includes(zt))
|
|
||||||
// case '04':
|
|
||||||
// return ([ '04', '05' ,'06', '07', '08', '09'].includes(zt))
|
|
||||||
// }
|
|
||||||
}
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.label-pop {
|
.marks {
|
||||||
position: relative;
|
padding: 0 4px;
|
||||||
|
white-space: nowrap;
|
||||||
&::before {
|
background: #73acf1;
|
||||||
position: absolute;
|
border-radius: 4px;
|
||||||
content: '*';
|
color: #fff;
|
||||||
top: 0;
|
|
||||||
left: -7px;
|
|
||||||
color: red;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
<style>
|
<style>
|
||||||
.el-loading-mask {
|
.el-loading-mask {
|
||||||
background: rgba(0, 0, 0, 0.5) !important;
|
background: rgba(0, 0, 0, 0.5) !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
:v-deep .el-dialog {
|
|
||||||
width: 90% !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
.zdy-model-dialogs {
|
|
||||||
/* background-color: rgb(50, 148, 214); */
|
|
||||||
background: url("~@/assets/images/bg46.png") no-repeat center center;
|
|
||||||
background-size: 100% 100%;
|
|
||||||
padding: 8px 10px;
|
|
||||||
box-sizing: border-box;
|
|
||||||
pointer-events: auto !important;
|
|
||||||
height: calc(100% - 50px);
|
|
||||||
overflow: auto;
|
|
||||||
}
|
|
||||||
|
|
||||||
.vertical-middle {
|
|
||||||
vertical-align: middle;
|
|
||||||
}
|
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@ -58,28 +58,32 @@
|
|||||||
:disabled="butcontroll('04', row.lczt)">回退</el-link>
|
:disabled="butcontroll('04', row.lczt)">回退</el-link>
|
||||||
</template>
|
</template>
|
||||||
<!-- 操作 -->
|
<!-- 操作 -->
|
||||||
<!-- "市情指挥人员": ["采纳", "回退", "分组", "转线索", "转合成", "转会商", "打标签", "修改", "详情", "关注部门", "送审"], -->
|
<!-- "市情指挥人员": ["采纳", "回退", "分组", "转线索", "转合成", "转会商", "打标签", "修改", "详情", "关注部门", "送审"], -->
|
||||||
<!-- "县情指人员": ["上报", "回退", "修改", "详情", "送审"], -->
|
<!-- "县情指人员": ["上报", "回退", "修改", "详情", "送审"], -->
|
||||||
<template #controls="{ row }">
|
<template #controls="{ row }">
|
||||||
<el-link v-if="isShowBtn('送审', row) && qxkz.deptLevel == '01'" :disabled="row.sldshzt != '00'||row.lczt != '04'" size="small"
|
<el-link v-if="isShowBtn('送审', row) && qxkz.deptLevel == '01'"
|
||||||
type="primary" @click="postXxcjXxcjTjsh(row)">送审</el-link>
|
:disabled="row.sldshzt != '00' || row.lczt != '04'" size="small" type="primary"
|
||||||
<el-link v-if="isShowBtn('送审', row) && qxkz.deptLevel == '02'" :disabled="row.xldshzt != '00'||row.lczt != '04'" size="small"
|
@click="postXxcjXxcjTjsh(row)">送审</el-link>
|
||||||
type="primary" @click="postXxcjXxcjTjsh(row)">送审</el-link>
|
<el-link v-if="isShowBtn('送审', row) && qxkz.deptLevel == '02'"
|
||||||
|
:disabled="row.xldshzt != '00' || row.lczt != '04'" size="small" type="primary"
|
||||||
|
@click="postXxcjXxcjTjsh(row)">送审</el-link>
|
||||||
<!-- (01 提交 02 上报县局 03 上班市局 04 采纳 05 退回 06 打标签 07 转合成 08 转线索 09 转会商)v-if="qxkz.deptLevel == '01'" -->
|
<!-- (01 提交 02 上报县局 03 上班市局 04 采纳 05 退回 06 打标签 07 转合成 08 转线索 09 转会商)v-if="qxkz.deptLevel == '01'" -->
|
||||||
<!-- 在提交和退回得状态才能进行上报 -->
|
<!-- 在提交和退回得状态才能进行上报 -->
|
||||||
<el-link v-if="isShowBtn('上报')" size="small" type="primary" @click="appearNewspapers(row)" :disabled="row.xldshzt != '02'">上报</el-link>
|
<el-link v-if="isShowBtn('上报')" size="small" type="primary" @click="appearNewspapers(row)"
|
||||||
|
:disabled="row.xldshzt != '02' || (row.lczt != '02' || row.lczt != '03')">上报</el-link>
|
||||||
<el-link v-if="isShowBtn('分组')" size="small" type="primary" @click="opneMsg(row)"
|
<el-link v-if="isShowBtn('分组')" size="small" type="primary" @click="opneMsg(row)"
|
||||||
:disabled="row.sldshzt != '02'">分组</el-link>
|
:disabled="row.sldshzt != '02'">分组</el-link>
|
||||||
<!-- 只有领导有肯定 -->
|
<!-- 只有领导有肯定 -->
|
||||||
<!-- <el-link v-if="isShowBtn('肯定')" size="small" type="primary" @click="affirm(row)">肯定</el-link> -->
|
<!-- <el-link v-if="isShowBtn('肯定')" size="small" type="primary" @click="affirm(row)">肯定</el-link> -->
|
||||||
<el-link v-if="isShowBtn('删除')" size="small" type="primary" @clic.stopk="delDictItem(row.id)">删除</el-link>
|
<el-link v-if="isShowBtn('删除')" size="small" type="primary" @clic.stopk="delDictItem(row.id)">删除</el-link>
|
||||||
<el-link v-if="isShowBtn('修改', row)" size="small" type="primary" @click="addEdit('edit', row)">修改</el-link>
|
<el-link v-if="isShowBtn('修改', row)" size="small" type="primary" @click="addEdit('edit', row)">修改</el-link>
|
||||||
<el-link v-if="isShowBtn('续报', row)" size="small" type="primary" @click="addEdit('followUpReport', row)">续报</el-link>
|
<el-link v-if="isShowBtn('续报', row)" size="small" type="primary"
|
||||||
|
@click="addEdit('followUpReport', row)">续报</el-link>
|
||||||
|
|
||||||
<el-link v-if="isShowBtn('详情')" size="small" type="primary" @click="addEdit('info', row)">详情</el-link>
|
<el-link v-if="isShowBtn('详情')" size="small" type="primary" @click="addEdit('info', row)">详情</el-link>
|
||||||
<!-- 所有状态都能进行转线索 -->
|
<!-- 所有状态都能进行转线索 -->
|
||||||
<el-link v-if="isShowBtn('转线索')" size="small" type="primary" @click="FollowUpOnLeads(row)"
|
<el-link v-if="isShowBtn('转线索')" size="small" type="primary" @click="FollowUpOnLeads(row)"
|
||||||
:disabled="row.sldshzt != '02' ">转线索</el-link>
|
:disabled="row.sldshzt != '02'">转线索</el-link>
|
||||||
<!-- 所有状态都能进行转合成 -->
|
<!-- 所有状态都能进行转合成 -->
|
||||||
<!-- <el-link v-if="isShowBtn('转合成')" size="small" type="primary" @click="openFkDialogszl(row)"
|
<!-- <el-link v-if="isShowBtn('转合成')" size="small" type="primary" @click="openFkDialogszl(row)"
|
||||||
:disabled="butcontroll('01', row.lczt)">转合成</el-link> -->
|
:disabled="butcontroll('01', row.lczt)">转合成</el-link> -->
|
||||||
@ -87,10 +91,11 @@
|
|||||||
<!-- <el-link v-if="isShowBtn('转会商')" size="small" type="primary" @click="handleTransferMerchant(row)"
|
<!-- <el-link v-if="isShowBtn('转会商')" size="small" type="primary" @click="handleTransferMerchant(row)"
|
||||||
:disabled="butcontroll('01', row.lczt)">转会商</el-link> -->
|
:disabled="butcontroll('01', row.lczt)">转会商</el-link> -->
|
||||||
|
|
||||||
<el-link v-if="isShowBtn('关注部门')" :disabled="row.sldshzt != '02'" size="small" type="primary" @click="FollowUpOnDept(row)">关注</el-link>
|
<el-link v-if="isShowBtn('关注部门')" :disabled="row.sldshzt != '02'" size="small" type="primary"
|
||||||
|
@click="FollowUpOnDept(row)">关注</el-link>
|
||||||
<!-- 市局能给所有数据创建标签 -->
|
<!-- 市局能给所有数据创建标签 -->
|
||||||
<el-link v-if="isShowBtn('打标签')" size="small" type="primary" @click="openCustomTag(row)"
|
<el-link v-if="isShowBtn('打标签')" size="small" type="primary" @click="openCustomTag(row)"
|
||||||
:disabled="row.sldshzt != '02' ">打标签</el-link>
|
:disabled="row.sldshzt != '02'">打标签</el-link>
|
||||||
</template>
|
</template>
|
||||||
</MyTable>
|
</MyTable>
|
||||||
<Pages @changeNo="changeNo" @changeSize="changeSize" :tableHeight="pageData.tableHeight" :pageConfiger="{
|
<Pages @changeNo="changeNo" @changeSize="changeSize" :tableHeight="pageData.tableHeight" :pageConfiger="{
|
||||||
@ -166,6 +171,7 @@ const searchConfiger = ref([
|
|||||||
{ label: "编号", prop: 'xsBh', placeholder: "请输入编号", showType: "input" },
|
{ label: "编号", prop: 'xsBh', placeholder: "请输入编号", showType: "input" },
|
||||||
{ label: "时间", prop: "startTime", placeholder: "请选择时间", showType: "daterange" },
|
{ label: "时间", prop: "startTime", placeholder: "请选择时间", showType: "daterange" },
|
||||||
{ label: "情报标题", prop: 'qbmc', placeholder: "请输入情报标题", showType: "input" },
|
{ label: "情报标题", prop: 'qbmc', placeholder: "请输入情报标题", showType: "input" },
|
||||||
|
{ label: "标签内容", prop: 'bqdmList', placeholder: "请选择标签内容", showType: "select", options: D_XXCJ_BQLX, multiple: true },
|
||||||
{ label: "标签级别", prop: 'qbjb', placeholder: "请选择标签级别", showType: "select", options: D_BZ_BQJB },
|
{ label: "标签级别", prop: 'qbjb', placeholder: "请选择标签级别", showType: "select", options: D_BZ_BQJB },
|
||||||
{ label: "情报处置状态", prop: 'lczt', placeholder: "请选择处置状态", showType: "select", options: D_BZ_LCZT },
|
{ label: "情报处置状态", prop: 'lczt', placeholder: "请选择处置状态", showType: "select", options: D_BZ_LCZT },
|
||||||
{ label: "关键字", prop: 'keyword', placeholder: "请输入关键字", showType: "input" },
|
{ label: "关键字", prop: 'keyword', placeholder: "请输入关键字", showType: "input" },
|
||||||
@ -354,7 +360,7 @@ const handleSumbit = () => {
|
|||||||
// <!-- [04、06、07、08、09] -->打标签
|
// <!-- [04、06、07、08、09] -->打标签
|
||||||
// <!-- [03、05] -->采纳
|
// <!-- [03、05] -->采纳
|
||||||
// <!-- [04] -->回退
|
// <!-- [04] -->回退
|
||||||
// <!-- (01 提交 02 上报县局 03 上班市局 04 采纳 05 退回 06 打标签 07 转合成 08 转线索 09 转会商)v-if="qxkz.deptLevel == '01'" -->
|
// <!-- (01 提交 02 上报县局 03 上班市局 04 采纳 05 退回 06 打标签 07 转合成 08 转线索 09 转会商)v-if="qxkz.deptLevel == '01'" -->
|
||||||
const butcontroll = (val, zt) => {
|
const butcontroll = (val, zt) => {
|
||||||
switch (val) {
|
switch (val) {
|
||||||
case '01':
|
case '01':
|
||||||
@ -364,18 +370,20 @@ const butcontroll = (val, zt) => {
|
|||||||
case '03':
|
case '03':
|
||||||
return !(['02', '03', '04'].includes(zt))
|
return !(['02', '03', '04'].includes(zt))
|
||||||
case '04':
|
case '04':
|
||||||
return ([ '04', '05' ,'06', '07', '08', '09'].includes(zt))
|
return (['04', '05', '06', '07', '08', '09'].includes(zt))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// 搜索
|
// 搜索
|
||||||
const onSearch = (val) => {
|
const onSearch = (val) => {
|
||||||
|
console.log(val.bqdmList);
|
||||||
|
|
||||||
const promes = {
|
const promes = {
|
||||||
...pageData.pageConfiger,
|
...pageData.pageConfiger,
|
||||||
...val,
|
...val,
|
||||||
startTime: val.startTime ? val.startTime[0] : '',
|
startTime: val.startTime ? val.startTime[0] : '',
|
||||||
endTime: val.endTime ? val.endTime[1] : '',
|
endTime: val.endTime ? val.endTime[1] : '',
|
||||||
|
bqdmList: val.bqdmList ? val.bqdmList.join(',') : ""
|
||||||
}
|
}
|
||||||
|
|
||||||
queryFrom.value = { ...promes }
|
queryFrom.value = { ...promes }
|
||||||
@ -486,7 +494,7 @@ const dologCancel = () => {
|
|||||||
|
|
||||||
// 表格高度计算
|
// 表格高度计算
|
||||||
const tabHeightFn = () => {
|
const tabHeightFn = () => {
|
||||||
pageData.tableHeight = window.innerHeight - searchBox.value.offsetHeight - 290;
|
pageData.tableHeight = window.innerHeight - searchBox.value.offsetHeight - 250;
|
||||||
window.onresize = function () {
|
window.onresize = function () {
|
||||||
tabHeightFn();
|
tabHeightFn();
|
||||||
};
|
};
|
||||||
@ -76675,35 +76675,40 @@ export const centralPoint = [
|
|||||||
95.7692249914358,
|
95.7692249914358,
|
||||||
29.85943760031867
|
29.85943760031867
|
||||||
]
|
]
|
||||||
}, {
|
},
|
||||||
|
{
|
||||||
name: '察隅县',
|
name: '察隅县',
|
||||||
ssbmdm: '540425000000',
|
ssbmdm: '540425000000',
|
||||||
point: [
|
point: [
|
||||||
97.46698612723947,
|
97.46698612723947,
|
||||||
28.661228694163327
|
28.661228694163327
|
||||||
]
|
]
|
||||||
}, {
|
},
|
||||||
|
{
|
||||||
name: '工布江达县',
|
name: '工布江达县',
|
||||||
ssbmdm: '540421000000',
|
ssbmdm: '540421000000',
|
||||||
point: [
|
point: [
|
||||||
93.24660931130188,
|
93.24660931130188,
|
||||||
29.88459424127838
|
29.88459424127838
|
||||||
]
|
]
|
||||||
}, {
|
},
|
||||||
|
{
|
||||||
name: '朗县',
|
name: '朗县',
|
||||||
ssbmdm: '540426000000',
|
ssbmdm: '540426000000',
|
||||||
point: [
|
point: [
|
||||||
93.07449497318652,
|
93.07449497318652,
|
||||||
29.045416229209337
|
29.045416229209337
|
||||||
]
|
]
|
||||||
}, {
|
},
|
||||||
|
{
|
||||||
name: '米林县',
|
name: '米林县',
|
||||||
ssbmdm: '540422000000',
|
ssbmdm: '540422000000',
|
||||||
point: [
|
point: [
|
||||||
94.21305189935441,
|
94.21305189935441,
|
||||||
29.21583429482142
|
29.21583429482142
|
||||||
]
|
]
|
||||||
}, {
|
},
|
||||||
|
{
|
||||||
name: '雅下分局',
|
name: '雅下分局',
|
||||||
ssbmdm: '540481450000',
|
ssbmdm: '540481450000',
|
||||||
point: [
|
point: [
|
||||||
|
|||||||
@ -70,15 +70,12 @@ const disabled = ref(false);
|
|||||||
|
|
||||||
// 初始化数据
|
// 初始化数据
|
||||||
const init = (type, row) => {
|
const init = (type, row) => {
|
||||||
|
title.value = type == 'edit' ? '编辑' : '新增'
|
||||||
dialogForm.value = true;
|
dialogForm.value = true;
|
||||||
|
if(type == 'edit'){
|
||||||
|
}
|
||||||
};
|
};
|
||||||
// 根据id查询详情
|
|
||||||
const getDataById = (id) => {
|
|
||||||
// qcckGet({id}, "/mosty-gsxt/tbGsxtZdcl/selectByid").then((res) => {
|
|
||||||
// listQuery.value = res;
|
|
||||||
// listQuery.value.fjdz = listQuery.value.fjdz?.split(",");
|
|
||||||
// });
|
|
||||||
};
|
|
||||||
|
|
||||||
// 提交
|
// 提交
|
||||||
const submit = () => {
|
const submit = () => {
|
||||||
@ -90,9 +87,6 @@ const submit = () => {
|
|||||||
return { bqdl: listQuery.value.dlid, bqdm: item.bqDm, bqmc: item.bqMc, bqsm: item.bqSm, bqys: item.bqYs }
|
return { bqdl: listQuery.value.dlid, bqdm: item.bqDm, bqmc: item.bqMc, bqsm: item.bqSm, bqys: item.bqYs }
|
||||||
})
|
})
|
||||||
const promes = [...a, ...b]
|
const promes = [...a, ...b]
|
||||||
|
|
||||||
|
|
||||||
// data.fjdz = data.fjdz?.join(",");
|
|
||||||
let url = title.value == "新增" ? "/mosty-gsxt/gsxt/bqbk/saveList" : "/mosty-gsxt/tbGsxtZdcl/update";
|
let url = title.value == "新增" ? "/mosty-gsxt/gsxt/bqbk/saveList" : "/mosty-gsxt/tbGsxtZdcl/update";
|
||||||
|
|
||||||
loading.value = true;
|
loading.value = true;
|
||||||
|
|||||||
@ -139,8 +139,8 @@ const getList = () => {
|
|||||||
pageData.tableConfiger.loading = false;
|
pageData.tableConfiger.loading = false;
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
const AddFrom = () => {
|
const AddFrom = (type,row) => {
|
||||||
addForm.value.init()
|
addForm.value.init(type,row)
|
||||||
}
|
}
|
||||||
const handleItem = (type,row) => {
|
const handleItem = (type,row) => {
|
||||||
proxy.$confirm('确认撤控吗?', '提示', {
|
proxy.$confirm('确认撤控吗?', '提示', {
|
||||||
|
|||||||
@ -27,7 +27,7 @@
|
|||||||
<div class="mid">
|
<div class="mid">
|
||||||
<div class="left">
|
<div class="left">
|
||||||
<!-- <div class="title ellipsis">参会人员:{{ item.chry }}</div> -->
|
<!-- <div class="title ellipsis">参会人员:{{ item.chry }}</div> -->
|
||||||
<div class="desc">
|
<div class="desc noScollLine">
|
||||||
<div class="info ellipsis" v-for="(el, i) in item.xsplList" :key="i">{{ i + 1 }}、{{ el.plnr }}</div>
|
<div class="info ellipsis" v-for="(el, i) in item.xsplList" :key="i">{{ i + 1 }}、{{ el.plnr }}</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -0,0 +1,49 @@
|
|||||||
|
<template>
|
||||||
|
<div class="detail_box">
|
||||||
|
<el-descriptions title="审核详情信息" border>
|
||||||
|
<el-descriptions-item :rowspan="2" label="研判名称" >{{detail.ypmc}}</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="报告名称">{{detail.bgmc}}</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="所属部门">{{ detail.ssbm }}</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="报告类型"><DictTag :tag="false" :value="detail.bglx" :options="D_BZ_YPLX" /></el-descriptions-item>
|
||||||
|
<el-descriptions-item label="审核状态"><DictTag :tag="false" :value="detail.shzt" :options="D_BZ_XSSHZT" /></el-descriptions-item>
|
||||||
|
<el-descriptions-item label="创建人姓名">{{ detail.cjrxm }}</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="创建人身份证号">{{ detail.cjrsfzh }}</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="报告内容">{{ detail.bgnr }}</el-descriptions-item>
|
||||||
|
</el-descriptions>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup>
|
||||||
|
import { ref, onMounted, getCurrentInstance } from 'vue'
|
||||||
|
import { useRoute } from 'vue-router'
|
||||||
|
import { qcckGet } from "@/api/qcckApi.js";
|
||||||
|
const { proxy } = getCurrentInstance();
|
||||||
|
const { D_BZ_YPLX ,D_BZ_XSSHZT } = proxy.$dict('D_BZ_YPFS',"D_BZ_YPLX" ,'D_BZ_XSSHZT')
|
||||||
|
const route = useRoute();
|
||||||
|
const detail = ref({});
|
||||||
|
|
||||||
|
onMounted(() => {
|
||||||
|
getDetail();
|
||||||
|
})
|
||||||
|
|
||||||
|
const getDetail = () => {
|
||||||
|
qcckGet({}, "/mosty-gsxt/gsxtYpbg/" + route.query.id).then((res) => {
|
||||||
|
detail.value = res || {};
|
||||||
|
console.log(detail.value);
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
.detail_box {
|
||||||
|
padding: 20px 10vw;
|
||||||
|
box-sizing: border-box;
|
||||||
|
width: 100%;
|
||||||
|
height: 100vh;
|
||||||
|
overflow: hidden;
|
||||||
|
overflow-y: auto;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
186
src/views/backOfficeSystem/JudgmentHome/ReviewList/index.vue
Normal file
186
src/views/backOfficeSystem/JudgmentHome/ReviewList/index.vue
Normal file
@ -0,0 +1,186 @@
|
|||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
<!-- 搜索 -->
|
||||||
|
<div ref="searchBox" class="mt10 mb10">
|
||||||
|
<Search :searchArr="searchConfiger" @submit="onSearch" />
|
||||||
|
</div>
|
||||||
|
<!-- 表格 -->
|
||||||
|
<div class="tabBox" :style="{height: pageData.tableHeight + 10 +'px'}">
|
||||||
|
<MyTable :tableData="pageData.tableData" :tableColumn="pageData.tableColumn" :tableHeight="pageData.tableHeight" :key="pageData.keyCount" :tableConfiger="pageData.tableConfiger" :controlsWidth="pageData.controlsWidth">
|
||||||
|
<template #bglx="{ row }">
|
||||||
|
<DictTag :tag="false" :value="row.bglx" :options="D_BZ_YPLX" />
|
||||||
|
</template>
|
||||||
|
<template #shzt="{ row }">
|
||||||
|
<DictTag :tag="false" :value="row.shzt" :options="D_BZ_XSSHZT" />
|
||||||
|
</template>
|
||||||
|
<!-- 操作 -->
|
||||||
|
<template #controls="{ row }">
|
||||||
|
<el-link type="primary" @click="addEdit('detail', row)">详情</el-link>
|
||||||
|
<el-link type="danger" ref="buttonRef" @click="showPopover(row)">审核</el-link>
|
||||||
|
</template>
|
||||||
|
</MyTable>
|
||||||
|
<Pages
|
||||||
|
@changeNo="changeNo"
|
||||||
|
@changeSize="changeSize"
|
||||||
|
:tableHeight="pageData.tableHeight"
|
||||||
|
:pageConfiger="{ ...pageData.pageConfiger, total: pageData.total }"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- 详情 -->
|
||||||
|
<Detail bglx="02" ref="detailDiloag" :dict="{ D_BZ_YPFS, D_BZ_YPLX }"/>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup>
|
||||||
|
import Detail from "@/views/backOfficeSystem/JudgmentHome/strategicResearch/addReport.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, nextTick } from "vue";
|
||||||
|
import { useRouter } from 'vue-router';
|
||||||
|
const router = useRouter();
|
||||||
|
const { proxy } = getCurrentInstance();
|
||||||
|
const { D_BZ_YPFS,D_BZ_YPLX ,D_BZ_XSSHZT } = proxy.$dict('D_GZL_SHZT','D_BZ_YPFS',"D_BZ_YPLX" ,'D_BZ_XSSHZT')
|
||||||
|
const detailDiloag = ref();
|
||||||
|
const searchBox = ref(); //搜索框
|
||||||
|
const searchConfiger = ref([
|
||||||
|
{
|
||||||
|
label: "研判名称",
|
||||||
|
prop: "ypmc",
|
||||||
|
placeholder: "请输入研判名称",
|
||||||
|
showType: "input"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "报告名称",
|
||||||
|
prop: "bgmc",
|
||||||
|
placeholder: "请输入报告名称",
|
||||||
|
showType: "input"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "所属部门",
|
||||||
|
prop: "ssbmdm",
|
||||||
|
placeholder: "请选择所属部门",
|
||||||
|
showType: "department",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "报告类型",
|
||||||
|
prop: "bglx",
|
||||||
|
placeholder: "请选择报告类型",
|
||||||
|
showType: "select",
|
||||||
|
options: D_BZ_YPLX
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "审核状态",
|
||||||
|
prop: "shzt",
|
||||||
|
placeholder: "请选择审核状态",
|
||||||
|
showType: "select",
|
||||||
|
options: D_BZ_XSSHZT
|
||||||
|
},
|
||||||
|
]);
|
||||||
|
const queryFrom = ref({});
|
||||||
|
const pageData = reactive({
|
||||||
|
tableData: [], //表格数据
|
||||||
|
keyCount: 0,
|
||||||
|
tableConfiger: {
|
||||||
|
rowHieght: 61,
|
||||||
|
showSelectType: "null",
|
||||||
|
loading: false
|
||||||
|
},
|
||||||
|
total: 0,
|
||||||
|
pageConfiger: {
|
||||||
|
pageSize: 20,
|
||||||
|
pageCurrent: 1
|
||||||
|
}, //分页
|
||||||
|
controlsWidth: 160, //操作栏宽度
|
||||||
|
tableColumn: [
|
||||||
|
{
|
||||||
|
label: "研判名称",
|
||||||
|
prop: "ypmc"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "报告名称",
|
||||||
|
prop: "bgmc"
|
||||||
|
},{
|
||||||
|
label: "所属部门",
|
||||||
|
prop: "ssbm"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "报告类型",
|
||||||
|
prop: "bglx",
|
||||||
|
showSolt: true,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "审核状态",
|
||||||
|
prop: "shzt",
|
||||||
|
showSolt: true,
|
||||||
|
},
|
||||||
|
|
||||||
|
]
|
||||||
|
});
|
||||||
|
|
||||||
|
onMounted(() => {
|
||||||
|
tabHeightFn();
|
||||||
|
getList();
|
||||||
|
});
|
||||||
|
|
||||||
|
// 搜索
|
||||||
|
const onSearch = (val) => {
|
||||||
|
queryFrom.value = { ...val };
|
||||||
|
pageData.pageConfiger.pageCurrent = 1;
|
||||||
|
getList();
|
||||||
|
};
|
||||||
|
|
||||||
|
const changeNo = (val) => {
|
||||||
|
pageData.pageConfiger.pageCurrent = val;
|
||||||
|
getList();
|
||||||
|
};
|
||||||
|
|
||||||
|
const changeSize = (val) => {
|
||||||
|
pageData.pageConfiger.pageSize = val;
|
||||||
|
getList();
|
||||||
|
};
|
||||||
|
|
||||||
|
const getList = () => {
|
||||||
|
pageData.tableConfiger.loading = true;
|
||||||
|
let params = {
|
||||||
|
...queryFrom.value,
|
||||||
|
pageCurrent:pageData.pageConfiger.pageCurrent,
|
||||||
|
pageSize:pageData.pageConfiger.pageSize
|
||||||
|
}
|
||||||
|
qcckGet(params, "/mosty-gsxt/gsxtYpbg/queryShList").then((res) => {
|
||||||
|
pageData.tableData = res.records;
|
||||||
|
pageData.total = res.total;
|
||||||
|
pageData.tableConfiger.loading = false;
|
||||||
|
})
|
||||||
|
.catch(() => {
|
||||||
|
pageData.tableConfiger.loading = false;
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
// 详情
|
||||||
|
const addEdit = (type, row) => {
|
||||||
|
detailDiloag.value.init(type, row)
|
||||||
|
};
|
||||||
|
|
||||||
|
const showPopover = (row) => {
|
||||||
|
const url = router.resolve({ path: '/ReviewListSH', query:{id:row.id} });
|
||||||
|
window.open(url.href, '_blank');
|
||||||
|
}
|
||||||
|
|
||||||
|
// 表格高度计算
|
||||||
|
const tabHeightFn = () => {
|
||||||
|
pageData.tableHeight = window.innerHeight - searchBox.value.offsetHeight - 210;
|
||||||
|
window.onresize = function () {
|
||||||
|
tabHeightFn();
|
||||||
|
};
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
.el-loading-mask {
|
||||||
|
background: rgba(0, 0, 0, 0.5) !important;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@ -52,7 +52,7 @@
|
|||||||
<!-- 底部按钮 -->
|
<!-- 底部按钮 -->
|
||||||
<div class="bottom-actions" v-if="title !== '新增' && listQuery.id && listQuery.ssbmdm == userInfo.deptCode">
|
<div class="bottom-actions" v-if="title !== '新增' && listQuery.id && listQuery.ssbmdm == userInfo.deptCode">
|
||||||
<el-button type="primary" size="small" @click="sendNotice" :loading="noticeLoading">下发通知</el-button>
|
<el-button type="primary" size="small" @click="sendNotice" :loading="noticeLoading">下发通知</el-button>
|
||||||
<el-button type="success" size="small" @click="confirmJudgment" :loading="confirmLoading">确认研判</el-button>
|
<!-- <el-button type="success" size="small" @click="confirmJudgment" :loading="confirmLoading">确认研判</el-button> -->
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|||||||
@ -8,26 +8,27 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form_cnt">
|
<div class="form_cnt">
|
||||||
<FormMessage :formList="formData" v-model="listQuery" ref="elform" :rules="rules">
|
<FormMessage :formList="formData" :disabled="title=='详情'" v-model="listQuery" ref="elform" :rules="rules">
|
||||||
<template #bgnr>
|
|
||||||
<el-input v-model="listQuery.bgnr" style="width: 100%" placeholder="请输入关键字" class="input-with-select">
|
|
||||||
<template #append>
|
|
||||||
<el-button :icon="Search" type="primary">搜索</el-button>
|
|
||||||
</template>
|
|
||||||
</el-input>
|
|
||||||
</template>
|
|
||||||
<template #fj><el-button type="primary" @click="showText = true">附件上传</el-button></template>
|
<template #fj><el-button type="primary" @click="showText = true">附件上传</el-button></template>
|
||||||
</FormMessage>
|
</FormMessage>
|
||||||
<div class="cntBox">
|
<div class="cntBox">
|
||||||
<!-- 工具栏 -->
|
<!-- 工具栏 -->
|
||||||
<Toolbar style="border-bottom: 1px solid #ccc" :editor="editorRef" :defaultConfig="toolbarConfig"
|
<Toolbar
|
||||||
|
style="border-bottom: 1px solid #ccc"
|
||||||
|
:editor="editorRef"
|
||||||
|
:defaultConfig="toolbarConfig"
|
||||||
:mode="mode" />
|
:mode="mode" />
|
||||||
<!-- 编辑器 -->
|
<!-- 编辑器 -->
|
||||||
<Editor :style="`height: 480px; overflow-y: hidden`" :model-value="textContent" :defaultConfig="editorConfig"
|
<Editor
|
||||||
:mode="mode" @onCreated="handleCreated" @onChange="handChange" />
|
:style="`height: 480px; overflow-y: hidden`"
|
||||||
|
v-model="textContent"
|
||||||
|
:defaultConfig="editorConfig"
|
||||||
|
:mode="mode"
|
||||||
|
@onCreated="handleCreated"
|
||||||
|
@onChange="handChange"
|
||||||
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div v-if="outRow.id" style="display: flex; justify-content: center;">
|
<div v-if="listQuery.id" style="display: flex; justify-content: center;">
|
||||||
<!-- <el-button style="display: block;" type="primary" @click="ConsultationShow = true">网上会商</el-button> -->
|
<!-- <el-button style="display: block;" type="primary" @click="ConsultationShow = true">网上会商</el-button> -->
|
||||||
<el-button style="display: block;" type="primary" @click="downloadWithStyles(textContent)">下载</el-button>
|
<el-button style="display: block;" type="primary" @click="downloadWithStyles(textContent)">下载</el-button>
|
||||||
</div>
|
</div>
|
||||||
@ -51,15 +52,12 @@ import { Editor, Toolbar } from "@wangeditor/editor-for-vue";
|
|||||||
import { ref, defineExpose, reactive, defineEmits, getCurrentInstance, shallowRef, onBeforeUnmount, watch } from "vue";
|
import { ref, defineExpose, reactive, defineEmits, getCurrentInstance, shallowRef, onBeforeUnmount, watch } from "vue";
|
||||||
import { gsxtYpbgAddEntity, gsxtYpbgEditEntity, gsxtYpbgId } from "@/api/huiShangyp/strategicApi.js"
|
import { gsxtYpbgAddEntity, gsxtYpbgEditEntity, gsxtYpbgId } from "@/api/huiShangyp/strategicApi.js"
|
||||||
const emit = defineEmits(["updateDate", 'ok']);
|
const emit = defineEmits(["updateDate", 'ok']);
|
||||||
const props = defineProps({
|
const { proxy } = getCurrentInstance();
|
||||||
dic: Object,
|
const { D_BZ_YPLX } = proxy.$dict("D_BZ_YPLX")
|
||||||
});
|
const props = defineProps({});
|
||||||
|
|
||||||
|
|
||||||
const ConsultationShow = ref(false)
|
const ConsultationShow = ref(false)
|
||||||
const showText = ref(false);
|
const showText = ref(false);
|
||||||
const textContent = ref()
|
const textContent = ref()
|
||||||
const { proxy } = getCurrentInstance();
|
|
||||||
const editorRef = shallowRef();
|
const editorRef = shallowRef();
|
||||||
const dialogForm = ref(false); //弹窗
|
const dialogForm = ref(false); //弹窗
|
||||||
const mode = "default";
|
const mode = "default";
|
||||||
@ -107,85 +105,68 @@ const rules = reactive({
|
|||||||
{ required: true, message: "请输入经验内容", trigger: "blur" }
|
{ required: true, message: "请输入经验内容", trigger: "blur" }
|
||||||
]
|
]
|
||||||
});
|
});
|
||||||
const formData = ref();
|
const formData = ref([
|
||||||
watch(() =>props.dic.D_BZ_YPLX, (newVal) => {
|
|
||||||
if(newVal){
|
|
||||||
formData.value=[
|
|
||||||
{ label: "报告名称", prop: "bgmc", type: "input", width: "100%", blur: setEditorTextContent },
|
{ label: "报告名称", prop: "bgmc", type: "input", width: "100%", blur: setEditorTextContent },
|
||||||
{
|
{
|
||||||
label: "报告类型", prop: "bglx", type: "select", width: "100%", options: props.dic.D_BZ_YPLX
|
label: "报告类型", prop: "bglx", type: "select", width: "100%", options: D_BZ_YPLX
|
||||||
},
|
},
|
||||||
{ label: "报告内容", prop: "bgnr", type: "slot", width: "100%", blur: setEditorTextContent },
|
]);
|
||||||
]
|
const listQuery = ref({}); //表单
|
||||||
}
|
|
||||||
})
|
|
||||||
|
|
||||||
const listQuery = ref({
|
|
||||||
bgmc: "",
|
|
||||||
bgnr: "",
|
|
||||||
fj: ""
|
|
||||||
}); //表单
|
|
||||||
const loading = ref(false);
|
const loading = ref(false);
|
||||||
const elform = ref();
|
const elform = ref();
|
||||||
const title = ref("");
|
const title = ref("");
|
||||||
/** 外面行数据 */
|
|
||||||
const outRow = ref({})
|
|
||||||
|
|
||||||
|
|
||||||
// 初始化数据
|
// 初始化数据
|
||||||
const init = (type, reportData, row) => {
|
const init = (type, row) => {
|
||||||
|
if(row) listQuery.value = JSON.parse(JSON.stringify(row));
|
||||||
listQuery.value = {
|
|
||||||
bgmc: reportData.bgmc,
|
|
||||||
bgnr: reportData.bgnr,
|
|
||||||
id: reportData.id,
|
|
||||||
bglx: reportData.bglx,
|
|
||||||
}
|
|
||||||
outRow.value = { ...row }
|
|
||||||
dialogForm.value = true;
|
dialogForm.value = true;
|
||||||
title.value = type == "add" ? "新增" :type == "edit"? "编辑" : "详情";
|
title.value = type == "add" ? "新增" :type == "edit"? "编辑" : "详情";
|
||||||
setEditorTextContent()
|
setEditorTextContent()
|
||||||
};
|
};
|
||||||
const getText = (val, row = {}) => {
|
const getText = (val) => {
|
||||||
listQuery.value.fj = val.text;
|
listQuery.value.fj = val.text;
|
||||||
setEditorTextContent()
|
setEditorTextContent()
|
||||||
}
|
}
|
||||||
|
|
||||||
function setEditorTextContent() {
|
function stripReportHeader(html) {
|
||||||
let html = dataBt.value;
|
const source = typeof html === "string" ? html : "";
|
||||||
|
if (!source) return "";
|
||||||
|
const hrMatch = source.match(/<hr\b[^>]*\/?>/i);
|
||||||
html += `<p style="text-align: center;"><span style="font-size: 22px;">${listQuery.value.bgmc || ''}</span></p>`
|
if (hrMatch && typeof hrMatch.index === "number") {
|
||||||
html += `<p>${listQuery.value.fj || ''}</p>`
|
return source.slice(hrMatch.index + hrMatch[0].length).trim();
|
||||||
textContent.value = html
|
}
|
||||||
|
if (typeof dataBt.value === "string" && source.startsWith(dataBt.value)) {
|
||||||
|
return source.slice(dataBt.value.length).trim();
|
||||||
|
}
|
||||||
|
return source.trim();
|
||||||
}
|
}
|
||||||
|
|
||||||
// watch(() => listQuery.value, (val) => {
|
function setEditorTextContent() {
|
||||||
|
let html = dataBt.value;
|
||||||
|
html += `<p style="text-align: center;"><span style="font-size: 22px;">${listQuery.value.bgnr || ''}</span></p>`
|
||||||
|
html += `<p>${listQuery.value.fj || ''}</p>`
|
||||||
|
textContent.value = html;
|
||||||
|
}
|
||||||
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// deep: true, immediate: true
|
|
||||||
// })
|
|
||||||
// 提交
|
// 提交
|
||||||
const submit = () => {
|
const submit = () => {
|
||||||
elform.value.submit((data) => {
|
elform.value.submit( async (data) => {
|
||||||
// let url = title.value == "新增" ? "/mosty-gsxt/gsxt/jyfx/add" : "/mosty-gsxt/gsxt/jyfx/edit";
|
loading.value = true;
|
||||||
|
const params = {
|
||||||
let params = {
|
|
||||||
...data,
|
...data,
|
||||||
ypid: outRow.value.id,
|
bgnr: stripReportHeader(textContent.value)
|
||||||
ypmc: outRow.value.ypyt
|
|
||||||
};
|
};
|
||||||
const apiFun = !listQuery.value.id ? gsxtYpbgAddEntity : gsxtYpbgEditEntity
|
const apiFun = !listQuery.value.id ? gsxtYpbgAddEntity : gsxtYpbgEditEntity;
|
||||||
if (!listQuery.value.id) delete params.id
|
if (!listQuery.value.id) delete params.id;
|
||||||
apiFun(params).then(() => {
|
try {
|
||||||
|
await apiFun(params);
|
||||||
loading.value = false;
|
loading.value = false;
|
||||||
proxy.$message({ type: "success", message: title.value + "成功" });
|
proxy.$message({ type: "success", message: title.value + "成功" });
|
||||||
emit("ok");
|
emit("ok");
|
||||||
close();
|
close();
|
||||||
}).catch(() => {
|
} catch (e) {
|
||||||
loading.value = false;
|
loading.value = false;
|
||||||
})
|
}
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
//编辑器创建成功
|
//编辑器创建成功
|
||||||
@ -194,9 +175,8 @@ const handleCreated = (editor) => {
|
|||||||
};
|
};
|
||||||
//内容发生变化
|
//内容发生变化
|
||||||
const handChange = (editor) => {
|
const handChange = (editor) => {
|
||||||
|
|
||||||
// 判断是否是一个空段落,是空就传空文本
|
// 判断是否是一个空段落,是空就传空文本
|
||||||
|
|
||||||
|
|
||||||
};
|
};
|
||||||
onBeforeUnmount(() => {
|
onBeforeUnmount(() => {
|
||||||
const editor = editorRef.value;
|
const editor = editorRef.value;
|
||||||
@ -206,7 +186,6 @@ onBeforeUnmount(() => {
|
|||||||
|
|
||||||
// 关闭
|
// 关闭
|
||||||
const close = () => {
|
const close = () => {
|
||||||
listQuery.value = {};
|
|
||||||
loading.value = false;
|
loading.value = false;
|
||||||
dialogForm.value = false;
|
dialogForm.value = false;
|
||||||
listQuery.value = {}
|
listQuery.value = {}
|
||||||
|
|||||||
@ -11,7 +11,7 @@
|
|||||||
<el-icon style="vertical-align: middle">
|
<el-icon style="vertical-align: middle">
|
||||||
<CirclePlus />
|
<CirclePlus />
|
||||||
</el-icon>
|
</el-icon>
|
||||||
<span style="vertical-align: middle">自建研判</span>
|
<span style="vertical-align: middle">创建报告</span>
|
||||||
</el-button>
|
</el-button>
|
||||||
</template>
|
</template>
|
||||||
</PageTitle>
|
</PageTitle>
|
||||||
@ -29,7 +29,8 @@
|
|||||||
<template #controls="{ row }">
|
<template #controls="{ row }">
|
||||||
<!-- <el-link size="small" type="primary" @click="getDataById('edit', row)">修改</el-link> -->
|
<!-- <el-link size="small" type="primary" @click="getDataById('edit', row)">修改</el-link> -->
|
||||||
<!-- <el-link size="small" type="danger" @click="getypbgSjzlTjspId(row.id)">提交申请</el-link> -->
|
<!-- <el-link size="small" type="danger" @click="getypbgSjzlTjspId(row.id)">提交申请</el-link> -->
|
||||||
<el-link size="small" type="primary" @click="createReport('edit', row)">编辑</el-link>
|
<el-link size="small" type="warning" @click="handleRow(row)">送审</el-link>
|
||||||
|
<el-link size="small" type="primary" @click="createReport('edit', row)">编辑</el-link>
|
||||||
<el-link size="small" type="primary" @click="createReport('detail', row)">详情</el-link>
|
<el-link size="small" type="primary" @click="createReport('detail', row)">详情</el-link>
|
||||||
|
|
||||||
<!-- <el-link size="small" type="success" @click="createMeeting(row)">创建会议</el-link>-->
|
<!-- <el-link size="small" type="success" @click="createMeeting(row)">创建会议</el-link>-->
|
||||||
@ -51,6 +52,7 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup>
|
<script setup>
|
||||||
|
import { qcckGet } from "@/api/qcckApi";
|
||||||
import PageTitle from "@/components/aboutTable/PageTitle.vue";
|
import PageTitle from "@/components/aboutTable/PageTitle.vue";
|
||||||
import MyTable from "@/components/aboutTable/MyTable.vue";
|
import MyTable from "@/components/aboutTable/MyTable.vue";
|
||||||
import Pages from "@/components/aboutTable/Pages.vue";
|
import Pages from "@/components/aboutTable/Pages.vue";
|
||||||
@ -84,6 +86,22 @@ onMounted(() => {
|
|||||||
}
|
}
|
||||||
getList()
|
getList()
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// 提交审核
|
||||||
|
const handleRow = (row) => {
|
||||||
|
proxy.$confirm('确定提交审核?', '提示', { confirmButtonText: '确定', cancelButtonText: '取消', type: 'warning'}).then(() => {
|
||||||
|
qcckGet({},'/mosty-gsxt/gsxtYpbg/tjsp/'+row.id).then(res => {
|
||||||
|
proxy.$message.success('提交成功');
|
||||||
|
getList();
|
||||||
|
}).catch(() => {
|
||||||
|
proxy.$message.error('提交失败');
|
||||||
|
});
|
||||||
|
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
/** 是否市情报指挥中心 */
|
/** 是否市情报指挥中心 */
|
||||||
const isShiQingBaoZhongXin = computed(() => {
|
const isShiQingBaoZhongXin = computed(() => {
|
||||||
const Jb = deptLevel[0] == '2' ? '01' : deptLevel[0] == '3' ? '02' : '03'
|
const Jb = deptLevel[0] == '2' ? '01' : deptLevel[0] == '3' ? '02' : '03'
|
||||||
@ -149,7 +167,6 @@ const getList = () => {
|
|||||||
let data = { ...pageData.pageConfiger, ...queryFrom.value};
|
let data = { ...pageData.pageConfiger, ...queryFrom.value};
|
||||||
gsxtYpbgGetPageList(data).then(res => {
|
gsxtYpbgGetPageList(data).then(res => {
|
||||||
console.log(res);
|
console.log(res);
|
||||||
|
|
||||||
pageData.tableData = res.records || [];
|
pageData.tableData = res.records || [];
|
||||||
pageData.total = res.total;
|
pageData.total = res.total;
|
||||||
pageData.tableConfiger.loading = false;
|
pageData.tableConfiger.loading = false;
|
||||||
@ -193,7 +210,6 @@ const selfCreateResearch = (type = 'add') => {
|
|||||||
}
|
}
|
||||||
/** 创建报告 */
|
/** 创建报告 */
|
||||||
const createReport = (type,row) => {
|
const createReport = (type,row) => {
|
||||||
console.log(row);
|
|
||||||
reportTc.value.init(type, row)
|
reportTc.value.init(type, row)
|
||||||
// currRow.value = { ...row }
|
// currRow.value = { ...row }
|
||||||
// isShowReport.value = true
|
// isShowReport.value = true
|
||||||
|
|||||||
@ -171,6 +171,7 @@ const getDataById = (type, row) => {
|
|||||||
addForm.value.init(type, row, '01');
|
addForm.value.init(type, row, '01');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
const deleteFile = (row) => {
|
const deleteFile = (row) => {
|
||||||
proxy.$confirm('确定删除选中数据吗?', '提示', {
|
proxy.$confirm('确定删除选中数据吗?', '提示', {
|
||||||
confirmButtonText: '确定',
|
confirmButtonText: '确定',
|
||||||
|
|||||||
@ -32,9 +32,9 @@
|
|||||||
<DictTag :value="row.czzt" :options="D_GSXT_YJXX_CZZT" />
|
<DictTag :value="row.czzt" :options="D_GSXT_YJXX_CZZT" />
|
||||||
</template>
|
</template>
|
||||||
<template #xwfz>
|
<template #xwfz>
|
||||||
<el-table-column prop="bqfz" align="center" label="标签分值" />
|
<el-table-column prop="bqfz" width="80" align="center" label="标签分值" />
|
||||||
<el-table-column prop="pzxs" align="center" label="系数" />
|
<el-table-column prop="pzxs" width="60" align="center" label="系数" />
|
||||||
<el-table-column prop="xwfz" align="center" label="计算分值"/>
|
<el-table-column prop="xwfz" width="90" align="center" label="计算分值"/>
|
||||||
</template>
|
</template>
|
||||||
<template #expand="{ props }">
|
<template #expand="{ props }">
|
||||||
<div class="expand-content" style="max-width: 100%">
|
<div class="expand-content" style="max-width: 100%">
|
||||||
@ -146,7 +146,7 @@ const pageData = reactive({
|
|||||||
pageSize: 20,
|
pageSize: 20,
|
||||||
pageCurrent: 1
|
pageCurrent: 1
|
||||||
}, //分页
|
}, //分页
|
||||||
controlsWidth: 220, //操作栏宽度
|
controlsWidth: 300, //操作栏宽度
|
||||||
tableColumn: [
|
tableColumn: [
|
||||||
{ label: "状态", prop: "czzt", showSolt: true },
|
{ label: "状态", prop: "czzt", showSolt: true },
|
||||||
{ label: "预警时间", prop: "yjsj" },
|
{ label: "预警时间", prop: "yjsj" },
|
||||||
@ -154,7 +154,7 @@ const pageData = reactive({
|
|||||||
{ label: "身份证号", prop: "sfzh" },
|
{ label: "身份证号", prop: "sfzh" },
|
||||||
{ label: "标签", prop: "xwms" },
|
{ label: "标签", prop: "xwms" },
|
||||||
{ label: "接收单位", prop: "ssbm" },
|
{ label: "接收单位", prop: "ssbm" },
|
||||||
{ label: "活动频次", prop: "xwcs", showSolt: true },
|
{ label: "活动频次", prop: "xwcs", showSolt: true,width: 90 },
|
||||||
{ label: "预警分值", prop: "xwfz",showSolt: true },
|
{ label: "预警分值", prop: "xwfz",showSolt: true },
|
||||||
]
|
]
|
||||||
});
|
});
|
||||||
|
|||||||
@ -33,9 +33,9 @@
|
|||||||
<DictTag :value="row.czzt" :options="D_GSXT_YJXX_CZZT" />
|
<DictTag :value="row.czzt" :options="D_GSXT_YJXX_CZZT" />
|
||||||
</template>
|
</template>
|
||||||
<template #sffz>
|
<template #sffz>
|
||||||
<el-table-column prop="bqfz" align="center" label="标签分值" />
|
<el-table-column prop="bqfz" width="80" align="center" label="标签分值" />
|
||||||
<el-table-column prop="pzxs" align="center" label="系数" />
|
<el-table-column prop="pzxs" width="60" align="center" label="系数" />
|
||||||
<el-table-column prop="sffz" align="center" label="计算分值"/>
|
<el-table-column prop="sffz" width="90" align="center" label="计算分值"/>
|
||||||
</template>
|
</template>
|
||||||
<template #expand="{ props }">
|
<template #expand="{ props }">
|
||||||
<div>
|
<div>
|
||||||
@ -119,7 +119,7 @@ const searchConfiger = ref([
|
|||||||
{ label: "部门", prop: 'ssbmdm', placeholder: "请选择部门", showType: "department" },
|
{ label: "部门", prop: 'ssbmdm', placeholder: "请选择部门", showType: "department" },
|
||||||
{ label: "级别", prop: 'bqys', placeholder: "请选择级别", showType: "select", options: D_BZ_YJJB },
|
{ label: "级别", prop: 'bqys', placeholder: "请选择级别", showType: "select", options: D_BZ_YJJB },
|
||||||
{ label: "积分段", prop: 'jfd', placeholder: "请选择积分段", showType: "Slot" },
|
{ label: "积分段", prop: 'jfd', placeholder: "请选择积分段", showType: "Slot" },
|
||||||
{ label: "预警时间", prop: 'times', showType: "datetimerange" },
|
{ label: "预警时间", prop: 'times', showType: "datetimerange" },
|
||||||
]);
|
]);
|
||||||
|
|
||||||
const queryFrom = ref({});
|
const queryFrom = ref({});
|
||||||
@ -139,7 +139,7 @@ const pageData = reactive({
|
|||||||
pageSize: 20,
|
pageSize: 20,
|
||||||
pageCurrent: 1
|
pageCurrent: 1
|
||||||
},
|
},
|
||||||
controlsWidth: 200,
|
controlsWidth: 300,
|
||||||
tableColumn: [
|
tableColumn: [
|
||||||
{ label: "状态", prop: "czzt", showSolt: true },
|
{ label: "状态", prop: "czzt", showSolt: true },
|
||||||
{ label: "预警时间", prop: "yjsj" },
|
{ label: "预警时间", prop: "yjsj" },
|
||||||
@ -147,7 +147,7 @@ const pageData = reactive({
|
|||||||
{ label: "身份证号", prop: "sfzh" },
|
{ label: "身份证号", prop: "sfzh" },
|
||||||
{ label: "标签", prop: "yjbqmc" },
|
{ label: "标签", prop: "yjbqmc" },
|
||||||
{ label: "接收单位", prop: "ssbm" },
|
{ label: "接收单位", prop: "ssbm" },
|
||||||
{ label: "活动频次", prop: "sfcs" },
|
{ label: "活动频次", prop: "sfcs",width:'90' },
|
||||||
{ label: "预警分值", prop: "sffz",showSolt: true },
|
{ label: "预警分值", prop: "sffz",showSolt: true },
|
||||||
]
|
]
|
||||||
});
|
});
|
||||||
|
|||||||
@ -69,8 +69,9 @@ const searchBox = ref(); //搜索框
|
|||||||
import { holographicProfileJump } from "@/utils/tools.js"
|
import { holographicProfileJump } from "@/utils/tools.js"
|
||||||
const searchConfiger = ref(
|
const searchConfiger = ref(
|
||||||
[
|
[
|
||||||
{ label: "预警级别", prop: 'yjjbList', placeholder: "请输入姓名", showType: "select", options: D_BZ_YJJB },
|
{ label: "预警级别", prop: 'yjjbList', placeholder: "请选择预警级别", showType: "select", options: D_BZ_YJJB },
|
||||||
{ label: "来源类型", prop: 'yjlxList', placeholder: "请输入身份证号码", showType: "select", options: D_BZ_YJLY,multiple:true },
|
{ label: "来源类型", prop: 'yjlxList', placeholder: "请选择来源类型", showType: "select", options: D_BZ_YJLY,multiple:true },
|
||||||
|
{ label: "身份证号", prop: 'rysfzh', placeholder: "请输入身份证", showType: "input",},
|
||||||
{ label: "部门", prop: 'ssbmdm', showType: "department"},
|
{ label: "部门", prop: 'ssbmdm', showType: "department"},
|
||||||
{ label: "时间", prop: 'timeRange', showType: "datetimerange"},
|
{ label: "时间", prop: 'timeRange', showType: "datetimerange"},
|
||||||
]);
|
]);
|
||||||
|
|||||||
@ -34,9 +34,9 @@
|
|||||||
<DictTag :value="row.czzt" :options="D_GSXT_YJXX_CZZT" />
|
<DictTag :value="row.czzt" :options="D_GSXT_YJXX_CZZT" />
|
||||||
</template>
|
</template>
|
||||||
<template #sffz>
|
<template #sffz>
|
||||||
<el-table-column prop="bqfz" align="center" label="标签分值" />
|
<el-table-column prop="bqfz" width="80" align="center" label="标签分值" />
|
||||||
<el-table-column prop="pzxs" align="center" label="系数" />
|
<el-table-column prop="pzxs" width="60" align="center" label="系数" />
|
||||||
<el-table-column prop="sffz" align="center" label="计算分值"/>
|
<el-table-column prop="sffz" width="90" align="center" label="计算分值"/>
|
||||||
</template>
|
</template>
|
||||||
<template #controls="{ row }">
|
<template #controls="{ row }">
|
||||||
<el-link type="warning" @click="pushAssess(row)">全息档案</el-link>
|
<el-link type="warning" @click="pushAssess(row)">全息档案</el-link>
|
||||||
@ -133,7 +133,7 @@ const pageData = reactive({
|
|||||||
pageSize: 20,
|
pageSize: 20,
|
||||||
pageCurrent: 1
|
pageCurrent: 1
|
||||||
},
|
},
|
||||||
controlsWidth: 200, //操作栏宽度
|
controlsWidth: 300, //操作栏宽度
|
||||||
tableColumn: [
|
tableColumn: [
|
||||||
{ label: "状态", prop: "czzt", showSolt: true },
|
{ label: "状态", prop: "czzt", showSolt: true },
|
||||||
{ label: "预警时间", prop: "yjsj" ,width: 180},
|
{ label: "预警时间", prop: "yjsj" ,width: 180},
|
||||||
@ -141,8 +141,8 @@ const pageData = reactive({
|
|||||||
{ label: "身份证号", prop: "sfzh" ,width: 180},
|
{ label: "身份证号", prop: "sfzh" ,width: 180},
|
||||||
{ label: "标签", prop: "yjbqmc" },
|
{ label: "标签", prop: "yjbqmc" },
|
||||||
{ label: "接收单位", prop: "ssbm" },
|
{ label: "接收单位", prop: "ssbm" },
|
||||||
{ label: "活动频次", prop: "sfcs" },
|
{ label: "活动频次", prop: "sfcs",width: 90 },
|
||||||
{ label: "预警分值", prop: "sffz",showSolt: true },
|
{ label: "预警分值", prop: "sffz",showSolt: true },
|
||||||
]
|
]
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
@ -10,7 +10,7 @@
|
|||||||
<MyTable :tableData="pageData.tableData" :tableColumn="pageData.tableColumn" :tableHeight="pageData.tableHeight"
|
<MyTable :tableData="pageData.tableData" :tableColumn="pageData.tableColumn" :tableHeight="pageData.tableHeight"
|
||||||
:key="pageData.keyCount" :tableConfiger="pageData.tableConfiger" :controlsWidth="pageData.controlsWidth">
|
:key="pageData.keyCount" :tableConfiger="pageData.tableConfiger" :controlsWidth="pageData.controlsWidth">
|
||||||
<template #sfcs="{ row }">
|
<template #sfcs="{ row }">
|
||||||
<span style="color: #0072ff;" @click="handleClick(row)">{{ row.sfcs }}</span>
|
<span style="color: #0072ff;">{{ row.sfcs }}</span>
|
||||||
</template>
|
</template>
|
||||||
<template #yjjb="{ row }">
|
<template #yjjb="{ row }">
|
||||||
<DictTag :value="row.yjjb" :tag="false" :color="bqYs(row.yjjb)" :options="D_BZ_YJJB" />
|
<DictTag :value="row.yjjb" :tag="false" :color="bqYs(row.yjjb)" :options="D_BZ_YJJB" />
|
||||||
@ -24,10 +24,6 @@
|
|||||||
<template #sffz="{ row }">
|
<template #sffz="{ row }">
|
||||||
<span :style="row.sffz > 100 ? 'color: #ff0000;' : 'color: #0072ff;'">{{ row.sffz }}</span>
|
<span :style="row.sffz > 100 ? 'color: #ff0000;' : 'color: #0072ff;'">{{ row.sffz }}</span>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<!-- <template #yjjb="{ row }">
|
|
||||||
<DictTag :value="row.yjjb" :tag="false" :color="bqYs(row.yjjb)" :options="D_BZ_YJJB" />
|
|
||||||
</template> -->
|
|
||||||
<template #yjtp="{ row }">
|
<template #yjtp="{ row }">
|
||||||
<template v-if="!row.yjtp || row.yjtp.includes('baidu')">
|
<template v-if="!row.yjtp || row.yjtp.includes('baidu')">
|
||||||
<img src="@/assets/images/car.png" width="30" height="30" />
|
<img src="@/assets/images/car.png" width="30" height="30" />
|
||||||
@ -91,14 +87,13 @@ const searchConfiger = ref([
|
|||||||
{ label: "预警类型", prop: 'yjlxList', placeholder: "请选择预警类型", showType: "select", options: [],multiple:true },
|
{ label: "预警类型", prop: 'yjlxList', placeholder: "请选择预警类型", showType: "select", options: [],multiple:true },
|
||||||
{ label: "预警级别", prop: 'yjjbList', placeholder: "请选择预警级别", showType: "select", options: [],multiple:true },
|
{ label: "预警级别", prop: 'yjjbList', placeholder: "请选择预警级别", showType: "select", options: [],multiple:true },
|
||||||
{ label: "预警类别", prop: 'yjlbList', placeholder: "请选择预警级别", showType: "select", options: [],multiple:true },
|
{ label: "预警类别", prop: 'yjlbList', placeholder: "请选择预警级别", showType: "select", options: [],multiple:true },
|
||||||
|
{ label: "时间", prop: 'times', showType: "datetimerange" },
|
||||||
|
{ label: "部门", prop: 'ssbmdm', placeholder: "请选择部门", showType: "department" },
|
||||||
// { label: "号牌类型", prop: 'hplx', placeholder: "请选择号牌类型", showType: "select", options: [] },
|
// { label: "号牌类型", prop: 'hplx', placeholder: "请选择号牌类型", showType: "select", options: [] },
|
||||||
]);
|
]);
|
||||||
|
|
||||||
const queryFrom = ref({});
|
const queryFrom = ref({});
|
||||||
const bqLbData = ref({});
|
|
||||||
const listQuery = reactive({
|
|
||||||
yjlx: []
|
|
||||||
})
|
|
||||||
const pageData = reactive({
|
const pageData = reactive({
|
||||||
tableData: [], //表格数据
|
tableData: [], //表格数据
|
||||||
keyCount: 0,
|
keyCount: 0,
|
||||||
@ -118,7 +113,7 @@ const pageData = reactive({
|
|||||||
tableColumn: [
|
tableColumn: [
|
||||||
{ label: "身份分值", prop: "sffz", showSolt: true },
|
{ label: "身份分值", prop: "sffz", showSolt: true },
|
||||||
// { label: "预警图片", prop: "yjtp", showSlot: true, width: 100 },
|
// { label: "预警图片", prop: "yjtp", showSlot: true, width: 100 },
|
||||||
// { label: "预警时间", prop: "yjsj", showOverflowTooltip: true, width: 150 },
|
{ label: "预警时间", prop: "yjsj",},
|
||||||
{ label: "姓名", prop: "ryxm", showOverflowTooltip: true },
|
{ label: "姓名", prop: "ryxm", showOverflowTooltip: true },
|
||||||
// { label: "车牌号", prop: "cph", showOverflowTooltip: true },
|
// { label: "车牌号", prop: "cph", showOverflowTooltip: true },
|
||||||
// { label: "号牌类型", prop: "hplx", showOverflowTooltip: true },
|
// { label: "号牌类型", prop: "hplx", showOverflowTooltip: true },
|
||||||
@ -159,25 +154,16 @@ const pushAssess = (val) => {
|
|||||||
return holographicProfileJump(val.yjlx,val) // 全息档案跳转
|
return holographicProfileJump(val.yjlx,val) // 全息档案跳转
|
||||||
}
|
}
|
||||||
|
|
||||||
// 获取标签大类数据
|
|
||||||
const gettbGsxtBqglSelectList = (val) => {
|
|
||||||
tbGsxtBqglSelectList({ sflx: val }).then(res => {
|
|
||||||
bqLbData.value.bqXl = res
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获取数据
|
// 获取数据
|
||||||
const getList = (val) => {
|
const getList = () => {
|
||||||
pageData.tableConfiger.loading = true;
|
pageData.tableConfiger.loading = true;
|
||||||
const promes = {
|
const promes = {
|
||||||
...val,
|
|
||||||
...queryFrom.value,
|
...queryFrom.value,
|
||||||
pageCurrent: pageData.pageConfiger.pageCurrent,
|
pageCurrent: pageData.pageConfiger.pageCurrent,
|
||||||
pageSize: pageData.pageConfiger.pageSize
|
pageSize: pageData.pageConfiger.pageSize
|
||||||
}
|
}
|
||||||
if(listQuery.yjlxList?.length) promes.yjlxList = listQuery.yjlxList;
|
delete promes.times;
|
||||||
if(listQuery.yjjbList?.length) promes.yjjbList = listQuery.yjjbList;
|
|
||||||
if(listQuery.yjlbList?.length) promes.yjlbList = listQuery.yjlbList;
|
|
||||||
qcckPost(promes, '/mosty-gsxt/tbYjxx/selectYjxxFzPage').then((res) => {
|
qcckPost(promes, '/mosty-gsxt/tbYjxx/selectYjxxFzPage').then((res) => {
|
||||||
pageData.tableData = res.records || [];
|
pageData.tableData = res.records || [];
|
||||||
pageData.total = res.total;
|
pageData.total = res.total;
|
||||||
@ -217,21 +203,6 @@ const openAddFrom = (row) => {
|
|||||||
emitter.emit('openAddFrom', row)
|
emitter.emit('openAddFrom', row)
|
||||||
}
|
}
|
||||||
|
|
||||||
const handleClick = (row) => {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
// 根据身份分值设置行样式
|
|
||||||
const getRowClassName = (row) => {
|
|
||||||
if (!row.row.sffz) return '';
|
|
||||||
const score = Number(row.row.sffz);
|
|
||||||
if (score >= 90) return 'score-level-high';
|
|
||||||
if (score >= 70) return 'score-level-medium';
|
|
||||||
if (score >= 50) return 'score-level-low';
|
|
||||||
return '';
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
// 表格高度计算
|
// 表格高度计算
|
||||||
const tabHeightFn = () => {
|
const tabHeightFn = () => {
|
||||||
pageData.tableHeight = window.innerHeight - (searchBox.value?.offsetHeight || 0) - 200;
|
pageData.tableHeight = window.innerHeight - (searchBox.value?.offsetHeight || 0) - 200;
|
||||||
@ -242,9 +213,9 @@ const tabHeightFn = () => {
|
|||||||
|
|
||||||
// 搜索
|
// 搜索
|
||||||
const onSearch = (obj) => {
|
const onSearch = (obj) => {
|
||||||
listQuery.yjlxList = obj.yjlxList || null
|
queryFrom.value = {...obj }
|
||||||
listQuery.yjjbList = obj.yjjbList || null
|
queryFrom.value.startTime = obj.times ? obj.times[0] : ''
|
||||||
listQuery.yjlbList = obj.yjlbList || null
|
queryFrom.value.endTime = obj.times ? obj.times[1] : ''
|
||||||
getList()
|
getList()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -90,14 +90,14 @@ const pageData = reactive({
|
|||||||
pageSize: 20,
|
pageSize: 20,
|
||||||
pageCurrent: 1
|
pageCurrent: 1
|
||||||
}, //分页
|
}, //分页
|
||||||
controlsWidth: 160, //操作栏宽度
|
controlsWidth: 100, //操作栏宽度
|
||||||
tableColumn: [
|
tableColumn: [
|
||||||
{ label: "状态", prop: "czzt", showSolt: true },
|
{ label: "状态", prop: "czzt", showSolt: true },
|
||||||
{ label: "预警时间", prop: "yjSj" },
|
{ label: "预警时间", prop: "yjSj",width:180 },
|
||||||
{ label: "人员姓名", prop: "yjRyxm", },
|
{ label: "人员姓名", prop: "yjRyxm", },
|
||||||
{ label: "身份证号", prop: "yjRysfzh", },
|
{ label: "身份证号", prop: "yjRysfzh",width:180 },
|
||||||
{ label: "性别", prop: "sex" ,showSolt: true },
|
{ label: "性别", prop: "sex" ,showSolt: true,width:80 },
|
||||||
{ label: "年龄", prop: "age", showSolt: true },
|
{ label: "年龄", prop: "age", showSolt: true,width:80 },
|
||||||
{ label: "预警级别", prop: "yjJb", showSolt: true },
|
{ label: "预警级别", prop: "yjJb", showSolt: true },
|
||||||
{ label: "人员类别", prop: "bqdl", showSolt: true },
|
{ label: "人员类别", prop: "bqdl", showSolt: true },
|
||||||
{ label: "细类", prop: "yjbqmc" },
|
{ label: "细类", prop: "yjbqmc" },
|
||||||
|
|||||||
@ -253,73 +253,10 @@ const handleOpenNotification = () => {
|
|||||||
}
|
}
|
||||||
const makerCenter = () => {
|
const makerCenter = () => {
|
||||||
const dw = require("@/assets/point/dingwei.png")
|
const dw = require("@/assets/point/dingwei.png")
|
||||||
// qcckGet({},'/mosty-gsxt/lzJcjPjdb/selectCount').then(res=>{
|
|
||||||
// // qcckGet({},'/mosty-gsxt/tbYjxx/selectSsbm').then(res=>{
|
|
||||||
// emitter.emit('deletePointArea','hm')
|
|
||||||
// let list = res || [];
|
|
||||||
// list.forEach(item => {
|
|
||||||
// (item.jqjb || []).forEach(v=>{
|
|
||||||
// v.jbmc = D_BZ_JQDJ.value.find(itm => itm.value == v.jbdm).label
|
|
||||||
// })
|
|
||||||
// let obj = centralPoint.find(i => i.name == item.ssbm || i.ssbmdm == item.ssbmdm);
|
|
||||||
// if(obj){
|
|
||||||
// item.jd = obj.point[0];
|
|
||||||
// item.wd = obj.point[1];
|
|
||||||
// }
|
|
||||||
// })
|
|
||||||
|
|
||||||
|
|
||||||
// allDep.value = list;
|
|
||||||
// console.log( allDep.value);
|
|
||||||
|
|
||||||
// emitter.emit("addPointArea", { coords:list, icon: dw, flag: "hm", size: '14px', showTitle: false, offset: [0, -25] });
|
|
||||||
// })
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
qcckGet({}, '/mosty-gsxt/lzJcjPjdb/selectCountNew').then(res => {
|
qcckGet({}, '/mosty-gsxt/lzJcjPjdb/selectCountNew').then(res => {
|
||||||
console.log(res);
|
let list = res || [];
|
||||||
|
|
||||||
let list = res || [];
|
|
||||||
list.forEach(item => {
|
|
||||||
// (item.jqjb || []).forEach(v=>{
|
|
||||||
// v.jbmc = D_BZ_JQDJ.value.find(itm => itm.value == v.jbdm).label
|
|
||||||
// })
|
|
||||||
// console.log(item);
|
|
||||||
|
|
||||||
// jbmc:item.jqjb.jbmc
|
|
||||||
let obj = centralPoint.find(i => i.name == item.ssbm || i.ssbmdm == item.ssbmdm);
|
|
||||||
if(obj){
|
|
||||||
item.jd = obj.point[0];
|
|
||||||
item.wd = obj.point[1];
|
|
||||||
}
|
|
||||||
})
|
|
||||||
allDep.value = list;
|
allDep.value = list;
|
||||||
emitter.emit("addPointArea", { coords:list, icon: dw, flag: "hm", size: '14px', showTitle: false, offset: [0, -25] });
|
emitter.emit("addPointArea", { coords:list, icon: dw, flag: "hm", size: '14px', showTitle: false, offset: [0, -25] });
|
||||||
// let obj = centralPoint.find(i => i.name == item.ssbm || i.ssbmdm == item.ssbmdm);
|
|
||||||
// if(obj){
|
|
||||||
// item.jd = obj.point[0];
|
|
||||||
// item.wd = obj.point[1];
|
|
||||||
// }
|
|
||||||
// qcckGet({},'/mosty-gsxt/tbYjxx/selectSsbm').then(res=>{
|
|
||||||
// emitter.emit('deletePointArea','hm')
|
|
||||||
// let list = res || [];
|
|
||||||
// list.forEach(item => {
|
|
||||||
// (item.jqjb || []).forEach(v=>{
|
|
||||||
// v.jbmc = D_BZ_JQDJ.value.find(itm => itm.value == v.jbdm).label
|
|
||||||
// })
|
|
||||||
// let obj = centralPoint.find(i => i.name == item.ssbm || i.ssbmdm == item.ssbmdm);
|
|
||||||
// if(obj){
|
|
||||||
// item.jd = obj.point[0];
|
|
||||||
// item.wd = obj.point[1];
|
|
||||||
// }
|
|
||||||
// })
|
|
||||||
|
|
||||||
|
|
||||||
// allDep.value = list;
|
|
||||||
// console.log( allDep.value);
|
|
||||||
|
|
||||||
// emitter.emit("addPointArea", { coords:list, icon: dw, flag: "hm", size: '14px', showTitle: false, offset: [0, -25] });
|
|
||||||
})
|
})
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -4,7 +4,13 @@
|
|||||||
<div class="mr10"><img :src="item.icon" alt=""></div>
|
<div class="mr10"><img :src="item.icon" alt=""></div>
|
||||||
<div class="vountItem">
|
<div class="vountItem">
|
||||||
<div style="color:#ffffff" class="f16 lh20">{{ item.label }}</div>
|
<div style="color:#ffffff" class="f16 lh20">{{ item.label }}</div>
|
||||||
<div class="mt4 f12" style="color: #ffffff;font-size: 24px;">{{ item.value }}</div>
|
<div v-if="!item.isChild" class="mt4 f12" style="color: #ffffff;font-size: 24px;">{{ item.value }}</div>
|
||||||
|
<div v-else class="mt4 flex align-center just-between" style="color: #ffffff;">
|
||||||
|
<!-- 未处置: -->
|
||||||
|
<span class="f24" style="color: #ff0000;" title="未处置">0</span>
|
||||||
|
<!-- 已处置: -->
|
||||||
|
<span class="f24" style="color: #4cf35d;" title="已处置">0</span>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -24,9 +30,9 @@ import keyGroups from "@/views/home/components/keyGroups.vue";
|
|||||||
|
|
||||||
const contentItem = ref([
|
const contentItem = ref([
|
||||||
{ type:"jqzs", label: "今日警情", value: "0" ,icon:require('@/assets/images/top-1.png')},
|
{ type:"jqzs", label: "今日警情", value: "0" ,icon:require('@/assets/images/top-1.png')},
|
||||||
{ type:"yjzs", label: "今日预警", value: "0",icon:require('@/assets/images/top-2.png') },
|
|
||||||
{ type:"zdry", label: "重点人员总数", value: "0",icon:require('@/assets/images/top-3.png') },
|
{ type:"zdry", label: "重点人员总数", value: "0",icon:require('@/assets/images/top-3.png') },
|
||||||
{ type:"zdqt", label: "重点群体总数", value: "0" ,icon:require('@/assets/images/top-4.png')},
|
{ type:"zdqt", label: "重点群体总数", value: "0" ,icon:require('@/assets/images/top-4.png')},
|
||||||
|
{ type:"yjzs", label: "今日预警", value: "0",isChild:true,icon:require('@/assets/images/top-2.png') },
|
||||||
]);
|
]);
|
||||||
|
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
|
|||||||
Reference in New Issue
Block a user