This commit is contained in:
lcw
2026-01-23 15:43:22 +08:00
parent 47a7081963
commit 5b62d707ff
76 changed files with 3333 additions and 880 deletions

View File

@ -22,6 +22,19 @@
</div>
</div>
</template>
<template #shzt>
<div v-if="disabled">
<h3 class="tags-title">审核状态</h3>
<div style="display: flex;justify-content:space-between;width: 200%;">
<div style="display: flex;">
市审核状态<DictTag v-model:value="listQuery.sldshzt" :options="dict.D_BZ_SSSHZT" :tag="false" />
</div>
<div style="display: flex;">
县审核状态<DictTag v-model:value="listQuery.xldshzt" :options="dict.D_BZ_SSSHZT" :tag="false" />
</div>
</div>
</div>
</template>
</FormMessage>
<!-- </div> -->
<div class="tags-section" v-if="disabled">
@ -170,9 +183,8 @@ watch(() => dialogForm.value, (val) => {
{ label: "情报标题", prop: "qbmc", type: "input", width: '45%' },
{ label: "情报内容", prop: "qbnr", type: "textarea", width: '100%', rows: 100 },
{ label: "附件上传", prop: "fjdz", type: "upload", width: '100%', isImg: false },
{ label: "", prop: "jbxx", type: "slot", width: '100%', isImg: false },
{ label: "", prop: "jbxx", type: "slot", width: '100%',},
{ label: "", prop: "shzt", type: "slot", width: '100%' },
]
}
}
@ -294,7 +306,6 @@ const lcList = ref([])
const getqbcjPldb = (id) => {
xxcjSelectCzlcList({ qbid: id }).then(res => {
console.log(res);
lcList.value = res || []
})
.catch(() => {

View File

@ -1,42 +1,42 @@
<template>
<div>
<!-- 搜索 -->
<div ref="searchBox" class="mt10">
<div ref="searchBox" class="mt10">
<Searchs :searchArr="searchConfiger" @submit="onSearch" :key="pageData.keyCount" />
</div>
<div class="titleBox">
<PageTitle>
<el-button type="primary" @click="addEdit('add')">
<el-icon style="vertical-align: middle">
<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 style="vertical-align: middle">新增</span>
<span class="vertical-middle">新增</span>
</el-button>
<el-button type="primary" @click="dologCancel()">
<el-icon style="vertical-align: middle">
<el-button type="primary" @click="dologCancel()" size="small">
<el-icon class="vertical-middle">
<CirclePlus />
</el-icon>
<span style="vertical-align: middle">导出</span>
<span class="vertical-middle">导出</span>
</el-button>
<el-button type="primary" :disabled="ids.length === 0" @click="handleSumbit(ids)" v-if="qxkz.deptLevel != '01'">
<el-icon style="vertical-align: middle">
<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 style="vertical-align: middle">上报</span>
<span class="vertical-middle">上报</span>
</el-button>
<el-button type="primary" :disabled="ids.length === 0" @click="delDictItem(ids)">
<el-icon style="vertical-align: middle">
<el-button type="primary" :disabled="ids.length === 0" @click="delDictItem(ids)" size="small">
<el-icon class="vertical-middle">
<CirclePlus />
</el-icon>
<span style="vertical-align: middle">删除</span>
</el-button>
</PageTitle>
</div>
<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" @handleRowClick="openXxqk">
@chooseData="chooseData" @handleCellClick="openXxqk">
<template #qblx="{ row }">
<DictTag :tag="false" :value="row.qblx" :options="D_GS_XS_LX" />
</template>
@ -52,31 +52,34 @@
<template #cyqk="{ row }">
<el-link v-if="isShowBtn('采纳')" size="small" type="danger" @click="cnMsg(row)"
:disabled="butcontroll('02', row.lczt)">采纳</el-link>
:disabled="butcontroll('04', row.lczt)">采纳</el-link>
<!-- 只有上报状态才能回退 -->
<el-link v-if="isShowBtn('回退')" size="small" type="danger" @click="rollbackNewspapers(row)"
:disabled="butcontroll('03', row.lczt)">回退</el-link>
:disabled="butcontroll('04', row.lczt)">回退</el-link>
</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"
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)">上报</el-link>
<!-- 只有上报状态才能进行采纳 -->
<!-- 只有采纳状态才能分组 -->
<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="opneMsg(row)"
:disabled="butcontroll('01', row.lczt)">分组</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="delDictItem(row.id)">删除</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('续报', 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="butcontroll('01', row.lczt)">转线索</el-link>
: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> -->
@ -84,10 +87,10 @@
<!-- <el-link v-if="isShowBtn('转会商')" size="small" type="primary" @click="handleTransferMerchant(row)"
:disabled="butcontroll('01', row.lczt)">转会商</el-link> -->
<el-link v-if="isShowBtn('关注部门')" 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)"
:disabled="butcontroll('01', row.lczt)">打标签</el-link>
:disabled="row.sldshzt != '02' ">打标签</el-link>
</template>
</MyTable>
<Pages @changeNo="changeNo" @changeSize="changeSize" :tableHeight="pageData.tableHeight" :pageConfiger="{
@ -96,7 +99,7 @@
}"></Pages>
</div>
<!-- 新增 -->
<AddForm ref="detailDiloag" @getList="getList" :titleData="titleData" :dict="{ D_BZ_LCZT }" />
<AddForm ref="detailDiloag" @getList="getList" :titleData="titleData" :dict="{ D_BZ_LCZT, D_BZ_SSSHZT }" />
</div>
<ExportFile v-model="exportFileModel" :tableColumn="tableColumn" :dict="{ D_GS_XS_LY, D_GS_XS_LX, D_GS_XS_LX }"
:dataModel="pageData.tableData" />
@ -120,7 +123,7 @@ 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 } from '@/api/xxcj.js'
import { xxcjSelectXxsbPage, xxcjDeletes, xxcjXxzsx, xxcjUpdateCzlc, xxcjXxqd, xxcjXxcjTjsh } from '@/api/xxcj.js'
import { reactive, ref, onMounted, getCurrentInstance, nextTick } from "vue";
import MakeTag from '../components/maketag.vue'
import ExportFile from './components/exportFile.vue'
@ -133,11 +136,11 @@ import transferMerchant from "./components/transferMerchant.vue";
import { isShiQingZhi } from "@/utils/auth.js"
const { proxy } = getCurrentInstance();
const { D_GS_XS_LY, D_BZ_SSZT, D_BZ_SF, D_GS_XS_LX, D_BZ_BQJB,
const { D_GS_XS_LY, D_BZ_SSSHZT, D_BZ_SSZT, D_BZ_SF, D_GS_XS_LX, D_BZ_BQJB,
D_GS_XS_QTLX, D_GS_ZDQT_LB,
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",
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();
@ -158,9 +161,9 @@ const isShowTransferMerchantTc = ref(false)
const isShow = ref(false)
const searchConfiger = ref([
{ label: "录入人", prop: 'keyword', placeholder: "请输入录入人", showType: "input" },
{ label: "录入人", prop: 'xssbr', placeholder: "请输入录入人", showType: "input" },
{ label: "录入单位", prop: "ssbmdm", placeholder: "请选择录入单位", showType: "department" },
{ label: "编号", prop: 'keyword', placeholder: "请输入编号", showType: "input" },
{ label: "编号", prop: 'xsBh', placeholder: "请输入编号", showType: "input" },
{ label: "时间", prop: "startTime", placeholder: "请选择时间", showType: "daterange" },
{ label: "情报标题", prop: 'qbmc', placeholder: "请输入情报标题", showType: "input" },
{ label: "标签级别", prop: 'qbjb', placeholder: "请选择标签级别", showType: "select", options: D_BZ_BQJB },
@ -351,6 +354,7 @@ const handleSumbit = () => {
// <!-- [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':
@ -359,6 +363,8 @@ const butcontroll = (val, zt) => {
return !(['03', '05'].includes(zt))
case '03':
return !(['02', '03', '04'].includes(zt))
case '04':
return ([ '04', '05' ,'06', '07', '08', '09'].includes(zt))
}
}
@ -421,18 +427,18 @@ const tableColumn = reactive([
])
// 详情
const addEdit = (type, row) => {
isShow.value = true;
setTimeout(() => {
detailDiloag.value.init(type, row);
}, 500)
};
const openXxqk = (row) => {
isShow.value = true;
setTimeout(() => {
detailDiloag.value.init('info', row);
}, 500)
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()
@ -442,6 +448,8 @@ const qxkz = reactive({
roleCode: false,
depBool: false
});
const qxzt = ref(false)
onMounted(() => {
const { deptBizType, deptLevel } = getItem('deptId')[0]
const Jb = deptLevel[0] == '2' ? '01' : deptLevel[0] == '3' ? '02' : '03'
@ -518,6 +526,13 @@ const openFkDialogszl = (row) => {
}
}
/** 获取当前角色 */
function getRole() {
const { deptBizType, deptLevel } = getItem('deptId')[0]
@ -539,8 +554,8 @@ const isShowBtn = (btnName, row = {}) => {
/** 按钮权限 */
const buttonPermissions = {
"市情指领导": ["肯定", "采纳", "回退", "分组", "转线索", "转合成", "转会商", "打标签", "修改", "详情", "关注部门"],
"市情指挥人员": ["采纳", "回退", "分组", "转线索", "转合成", "转会商", "打标签", "修改", "详情", "关注部门"],
"县情指人员": ["上报", "回退", "修改", "详情"],
"市情指挥人员": ["采纳", "回退", "分组", "转线索", "转合成", "转会商", "打标签", "修改", "详情", "关注部门", "送审"],
"县情指人员": ["上报", "回退", "修改", "详情", "送审"],
"部门": ["上报", "新增", "修改", "续报", "详情"]
};
@ -561,7 +576,29 @@ const handleTransferMerchant = (row) => {
}
// 送审
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>
<style lang="scss" scoped>
@ -597,4 +634,8 @@ const handleTransferMerchant = (row) => {
height: calc(100% - 50px);
overflow: auto;
}
.vertical-middle {
vertical-align: middle;
}
</style>