This commit is contained in:
2025-07-20 19:20:12 +08:00
parent 83d732d805
commit b8f943ca79
7 changed files with 104 additions and 158 deletions

View File

@ -3,23 +3,12 @@
<div class="head_box">
<span class="title">社会信息人员建设管理{{ title }} </span>
<div>
<el-button
type="primary"
size="small"
:loading="loading"
@click="submit"
>保存</el-button
>
<el-button type="primary" size="small" :loading="loading" @click="submit">保存</el-button>
<el-button size="small" @click="close">关闭</el-button>
</div>
</div>
<div class="form_cnt">
<FormMessage
v-model="listQuery"
:formList="formData"
ref="elform"
:rules="rules"
></FormMessage>
<FormMessage v-model="listQuery" :formList="formData" ref="elform" :rules="rules"></FormMessage>
</div>
</div>
</template>
@ -91,12 +80,12 @@ const validateIdentity = () => {
callback(new Error("身份证地区非法"));
// 出生日期验证
var sBirthday = (
value.substr(6, 4) +
"-" +
Number(value.substr(10, 2)) +
"-" +
Number(value.substr(12, 2))
).replace(/-/g, "-"),
value.substr(6, 4) +
"-" +
Number(value.substr(10, 2)) +
"-" +
Number(value.substr(12, 2))
).replace(/-/g, "-"),
d = new Date(sBirthday);
let yyyy = d.getFullYear();
let mm = d.getMonth() + 1;
@ -166,7 +155,7 @@ const rules = reactive({
],
...rule.phoneRule({ require: true, validator: true }, "ryLxdh") // 是否必填 是否进行校验 可以传第二个参数
});
onMounted(() => {});
onMounted(() => { });
// 初始化数据
const init = (type, row) => {
@ -195,7 +184,7 @@ const submit = () => {
emit("updateDate");
close();
})
.catch(() => {});
.catch(() => { });
});
};

View File

@ -3,68 +3,39 @@
<div class="titleBox">
<PageTitle title="社会信息人员建设管理">
<el-button type="primary" @click="addEdit('add', '')">
<el-icon style="vertical-align: middle"><CirclePlus /></el-icon>
<el-icon style="vertical-align: middle">
<CirclePlus />
</el-icon>
<span style="vertical-align: middle">新增</span>
</el-button>
<el-button type="primary" @click="importData">
<el-icon style="vertical-align: middle"><Upload /></el-icon>
<span style="vertical-align: middle">导入</span>
</el-button>
<el-button type="primary" @click="exportData">
<el-icon style="vertical-align: middle"><Download /></el-icon>
<span style="vertical-align: middle">导出</span>
</el-button>
</PageTitle>
</div>
<!-- 搜索 -->
<div ref="searchBox">
<Search
:searchArr="searchConfiger"
@submit="onSearch"
:key="pageData.keyCount"
/>
<Search :searchArr="searchConfiger" @submit="onSearch" :key="pageData.keyCount" />
</div>
<!-- 表格 -->
<div class="tabBox">
<MyTable
:tableData="pageData.tableData"
:tableColumn="pageData.tableColumn"
:tableHeight="pageData.tableHeight"
:key="pageData.keyCount"
:tableConfiger="pageData.tableConfiger"
:controlsWidth="pageData.controlsWidth"
@chooseData="chooseData"
>
<MyTable :tableData="pageData.tableData" :tableColumn="pageData.tableColumn" :tableHeight="pageData.tableHeight"
:key="pageData.keyCount" :tableConfiger="pageData.tableConfiger" :controlsWidth="pageData.controlsWidth"
@chooseData="chooseData">
<template #ryMz="{ row }">
<DictTag :tag="false" :value="row.ryMz" :options="D_BZ_MZ" />
</template>
<!-- 操作 -->
<template #controls="{ row }">
<el-link size="small" type="success" @click="addEdit('edit', row)"
>编辑</el-link
>
<el-link size="small" type="danger" @click="deleteRow(row.id)"
>删除</el-link
>
<el-link size="small" type="success" @click="addEdit('edit', row)">编辑</el-link>
<el-link size="small" type="danger" @click="deleteRow(row.id)">删除</el-link>
</template>
</MyTable>
<Pages
@changeNo="changeNo"
@changeSize="changeSize"
:tableHeight="pageData.tableHeight"
:pageConfiger="{
...pageData.pageConfiger,
total: pageData.total
}"
></Pages>
<Pages @changeNo="changeNo" @changeSize="changeSize" :tableHeight="pageData.tableHeight" :pageConfiger="{
...pageData.pageConfiger,
total: pageData.total
}"></Pages>
</div>
<!-- 详情 -->
<DetailForm
v-if="show"
@updateDate="getList"
ref="detailDiloag"
:dic="{ D_BZ_WHCD, D_BZ_MZ, D_BZ_XB, D_BZ_ZZMM }"
/>
<DetailForm v-if="show" @updateDate="getList" ref="detailDiloag"
:dic="{ D_BZ_WHCD, D_BZ_MZ, D_BZ_XB, D_BZ_ZZMM }" />
</div>
</template>
@ -76,7 +47,6 @@ import Search from "@/components/aboutTable/Search.vue";
import DetailForm from "./components/addForm.vue";
import { qcckGet, qcckPost, qcckDelete } from "@/api/qcckApi.js";
import { reactive, ref, onMounted, getCurrentInstance, nextTick } from "vue";
import { CirclePlus, Upload, Download } from "@element-plus/icons-vue";
import { ElMessage } from "element-plus";
const { proxy } = getCurrentInstance();
const { D_BZ_WHCD, D_BZ_MZ, D_BZ_XB, D_BZ_ZZMM } = proxy.$dict(
@ -111,7 +81,7 @@ const pageData = reactive({
pageSize: 20,
pageCurrent: 1
},
controlsWidth: 200,
controlsWidth: 120,
tableColumn: [
{ label: "姓名", prop: "ryXm" },
{ label: "联系电话", prop: "ryLxdh" },
@ -169,7 +139,7 @@ const deleteRow = (id) => {
getList();
});
})
.catch(() => {});
.catch(() => { });
};
// 详情

