Merge remote-tracking branch 'origin/main'

main
hansha 2 years ago
commit 53515711b9

@ -42,3 +42,12 @@ export function delJmtag(jmId) {
method: 'delete' method: 'delete'
}) })
} }
// 新增居民标签关联
export function addAllJmtag(data) {
return request({
url: '/szxc/jmtag/addAll',
method: 'post',
data: data
})
}

@ -13,33 +13,18 @@
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item label="姓名" prop="name"> <el-form-item label="手机号" prop="phone">
<el-input <el-input
v-model="queryParams.name" v-model="queryParams.phone"
placeholder="请输入姓名" placeholder="请输入手机号"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item label="是否户主" prop="head"> <el-form-item label="姓名" prop="name">
<el-select
v-model="queryParams.head"
placeholder="是否户主"
clearable
style="width:100%"
>
<el-option
v-for="dict in dict.type.szxc_head"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
<el-form-item label="曾用名" prop="oldName">
<el-input <el-input
v-model="queryParams.oldName" v-model="queryParams.name"
placeholder="请输入曾用名" placeholder="请输入姓名"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
@ -59,38 +44,22 @@
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="国籍" prop="nationality"> <el-form-item label="是否注销" prop="off">
<el-select <el-select
v-model="queryParams.nationality" v-model="queryParams.off"
placeholder="国籍" placeholder="是否注销"
clearable clearable
style="width:100%" style="width:100%"
> >
<el-option <el-option
v-for="dict in dict.type.szxc_gj" v-for="dict in dict.type.szxc_off"
:key="dict.value" :key="dict.value"
:label="dict.label" :label="dict.label"
:value="dict.value" :value="dict.value"
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="出生日期" prop="bornDate"> <el-form-item label="籍贯" prop="jg">
<el-date-picker clearable
v-model="queryParams.bornDate"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择出生日期">
</el-date-picker>
</el-form-item>
<el-form-item label="年龄" prop="age">
<el-input
v-model="queryParams.age"
placeholder="请输入年龄"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="籍贯" v-if="queryMore" prop="jg">
<el-input <el-input
v-model="queryParams.jg" v-model="queryParams.jg"
placeholder="请输入籍贯" placeholder="请输入籍贯"
@ -98,21 +67,51 @@
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item label="与户主关系" v-if="queryMore" prop="relation"> <el-form-item label="是否户主" prop="head">
<el-select v-model="queryParams.head" placeholder="是否户主"
clearable style="width:100%">
<el-option
v-for="dict in dict.type.szxc_head"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
<el-form-item label="与户主关系" prop="relation">
<el-select v-model="queryParams.relation" placeholder="与户主关系"
clearable style="width:100%">
<el-option
v-for="dict in dict.type.szxc_hzgx"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
<el-form-item label="国籍" v-if="queryMore" prop="nationality">
<el-select <el-select
v-model="queryParams.relation" v-model="queryParams.nationality"
placeholder="与户主关系" placeholder="国籍"
clearable clearable
style="width:100%" style="width:100%"
> >
<el-option <el-option
v-for="dict in dict.type.szxc_hzgx" v-for="dict in dict.type.szxc_gj"
:key="dict.value" :key="dict.value"
:label="dict.label" :label="dict.label"
:value="dict.value" :value="dict.value"
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="曾用名" v-if="queryMore" prop="oldName">
<el-input
v-model="queryParams.oldName"
placeholder="请输入曾用名"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="户籍性质" v-if="queryMore" prop="jgNature"> <el-form-item label="户籍性质" v-if="queryMore" prop="jgNature">
<el-select <el-select
v-model="queryParams.jgNature" v-model="queryParams.jgNature"
@ -151,13 +150,13 @@
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item label="手机号" v-if="queryMore" prop="phone"> <el-form-item label="出生日期" v-if="queryMore" prop="bornDate">
<el-input <el-date-picker clearable
v-model="queryParams.phone" v-model="queryParams.bornDate"
placeholder="请输入手机号" type="date"
clearable value-format="yyyy-MM-dd"
@keyup.enter.native="handleQuery" placeholder="请选择出生日期">
/> </el-date-picker>
</el-form-item> </el-form-item>
<el-form-item label="现居住地" v-if="queryMore" prop="currentAddress"> <el-form-item label="现居住地" v-if="queryMore" prop="currentAddress">
<el-input <el-input
@ -257,21 +256,6 @@
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="是否注销" v-if="queryMore" prop="off">
<el-select
v-model="queryParams.off"
placeholder="是否注销"
clearable
style="width:100%"
>
<el-option
v-for="dict in dict.type.szxc_off"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
<el-form-item> <el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery"></el-button> <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery"></el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery"></el-button> <el-button icon="el-icon-refresh" size="mini" @click="resetQuery"></el-button>
@ -327,7 +311,7 @@
</el-row> </el-row>
<el-table v-loading="loading" :data="jminfoList" @selection-change="handleSelectionChange" border> <el-table v-loading="loading" :data="jminfoList" @selection-change="handleSelectionChange" border>
<el-table-column type="selection" width="50" align="center" fixed/> <el-table-column type="selection" width="45" align="center" fixed/>
<el-table-column label="居民ID" align="center" prop="id" fixed/> <el-table-column label="居民ID" align="center" prop="id" fixed/>
<el-table-column label="人员基本信息" align="center"> <el-table-column label="人员基本信息" align="center">
<el-table-column label="姓名" align="center" prop="name" min-width="80"/> <el-table-column label="姓名" align="center" prop="name" min-width="80"/>
@ -343,7 +327,6 @@
<span>{{ parseTime(scope.row.bornDate, '{y}-{m}-{d}') }}</span> <span>{{ parseTime(scope.row.bornDate, '{y}-{m}-{d}') }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="年龄" align="center" prop="age" />
<el-table-column label="性别" align="center" prop="sex"> <el-table-column label="性别" align="center" prop="sex">
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag :options="dict.type.sys_user_sex" :value="scope.row.sex"/> <dict-tag :options="dict.type.sys_user_sex" :value="scope.row.sex"/>
@ -362,11 +345,6 @@
<dict-tag :options="dict.type.szxc_hjxz" :value="scope.row.jgNature"/> <dict-tag :options="dict.type.szxc_hjxz" :value="scope.row.jgNature"/>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="是否户主" align="center" prop="head" >
<template slot-scope="scope">
<dict-tag :options="dict.type.szxc_head" :value="scope.row.head"/>
</template>
</el-table-column>
<el-table-column label="与户主关系" align="center" prop="relation" min-width="100"> <el-table-column label="与户主关系" align="center" prop="relation" min-width="100">
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag :options="dict.type.szxc_hzgx" :value="scope.row.relation"/> <dict-tag :options="dict.type.szxc_hzgx" :value="scope.row.relation"/>
@ -439,14 +417,12 @@
<el-button <el-button
size="mini" size="mini"
type="text" type="text"
@click="handleUpdate(scope.row)" @click="handleJmtag(scope.row)"
v-hasPermi="['szxc:jminfo:edit']"
>人员标签</el-button> >人员标签</el-button>
<el-button <el-button
size="mini" size="mini"
type="text" type="text"
@click="handleUpdate(scope.row)" @click="handleUpdate(scope.row)"
v-hasPermi="['szxc:jminfo:edit']"
>银行卡信息</el-button> >银行卡信息</el-button>
</template> </template>
</el-table-column> </el-table-column>
@ -508,26 +484,9 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8">
<el-form-item label="是否户主" prop="head">
<el-select
v-model="form.head"
placeholder="是否户主"
clearable
style="width:100%"
>
<el-option
v-for="dict in dict.type.szxc_head"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="与户主关系" prop="relation"> <el-form-item label="与户主关系" prop="relation">
<el-select <el-select @change="relationChange"
v-model="form.relation" v-model="form.relation"
placeholder="与户主关系" placeholder="与户主关系"
clearable clearable
@ -542,8 +501,6 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row>
<el-row :gutter="10">
<el-col :span="8"> <el-col :span="8">
<el-form-item label="是否常住" prop="longLive"> <el-form-item label="是否常住" prop="longLive">
<el-select <el-select
@ -561,23 +518,6 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8">
<el-form-item label="是否注销" prop="off">
<el-select
v-model="form.off"
placeholder="是否注销"
clearable
style="width:100%"
>
<el-option
v-for="dict in dict.type.szxc_off"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
</el-col>
</el-row> </el-row>
<el-divider content-position="left">人员基本信息</el-divider> <el-divider content-position="left">人员基本信息</el-divider>
@ -626,13 +566,6 @@
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8">
<el-form-item label="年龄" prop="age">
<el-input v-model="form.age" placeholder="请输入年龄" />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="10">
<el-col :span="8"> <el-col :span="8">
<el-form-item label="性别" prop="sex"> <el-form-item label="性别" prop="sex">
<el-select <el-select
@ -760,7 +693,7 @@
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="健康状况" prop="jkzk"> <el-form-item label="健康状况" prop="jkzk">
<el-select <el-select @change="jkzkChange"
v-model="form.jkzk" v-model="form.jkzk"
placeholder="健康状况" placeholder="健康状况"
clearable clearable
@ -776,7 +709,7 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row :gutter="10"> <el-row :gutter="10" v-if="form.jkzk==='4'">
<el-col :span="16"> <el-col :span="16">
<el-form-item label="疾病描述" prop="ills"> <el-form-item label="疾病描述" prop="ills">
<el-input v-model="form.ills" placeholder="请输入疾病描述" /> <el-input v-model="form.ills" placeholder="请输入疾病描述" />
@ -791,7 +724,7 @@
</el-dialog> </el-dialog>
<el-dialog title="选择户主信息" :visible.sync="hzInfo.dialogVisible" width="900px" append-to-body> <el-dialog title="选择户主信息" :visible.sync="hzInfo.dialogVisible" width="900px" append-to-body>
<el-form :model="hzInfo.queryParams" ref="queryForm" size="small" :inline="true" label-width="68px"> <el-form :model="hzInfo.queryParams" ref="queryForm" size="small" :inline="true" label-width="70px">
<el-form-item label="身份证号" prop="idCard"> <el-form-item label="身份证号" prop="idCard">
<el-input <el-input
v-model="hzInfo.queryParams.idCard" v-model="hzInfo.queryParams.idCard"
@ -811,8 +744,8 @@
<el-form-item> <el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="hzInfoQuery"></el-button> <el-button type="primary" icon="el-icon-search" size="mini" @click="hzInfoQuery"></el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
<el-alert title="双击选择户主" type="warning" :closable="false"></el-alert>
<el-table v-loading="hzInfo.loading" :data="hzInfo.addressList" border @cell-dblclick="hzInfoDblclick"> <el-table v-loading="hzInfo.loading" :data="hzInfo.addressList" border @cell-dblclick="hzInfoDblclick">
<el-table-column label="序号" align="center" prop="index" width="50"> <el-table-column label="序号" align="center" prop="index" width="50">
<template slot-scope="scope"> <template slot-scope="scope">
@ -820,11 +753,11 @@
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="户号" align="center" prop="acountNo" /> <el-table-column label="户号" align="center" prop="acountNo" />
<el-table-column label="身份证号" align="center" prop="idCard" />
<el-table-column label="姓名" align="center" prop="name" /> <el-table-column label="姓名" align="center" prop="name" />
<el-table-column label="户籍地址" align="center" prop="hjAddress" /> <el-table-column label="户籍地址" align="center" prop="hjAddress" />
<el-table-column label="所属网格" align="center" prop="deptName" /> <el-table-column label="所属网格" align="center" prop="deptName" />
</el-table> </el-table>
<pagination <pagination
v-show="hzInfo.total>0" v-show="hzInfo.total>0"
:total="hzInfo.total" :total="hzInfo.total"
@ -832,7 +765,17 @@
:limit.sync="hzInfo.queryParams.pageSize" :limit.sync="hzInfo.queryParams.pageSize"
@pagination="getlistAddress" @pagination="getlistAddress"
/> />
</el-dialog>
<el-dialog title="选择人员标签" :visible.sync="rybqInfo.dialogVisible" width="600px" append-to-body>
<div class="personnelTags">
<el-checkbox-group v-model="rybqInfo.checkListIds">
<el-checkbox v-for="item in rybqInfo.checkboxList" :key="item.id" :label="item.id" border>{{ item.tagName }}</el-checkbox>
</el-checkbox-group>
</div>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="rybqSubmit"> </el-button>
</div>
</el-dialog> </el-dialog>
</div> </div>
@ -841,6 +784,8 @@
<script> <script>
import { listJminfo, getJminfo, delJminfo, addJminfo, updateJminfo } from "@/api/szxc/jminfo"; import { listJminfo, getJminfo, delJminfo, addJminfo, updateJminfo } from "@/api/szxc/jminfo";
import { listAddress } from "@/api/szxc/address"; import { listAddress } from "@/api/szxc/address";
import { listJmtag, addAllJmtag } from "@/api/szxc/jmtag";
import { listTag } from "@/api/szxc/tag";
import { deptTreeSelect } from "@/api/system/user"; import { deptTreeSelect } from "@/api/system/user";
import Treeselect from "@riophae/vue-treeselect"; import Treeselect from "@riophae/vue-treeselect";
import "@riophae/vue-treeselect/dist/vue-treeselect.css"; import "@riophae/vue-treeselect/dist/vue-treeselect.css";
@ -849,7 +794,7 @@ export default {
name: "Jminfo", name: "Jminfo",
components: { Treeselect }, components: { Treeselect },
dicts: ['szxc_hjxz', 'szxc_gj', 'szxc_head', 'szxc_hzgx', 'szxc_long_live', 'szxc_off', 'szxc_gj', 'sys_user_sex', dicts: ['szxc_hjxz', 'szxc_gj', 'szxc_head', 'szxc_hzgx', 'szxc_long_live', 'szxc_off', 'szxc_gj', 'sys_user_sex',
'szxc_brqk', 'szxc_hyzk', 'szxc_xueli', 'szxc_zjxy', 'szxc_jkzk'], 'szxc_brqk', 'szxc_hyzk', 'szxc_xueli', 'szxc_zjxy', 'szxc_jkzk', 'szxc_zzmm'],
data() { data() {
return { return {
queryMore: false, queryMore: false,
@ -1003,7 +948,20 @@ export default {
deptId: null deptId: null
}, },
// //
addressList: [] addressList: [],
//
selectRow: null
},
//
rybqInfo: {
jmId: null,
dialogVisible: false,
//
checkList: [],
// Ids
checkListIds: [],
//
checkboxList: []
} }
}; };
}, },
@ -1127,6 +1085,12 @@ export default {
this.getList(); this.getList();
}); });
} else { } else {
this.form.off = '0';
if(this.form.relation==='1'){
this.form.head = '0';
}else {
this.form.head = '1';
}
addJminfo(this.form).then(response => { addJminfo(this.form).then(response => {
this.$modal.msgSuccess("新增成功"); this.$modal.msgSuccess("新增成功");
this.open = false; this.open = false;
@ -1167,13 +1131,81 @@ export default {
}, },
// //
hzInfoDblclick(row) { hzInfoDblclick(row) {
console.log(row) this.hzInfo.selectRow = row;
this.form.acountNo = row.acountNo; this.form.acountNo = row.acountNo;
this.form.deptId = row.deptId; this.form.deptId = row.deptId;
this.form.deptName = row.deptName; this.form.deptName = row.deptName;
this.form.hjAddress = row.hjAddress; this.form.hjAddress = row.hjAddress;
this.hzInfo.dialogVisible = false this.hzInfo.dialogVisible = false
}, },
//
relationChange(val){
if(val==='1'){
this.form.cardId = this.hzInfo.selectRow.idCard;
this.form.name = this.hzInfo.selectRow.name;
}else {
this.form.cardId = '';
this.form.name = '';
}
},
//
jkzkChange(){
this.form.ills = '';
},
//
handleJmtag(row){
this.rybqInfo.dialogVisible = true;
this.getlistTag(row);
this.getlistJmtag(row);
},
/** 查询人员标签列表 */
getlistTag() {
listTag({
pageNum: 1,
pageSize: 100000000,
}).then(response => {
this.rybqInfo.checkboxList = response.rows;
});
},
/** 查询关联人员标签列表 */
getlistJmtag(row) {
this.rybqInfo.jmId = row.id;
listJmtag({
pageNum: 1,
pageSize: 100000000,
jmId: row.id
}).then(response => {
this.rybqInfo.checkListIds = []
this.rybqInfo.checkList = response.rows;
this.rybqInfo.checkList.forEach(item =>{
this.rybqInfo.checkListIds.push(item.tagId)
})
});
},
/** 人员标签选择提交 */
rybqSubmit(){
let szxcJmTags = [];
let checkListIds = this.rybqInfo.checkListIds;
let checkboxList = this.rybqInfo.checkboxList;
for (let i = 0; i < checkboxList.length; i++) {
for (let j = 0; j < checkListIds.length; j++) {
if (checkboxList[i].id === checkListIds[j]) {
szxcJmTags.push({
jmId: this.rybqInfo.jmId,
tagId: checkboxList[i].id,
tagName: checkboxList[i].tagName
});
}
}
}
addAllJmtag({
szxcJmTags: szxcJmTags
}).then(response => {
this.$modal.msgSuccess("操作成功");
this.rybqInfo.dialogVisible = false;
});
}
} }
}; };
</script> </script>
@ -1205,4 +1237,13 @@ export default {
} }
} }
} }
.personnelTags{
padding: 0px 30px;
.el-checkbox--medium{
margin: 5px 10px !important;
}
}
</style> </style>

Loading…
Cancel
Save