This commit is contained in:
2025-07-08 10:18:56 +08:00
parent 234bf6ecc4
commit a36c2e8646
5 changed files with 41 additions and 412 deletions

View File

@ -101,7 +101,7 @@ export default {
this.commit("user/setUserName", data.userName); this.commit("user/setUserName", data.userName);
setItem('isOatuh', 0) setItem('isOatuh', 0)
setItem("USERNAME", data.userName); setItem("USERNAME", data.userName);
setItem("roleList", data.roleList); setItem("roleList", data.roleList ? data.roleList : []);
setItem("SFRH", data.sfrh); setItem("SFRH", data.sfrh);
setItem("USERID", data.userId); setItem("USERID", data.userId);
setItem("PermissionsInfo", data.permissionsInfo); setItem("PermissionsInfo", data.permissionsInfo);

View File

@ -1,221 +0,0 @@
<template>
<div class="dialog" v-if="dialogForm">
<div class="head_box">
<span class="title">{{ title }}</span>
<div>
<el-button size="small" @click="close">关闭</el-button>
</div>
</div>
<div class="cntinfo">
<el-tabs v-model="activeName">
<el-tab-pane label="场所信息" name="basic">
<el-form :model="listQuery" :label-width="230" label-position="left">
<div class="flex align-center">
<div style="width: calc(100% - 176px);">
<div class="form-row">
<el-form-item label="统一社会信用代码">
<el-input v-model="listQuery.tyshdm" placeholder="ktv"/>
</el-form-item>
<el-form-item label="单位名称(营业执照登记名称)">
<el-input v-model="listQuery.djmc" placeholder="请输入"/>
</el-form-item>
</div>
<div class="form-row">
<el-form-item label="场所名称">
<el-input v-model="listQuery.csmc" placeholder="请输入"/>
</el-form-item>
<el-form-item label="场所联系电话">
<el-input v-model="listQuery.cslxdh" placeholder="请输入"/>
</el-form-item>
</div>
<div class="form-row">
<el-form-item label="经营状况">
<el-input v-model="listQuery.csdm" placeholder="请输入"/>
</el-form-item>
<el-form-item label="场所面积">
<el-input v-model="listQuery.csmj" placeholder="请输入"/>
</el-form-item>
</div>
<div class="form-row">
<el-form-item label="开业日期">
<el-input v-model="listQuery.kyrq" placeholder="请输入"/>
</el-form-item>
</div>
</div>
<img height="130" src="@/assets/images/person.png" alt="">
</div>
<el-form-item label="单位注册地址">
<el-input v-model="listQuery.dwzcdz" placeholder="请输入"/>
</el-form-item>
<el-form-item label="场所地址">
<el-input v-model="listQuery.csdz" placeholder="请输入"/>
</el-form-item>
<div class="flex align-center">
<div style="width: calc(100% - 176px);">
<div class="form-row">
<el-form-item label="法定代表人">
<el-input v-model="listQuery.fddbr" placeholder="请输入"/>
</el-form-item>
<el-form-item label="法定代表人证件号码">
<el-input v-model="listQuery.fddbrzjhm" placeholder="请输入"/>
</el-form-item>
</div>
<div class="form-row">
<el-form-item label="法定代表人联系电话">
<el-input v-model="listQuery.fddbrLxdh" placeholder="请输入"/>
</el-form-item>
<el-form-item label="法定代表人居住地址">
<el-input v-model="listQuery.fddbrJzdz" placeholder="请输入"/>
</el-form-item>
</div>
<div class="form-row">
<el-form-item label="场所负责人">
<el-input v-model="listQuery.csfzr" placeholder="请输入"/>
</el-form-item>
<el-form-item label="场所负责人身份证号">
<el-input v-model="listQuery.csfzrSfzh" placeholder="请输入"/>
</el-form-item>
</div>
<div class="form-row">
<el-form-item label="场所负责人联系方式">
<el-input v-model="listQuery.csfzrLxfs" placeholder="请输入"/>
</el-form-item>
<el-form-item label="场所负责人居住地址">
<el-input v-model="listQuery.csfzrJzdz" placeholder="请输入"/>
</el-form-item>
</div>
</div>
<div>
<img height="65" style="width: 100%;" src="@/assets/images/person.png" alt="">
<img height="65" style="width: 100%;" src="@/assets/images/person.png" alt="">
</div>
</div>
<div class="upload-group">
<el-form-item label="营业执照照片">
<img height="130" src="@/assets/images/person.png" alt="">
<img height="130" src="@/assets/images/person.png" alt="">
<img height="130" src="@/assets/images/person.png" alt="">
</el-form-item>
</div>
<div class="form-row">
<el-form-item label="机修场所备案编号">
<el-input v-model="listQuery.jxcsbabh" placeholder="请输入"/>
</el-form-item>
<el-form-item label="场所备案机构名称">
<el-input v-model="listQuery.ylcsbajgmc" placeholder="请输入"/>
</el-form-item>
</div>
<div class="form-row">
<el-form-item label="备案登记日期">
<el-input v-model="listQuery.badjrq" placeholder="请输入"/>
</el-form-item>
<el-form-item label="所属辖区">
<el-input v-model="listQuery.ssxq" placeholder="请输入"/>
</el-form-item>
</div>
<div class="form-row">
<el-form-item label="责任民警">
<el-input v-model="listQuery.zrmj" placeholder="请输入"/>
</el-form-item>
<el-form-item label="警号">
<el-input v-model="listQuery.jh" placeholder="请输入"/>
</el-form-item>
</div>
</el-form>
</el-tab-pane>
<el-tab-pane label="从业人员" name="staff">
<!-- 从业人员表格 -->
</el-tab-pane>
</el-tabs>
</div>
</div>
</template>
<script setup>
import { ref, reactive } from 'vue';
import { Plus } from '@element-plus/icons-vue';
const dialogForm = ref(false);
const activeName = ref('basic');
const title = ref('开锁业场所管理详情');
const listQuery = ref({});
const areaOptions = ref([]); // 区域选项数据
// 初始化数据
const init = (type, row,) => {
dialogForm.value = true;
// 根据type和row初始化表单数据
};
const close = () => {
dialogForm.value = false;
};
defineExpose({init})
</script>
<style lang="scss" scoped>
.dialog {
padding: 20px;
:deep(.el-form-item__label) {
background-color: #F7FAFB;
padding: 0px 8px;
color: #000;
font-weight: 500;
border: 1px solid #E3E7ED;
}
.head_box {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 20px;
}
.cntinfo{
height: calc(100% - 70px);
overflow: hidden;
overflow-y: auto;
}
.form-row {
display: flex;
.el-form-item {
flex: 1;
}
}
.upload-group {
display: flex;
// gap: 20px;
.el-form-item {
flex: 1;
}
}
.unit {
margin-left: 5px;
}
::v-deep .el-input__inner{
height: 36px !important;
line-height: 36px !important;
border-radius: 0;
color: #777575;
}
}
.el-form-item--default{
margin-bottom: 0px;
}
</style>

View File

@ -1,68 +1,29 @@
<template> <template>
<div> <div>
<div class="titleBox"> <div class="titleBox">
<PageTitle title="布控审批" /> <PageTitle title="布控审批">
<div class="sub-nav">
<el-tabs v-model="activeSubNav" @click="handleType">
<el-tab-pane label="我的发起" name="myInitiate"></el-tab-pane>
<el-tab-pane label="我的审核" name="myAudit"></el-tab-pane>
<el-tab-pane label="我的审批" name="myApprove"></el-tab-pane>
<el-tab-pane label="我的签收" name="mySign"></el-tab-pane>
<el-tab-pane label="我的处置" name="myHandle"></el-tab-pane>
</el-tabs>
</div>
</PageTitle>
</div> </div>
<!-- 搜索 --> <!-- 搜索 -->
<div ref="searchBox"> <div ref="searchBox">
<!-- 顶部主导航 -->
<div class="main-nav">
<el-button
:class="['nav-btn', activeMainNav === 'todo' ? 'active' : '']"
@click="activeMainNav = 'todo'"
>
我的待办
</el-button>
<el-button
:class="['nav-btn', activeMainNav === 'done' ? 'active' : '']"
@click="activeMainNav = 'done'"
>
我的已办
</el-button>
</div>
<!-- 子导航 -->
<div class="sub-nav">
<el-tabs v-model="activeSubNav" @click="handleType">
<el-tab-pane label="我的发起" name="myInitiate"></el-tab-pane>
<el-tab-pane label="我的审核" name="myAudit"></el-tab-pane>
<el-tab-pane label="我的审批" name="myApprove"></el-tab-pane>
<el-tab-pane label="我的签收" name="mySign"></el-tab-pane>
<el-tab-pane label="我的处置" name="myHandle"></el-tab-pane>
</el-tabs>
</div>
<Search <Search
:searchArr="searchConfiger" :searchArr="searchConfiger"
@submit="onSearch" @submit="onSearch"
:key="pageData.keyCount" :key="pageData.keyCount"
> >
<template #defaultSlot>
<div>
<el-input-number v-model="queryFrom.xqy"></el-input-number>
<span class="ml10 mr10" style="color: #000"></span>
<el-input-number v-model="queryFrom.dqy"></el-input-number>
</div>
</template>
</Search> </Search>
</div> </div>
<!-- 表格 --> <!-- 表格 -->
<div class="tabBox"> <div class="tabBox">
<div ref="btns" class="btns flexcb">
<div class="">
<el-button>批量处理</el-button>
<el-button>导出</el-button>
</div>
<el-input
v-model="input2"
style="max-width: 300px"
placeholder="请输入关键字"
>
<template #append
><el-button type="primary" icon="Search"></el-button
></template>
</el-input>
</div>
<MyTable <MyTable
:tableData="pageData.tableData" :tableData="pageData.tableData"
:tableColumn="pageData.tableColumn" :tableColumn="pageData.tableColumn"
@ -91,6 +52,7 @@
</div> </div>
<div class="flex"> <div class="flex">
<el-button <el-button
:key="index"
type="primary" type="primary"
size="small" size="small"
v-for="(item, index) in row.bqList" v-for="(item, index) in row.bqList"
@ -104,7 +66,6 @@
<div>创建单位{{ row.xtCjbmmc }}</div> <div>创建单位{{ row.xtCjbmmc }}</div>
</template> </template>
<template #gkxx="{ row }"> <template #gkxx="{ row }">
<!-- <div>群体标签{{ }}</div> -->
<div>管辖单位{{ row.gxSsdwmc }}</div> <div>管辖单位{{ row.gxSsdwmc }}</div>
<div>列控原因{{ row.zdrLkyy }}</div> <div>列控原因{{ row.zdrLkyy }}</div>
<div>开始时间{{ row.startTime }}</div> <div>开始时间{{ row.startTime }}</div>
@ -119,29 +80,29 @@
<!-- 操作 --> <!-- 操作 -->
<template #controls="{ row }"> <template #controls="{ row }">
<el-button <el-link
size="small" size="small"
type="primary"
@click="autoEdit('auto', row)" @click="autoEdit('auto', row)"
v-if="row.qtZt === '02' && activeSubNav === 'myAudit'" v-if="row.qtZt === '02' && activeSubNav === 'myAudit'"
>审核</el-button >审核</el-link
> >
<el-button <el-link
size="small" size="small"
type="success"
@click="autoEdit('approval', row)" @click="autoEdit('approval', row)"
v-if="row.qtZt === '04' && activeSubNav === 'myApprove'" v-if="row.qtZt === '04' && activeSubNav === 'myApprove'"
>审批</el-button >审批</el-link
> >
<el-button size="small" @click="autoEdit('detail', row)" <el-link size="small" type="info" @click="autoEdit('detail', row)"
>详情</el-button >详情</el-link
> >
<!-- <el-button size="small">从业人员</el-button>
<el-button size="small">转区域</el-button> -->
</template> </template>
</MyTable> </MyTable>
<Pages <Pages
@changeNo="changeNo" @changeNo="changeNo"
@changeSize="changeSize" @changeSize="changeSize"
:tableHeight="pageData.tableHeight + 42" :tableHeight="pageData.tableHeight"
:pageConfiger="{ :pageConfiger="{
...pageData.pageConfiger, ...pageData.pageConfiger,
total: pageData.total total: pageData.total
@ -158,38 +119,19 @@ 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";
import Search from "@/components/aboutTable/Search.vue"; import Search from "@/components/aboutTable/Search.vue";
import DetailForm from "./components/detailForm.vue";
import { qcckGet, qcckPost, qcckDelete } from "@/api/qcckApi.js"; import { qcckGet, qcckPost, qcckDelete } from "@/api/qcckApi.js";
import { reactive, ref, onMounted, getCurrentInstance } from "vue"; import { reactive, ref, onMounted, getCurrentInstance } from "vue";
import { setItem, getItem, removeAllItem } from "@/utils/storage"; import { setItem, getItem } from "@/utils/storage";
import { selectUserDeptPage } from "@/api/user-manage"; import { selectUserDeptPage } from "@/api/user-manage";
import MpvGroupInfo from "../mpvGroup/index.vue"; import MpvGroupInfo from "../mpvGroup/components/infoForm.vue";
const { proxy } = getCurrentInstance(); const { proxy } = getCurrentInstance();
const { const { D_GS_ZDQT_FXDJ, D_GS_ZDR_RYJB, D_GS_ZDR_BK_ZT } = proxy.$dict("D_GS_ZDQT_FXDJ","D_GS_ZDR_RYJB","D_GS_ZDR_BK_ZT" ); //获取字典数据
D_GS_ZDQT_FXDJ,
D_GS_ZDR_RYJB,
D_GS_ZDQT_LB,
D_GS_ZDR_BK_ZT,
D_GS_BQ_LX,
D_GS_ZDQT_ZT
} = proxy.$dict(
"D_GS_ZDQT_FXDJ",
"D_GS_ZDR_RYJB",
"D_GS_ZDQT_LB",
"D_GS_ZDR_BK_ZT",
"D_GS_BQ_LX",
"D_GS_ZDQT_ZT"
); //获取字典数据
const deptList = ref([]); //部门列表 const deptList = ref([]); //部门列表
const detailDiloag = ref();
const searchBox = ref(); //搜索框 const searchBox = ref(); //搜索框
const btns = ref();
const userId = getItem("USERID"); const userId = getItem("USERID");
const MpvGroupInfoRef = ref(null); const MpvGroupInfoRef = ref(null);
// 主导航激活状态
const activeMainNav = ref("todo");
// 子导航激活状态 // 子导航激活状态
const activeSubNav = ref("myAudit"); const activeSubNav = ref("myAudit");
const searchConfiger = ref([ const searchConfiger = ref([
@ -212,84 +154,12 @@ const searchConfiger = ref([
placeholder: "请选择重点人人员级别", placeholder: "请选择重点人人员级别",
showType: "select", showType: "select",
options: D_GS_ZDR_RYJB options: D_GS_ZDR_RYJB
},
{
label: "成员姓名",
prop: "cyXm ",
placeholder: "请输入成员姓名",
showType: "input"
},
{
label: "群体类别",
prop: "qtLb",
placeholder: "请选择群体类别",
showType: "select",
options: D_GS_ZDQT_LB
},
{
label: "成员身份证号",
prop: "cySfzh",
placeholder: "请输入成员身份证号",
showType: "input"
},
{
label: "群体大类",
prop: "qtDl",
placeholder: "请输入群体大类",
showType: "input"
},
{
label: "群体细类",
prop: "qtXl",
placeholder: "请输入群体细类",
showType: "input"
},
{
label: "管辖单位名称",
prop: "gxSsdwmc",
placeholder: "请输入管辖单位名称",
showType: "input"
},
{
label: "开始时间",
prop: "startTime",
placeholder: "请输入开始时间",
showType: "date"
},
{
label: "截至时间",
prop: "endTime",
placeholder: "请输入截至时间",
showType: "date"
},
{
label: "布控状态",
prop: "zdrBkZt",
placeholder: "请输入布控装态",
showType: "select",
options: D_GS_ZDR_BK_ZT
},
{
label: "布控类型",
prop: "bkzt",
placeholder: "请输入布控类型",
showType: "select",
options: D_GS_BQ_LX
} }
]); ]);
const queryFrom = ref({}); const queryFrom = ref({});
const userInfo = ref({}); const userInfo = ref({});
const pageData = reactive({ const pageData = reactive({
tableData: [ tableData: [], //表格数据
{
name: "1",
ssxq: "1",
cyxm: "1",
qqksrxm: "1",
qqksrsfzh: "1",
jzrxm: "1"
}
], //表格数据
keyCount: 0, keyCount: 0,
tableConfiger: { tableConfiger: {
rowHieght: 61, rowHieght: 61,
@ -317,10 +187,6 @@ onMounted(() => {
getdepartmentList(); getdepartmentList();
}); });
// 详情
const info = (type, row) => {
MpvGroupInfoRef.value.init(type, row);
};
// 获取部门列表 // 获取部门列表
const getdepartmentList = () => { const getdepartmentList = () => {
selectUserDeptPage().then((res) => { selectUserDeptPage().then((res) => {
@ -339,7 +205,7 @@ const getUserInfo = async () => {
}; };
//选择类型 //选择类型
const handleType = (val) => { const handleType = () => {
pageData.keyCount++; pageData.keyCount++;
pageData.pageConfiger.pageCurrent = 1; pageData.pageConfiger.pageCurrent = 1;
@ -384,19 +250,13 @@ const getList = (val) => {
// 详情 // 详情
const autoEdit = (type, row) => { const autoEdit = (type, row) => {
MpvGroupInfoRef.value.infoList(type, row); MpvGroupInfoRef.value.init(type, row);
}; };
// 表格高度计算 // 表格高度计算
const tabHeightFn = () => { const tabHeightFn = () => {
console.log("btns.value.offsetHeight", btns.value.offsetHeight);
pageData.tableHeight = pageData.tableHeight =
window.innerHeight - window.innerHeight - searchBox.value.offsetHeight - 260;
searchBox.value.offsetHeight -
btns.value.offsetHeight -
30 -
250;
window.onresize = function () { window.onresize = function () {
tabHeightFn(); tabHeightFn();
}; };
@ -413,6 +273,7 @@ const tabHeightFn = () => {
margin-right: 10px; margin-right: 10px;
border: none; border: none;
background: none; background: none;
&.active { &.active {
background-color: #409eff; background-color: #409eff;
color: #fff; color: #fff;
@ -432,12 +293,12 @@ const tabHeightFn = () => {
height: 1px; height: 1px;
} }
:deep(.el-table--fit) {
top: 52px !important;
}
.btns { .btns {
height: 52px; height: 52px;
padding: 10px; padding: 10px;
box-sizing: border-box; box-sizing: border-box;
} }
::v-deep .el-tabs__nav-wrap::after {
background: none;
}
</style> </style>

View File

@ -92,7 +92,7 @@
</template> </template>
</el-dialog> </el-dialog>
<!-- 编辑 --> <!-- 编辑 -->
<EditForm v-if="show" @updateDate="updateDate" ref="editFormDiloag" /> <EditForm v-if="show" @updateDate="getList" ref="editFormDiloag" />
<!-- 详情 --> <!-- 详情 -->
<DetailForm ref="detailDiloag" /> <DetailForm ref="detailDiloag" />
</div> </div>
@ -213,24 +213,14 @@ const openDetail = (row) => {
const autoEdit = () => { const autoEdit = () => {
dialogVisible.value = false; dialogVisible.value = false;
let url = `/mosty-gsxt/tbGsxtZdqt/subExamine/${autoId.value}`; let url = `/mosty-gsxt/tbGsxtZdqt/subExamine/${autoId.value}`;
qcckPost({}, url) qcckPost({}, url).then((res) => {
.then((res) => { ElMessage.success("提交成功");
ElMessage.success("提交成功"); getList();
getList(); }).catch(() => {
}) ElMessage.error("提交失败");
.catch(() => { });
ElMessage.error("提交失败");
});
};
const updateDate = () => {
getList();
};
//选择类型
const handleType = (val) => {
pageData.keyCount++;
pageData.pageConfiger.pageCurrent = 1;
getList();
}; };
// 搜索 // 搜索
const onSearch = (val) => { const onSearch = (val) => {
queryFrom.value = { ...val }; queryFrom.value = { ...val };

View File

@ -54,7 +54,6 @@
<template #controls="{ row }"> <template #controls="{ row }">
<el-link type="primary" size="small">网上会商</el-link> <el-link type="primary" size="small">网上会商</el-link>
<el-link type="primary" size="small">处置</el-link> <el-link type="primary" size="small">处置</el-link>
<el-link type="primary" size="small">反馈</el-link>
</template> </template>
</MyTable> </MyTable>
</div> </div>