View File

@ -75,6 +75,7 @@ const dialogForm = ref(false); //弹窗
const rules = reactive({
bsDwDm: [{ required: true, message: "请选择报送单位", trigger: "change" }],
ssbmdm: [{ required: true, message: "请选择所属部门", trigger: "change" }],
rwBt: [{ required: true, message: "请输入任务标题", trigger: "blur" }],
rwBh: [{ required: true, message: "请输入任务编号", trigger: "blur" }],
rwLy: [{ required: true, message: "请选择任务来源", trigger: "change" }],
@ -84,7 +85,7 @@ const rules = reactive({
rwNr: [{ required: true, message: "请输入任务内容", trigger: "blur" }],
});
const formData = ref([
{ label: "所属单位", prop: "ssbmdm",depMc:'ssbmmc', type: "department" },
{ label: "所属部门", prop: "ssbmdm",depMc:'ssbmmc', type: "department" },
{ label: "报送单位", prop: "bsDwDm",depMc:'bsDwMc', type: "department" },
{ label: "任务标题", prop: "rwBt", type: "input" },
{ label: "任务编号", prop: "rwBh", type: "input" },
@ -109,6 +110,7 @@ const init = (type, row) => {
if (row) {
qcckGet({}, "/mosty-gsxt/tbGsxtRlqbRwdd/selectVoById/" + row.id).then((res) => {
res.xsList = res.xsList || [];
roleIdsxs.value = res.xsList.map(v=>v.id);
listQuery.value = res;
});
}
@ -141,8 +143,8 @@ const choosed = (data) => {
// 关闭
const close = () => {
listQuery.value = {};
dialogForm.value = false;
loading.value = false;
dialogForm.value = false;
};
// 删除
const delDictItem = (id) => {

View File

@ -12,14 +12,7 @@
</div>
<!-- 搜索 -->
<div ref="searchBox">
<Search :searchArr="searchConfiger" @submit="onSearch" :key="pageData.keyCount">
<!-- 所属单位 -->
<template #ssbmdm>
<el-select v-model="listQuery.ssbmdm" placeholder="请选择所属单位" style="width: 240px">
<el-option v-for="item in deptList" :key="item.value" :label="item.label" :value="item.value.toString()" />
</el-select>
</template>
</Search>
<Search :searchArr="searchConfiger" @submit="onSearch" :key="pageData.keyCount"> </Search>
</div>
<!-- 表格 -->
<div class="tabBox">

View File

@ -2,11 +2,8 @@
<div>
<div class="titleBox">
<PageTitle title="人力情报信息采集流转">
<el-button type="primary">情报研判分析</el-button>
<el-button type="primary" @click="handleHB">线索串联</el-button>
<el-button type="primary" @click="addEdit">
<el-icon style="vertical-align: middle"><CirclePlus /></el-icon>
<span style="vertical-align: middle">导出</span>
</el-button>
</PageTitle>
</div>
<!-- 搜索 -->
@ -60,10 +57,14 @@
<AddForm ref="detailDiloag" v-if="isShow" :dic="{D_BZ_SF,D_BZ_XB,D_GS_XS_LY,D_BZ_SSZT,D_GS_XS_LX ,D_GS_XS_QTLX}" />
<ZlForm ref="zlDialog" v-if="isShow" :dic="{D_GS_XS_ZLLX,D_GS_ZDQT_FXDJ}"></ZlForm>
<HbForm ref="isShowhB" :dic="{D_GS_XS_LX,D_GS_XS_LY,D_GS_XS_CZZT,D_BZ_XSSHZT,D_GS_XS_QTLX}"></HbForm>
<teleport to="#app">
<!-- <Qbypfx></Qbypfx> -->
</teleport>
</div>
</template>
<script setup>
import Qbypfx from './qbypfx/index.vue'
import PageTitle from "@/components/aboutTable/PageTitle.vue";
import MyTable from "@/components/aboutTable/MyTable.vue";
import Pages from "@/components/aboutTable/Pages.vue";
@ -106,7 +107,7 @@ const pageData = reactive({
pageSize: 20,
pageCurrent: 1
},
controlsWidth: 220,
controlsWidth: 150,
tableColumn: [
{ label: "线索编号", prop: "xsBh" },
{ label: "线索名称", prop: "xsMc" },

View File

@ -0,0 +1,53 @@
<template>
<div class="container">
<div class="header flex just-between">
<span>情报研判分析</span>
<span class="pointer"><el-icon><Close /></el-icon></span>
</div>
<div class="contant">
<div class="contant-left aside">
<div></div>
</div>
<div class="contant-right aside"></div>
</div>
</div>
</template>
<script setup>
</script>
<style lang="scss" scoped>
.container{
width: 100%;
height: 100%;
background: #fff;
color: #333;
padding: 10px;
box-sizing: border-box;
.header{
height: 60px;
font-size: 30px;
font-weight: 600;
}
.contant{
position: relative;
height: calc(100% - 65px);
overflow: hidden;
overflow-y: auto;
.aside{
position: absolute;
width: 400px;
height: 100%;
top: 0;
background: red;
}
.contant-left{
left: 0;
}
.contant-right{
right: 0;
}
}
}
</style>