<template>
|
<el-form ref="FromMsg" :rules="rules" :inline="true" :model="FromMsg" class="demo-form-inline" label-width="110px">
|
<div>
|
<el-form-item label="姓名" prop="name">
|
<el-input :disabled="true" placeholder="" v-model="FromMsg.name" maxlength="10" show-word-limit></el-input>
|
</el-form-item>
|
<el-form-item label="健康状况">
|
<el-select :disabled="true" placeholder="" v-model="FromMsg.healthy">
|
<el-option v-for="item in healthList" :key="item.value"
|
:label="item.label" :value="item.value"></el-option>
|
</el-select>
|
</el-form-item>
|
</div>
|
<div>
|
<el-form-item label="公民身份号码" prop="cardNo">
|
<el-input :disabled="true" placeholder="" v-model="FromMsg.cardNo"></el-input>
|
</el-form-item>
|
<el-form-item label="工作单位">
|
<el-input :disabled="true" placeholder="" maxlength="50" show-word-limit v-model="FromMsg.workCompany"></el-input>
|
</el-form-item>
|
</div>
|
<div>
|
<el-form-item label="政治面貌">
|
<el-select :disabled="true" placeholder="" v-model="FromMsg.politicalOutlook">
|
<el-option v-for="item in politicalOutlookList" :key="item.value"
|
:label="item.label" :value="item.value"></el-option>
|
</el-select>
|
</el-form-item>
|
<el-form-item label="职业资料" >
|
<el-input :disabled="true" placeholder="" v-model="FromMsg.profession" maxlength="50" show-word-limit></el-input>
|
</el-form-item>
|
</div>
|
<div>
|
<el-form-item label="民族" >
|
<el-select :disabled="true" placeholder="" v-model="FromMsg.nationCode">
|
<el-option v-for="item in nationList" :key="item.value"
|
:label="item.label" :value="item.value"></el-option>
|
</el-select>
|
</el-form-item>
|
<el-form-item label="本地外地">
|
<el-select :disabled="true" placeholder="" v-model="FromMsg.outOrLocal">
|
<el-option label="本地" :value="1"></el-option>
|
<el-option label="外地" :value="2"></el-option>
|
</el-select>
|
</el-form-item>
|
</div>
|
<div>
|
<el-form-item label="联系方式">
|
<el-input :disabled="true" placeholder="" v-model="FromMsg.phone" maxlength="11" show-word-limit></el-input>
|
</el-form-item>
|
<el-form-item label="户口所在地">
|
<el-input :disabled="true" placeholder="" v-model="FromMsg.censusRegister" maxlength="50" show-word-limit></el-input>
|
</el-form-item>
|
</div>
|
<div>
|
<el-form-item label="籍贯">
|
<el-input :disabled="true" placeholder="" v-model="FromMsg.nativePlace" maxlength="50" show-word-limit></el-input>
|
</el-form-item>
|
<el-form-item label="备注">
|
<el-input :disabled="true" type="textarea" placeholder="" v-model="FromMsg.remark" maxlength="200" show-word-limit></el-input>
|
</el-form-item>
|
</div>
|
<div>
|
<el-form-item label="文化程度">
|
<el-select :disabled="true" placeholder="" v-model="FromMsg.cultureLevel">
|
<el-option v-for="li in cultureLevel" value-key="value" :key="li.value" :label="li.name"
|
:value="li.value"></el-option>
|
</el-select>
|
</el-form-item>
|
<el-form-item label="婚姻状况">
|
<el-select :disabled="true" placeholder="" v-model="FromMsg.marriage">
|
<el-option v-for="(li,index) in marriage" value-key="value" :key="index" :label="li.name"
|
:value="li.value"></el-option>
|
</el-select>
|
</el-form-item>
|
</div>
|
<div>
|
<el-form-item label="人员标签">
|
<el-select :disabled="true" size="small" multiple v-model="FromMsg.labelList" placeholder="">
|
<el-option v-for="(li,index) in listtag" :key="index" :value="li"></el-option>
|
</el-select>
|
</el-form-item>
|
<el-form-item label="租住">
|
<el-select :disabled="true" placeholder="" v-model="FromMsg.isRent">
|
<el-option label="是" value="1"></el-option>
|
<el-option label="否" value="0"></el-option>
|
</el-select>
|
</el-form-item>
|
</div>
|
<!-- <el-form-item>
|
<el-button type="primary" @click="onSubmitmsg('FromMsg')">保存</el-button>
|
</el-form-item> -->
|
</el-form>
|
</template>
|
|
<script>
|
import {isvalidPhone,isIdcard} from '../../../../assets/js/fromValidate';
|
|
var validIdcrad=(rule, value,callback)=>{
|
if (!value){
|
callback(new Error('请输入身份证号码'))
|
}else if (!isIdcard(value)){
|
callback(new Error('请输入正确的身份证号码'))
|
}else {
|
callback()
|
}
|
};
|
export default {
|
props:['editId'],
|
data() {
|
return {
|
// 基础人口信息
|
FromMsg:{
|
actId:'',
|
cardNo: "",
|
censusRegister: "",
|
cultureLevel: "",
|
healthy: "",
|
isRent: '',
|
labelList: [],
|
marriage: "",
|
name: "",
|
nationCode: "",
|
nativePlace: "",
|
outOrLocal: "",
|
phone: "",
|
politicalOutlook: '',
|
profession: "",
|
remark: "",
|
workCompany: ""
|
},
|
commityId:'',
|
healthList:[],
|
listtag:[],
|
cultureLevel:[],
|
nationList:[],
|
marriage:[],
|
rules: {
|
name: [
|
{ required: true, message: '请输入姓名', trigger: 'blur' },
|
],
|
cardNo:[
|
{required: true, validator: validIdcrad, trigger: 'change' }
|
],
|
},
|
politicalOutlookList:[
|
{
|
value:1,
|
label:"中共党员"
|
},
|
{
|
value:2,
|
label:"中共预备党员"
|
},
|
{
|
value:3,
|
label:"共青团员"
|
},
|
{
|
value:4,
|
label:"民革党员"
|
},
|
{
|
value:5,
|
label:"民盟盟员"
|
},
|
{
|
value:6,
|
label:"民建会员"
|
},
|
{
|
value:8,
|
label:"农工党党员"
|
},
|
{
|
value:9,
|
label:"致公党党员"
|
},
|
{
|
value:10,
|
label:"九三学社社员"
|
},
|
{
|
value:11,
|
label:"台盟盟员"
|
},
|
{
|
value:12,
|
label:"无党派人士"
|
},
|
{
|
value:13,
|
label:"群众"
|
},
|
]
|
}
|
},
|
|
watch:{
|
editId(val) {
|
this.FromMsg.populationId =val;
|
},
|
},
|
mounted() {
|
/** populationId:获取人口ID */
|
if(this.$route.query.id) {
|
this.FromMsg.populationId = this.$route.query.id;
|
this.FromMsg.actId = this.$route.query.com;
|
this.getDetails();
|
}
|
this.FromMsg.actId = this.$route.query.vi;
|
this.init();
|
},
|
|
methods: {
|
/** 获取吸毒信息 populationId:人口id
|
* id:主键id 有id编辑 无id新增 */
|
getDetails() {
|
this.$api.post(`population/detail?populationId=${this.FromMsg.populationId}&communityId=${this.FromMsg.actId}`,{populationId:this.FromMsg.populationId,communityId:this.FromMsg.actId},e=> {
|
if(e.id) {
|
this.FromMsg = e;
|
}
|
})
|
},
|
init() {
|
this.getdrophealth();
|
this.peopleTag();
|
this.cultureLevelList();
|
this.getnation();
|
this.marriageList();
|
},
|
//健康状况
|
getdrophealth() {
|
this.$api.get("population/drop/down/box?key=health",{},e=> {
|
this.healthList = e.map(d=> {
|
return {
|
label:d.value,
|
value:d.id,
|
}
|
})
|
})
|
},
|
//人员标签
|
peopleTag() {
|
this.$api.get("population/drop/down/box?key=health",{},e=> {
|
this.$api.get('communitymanager/listtag', '', e => {
|
this.listtag = e
|
})
|
})
|
},
|
//文化程度
|
cultureLevelList() {
|
let params = {
|
key:'education'
|
}
|
this.$api.get('dictionary/listDictionaryByKey',params,e=>{
|
this.cultureLevel = e.map(d=> {
|
return {
|
value:d.dictValue,
|
name:d.dictName
|
}
|
})
|
})
|
},
|
//民族
|
getnation() {
|
this.$api.get("population/drop/down/box?key=nation",{},e=> {
|
this.nationList = e.map(d=> {
|
return {
|
label:d.value,
|
value:d.id,
|
}
|
})
|
})
|
},
|
//婚姻状况
|
marriageList() {
|
let params = {
|
key:'marry'
|
}
|
this.$api.get('dictionary/listDictionaryByKey',params,e=>{
|
this.marriage = e.map(d=> {
|
return {
|
value:d.dictValue,
|
name:d.dictName
|
}
|
})
|
})
|
},
|
|
onSubmitmsg(formName) {
|
this.$refs[formName].validate((valid) => {
|
if (valid) {
|
if(this.FromMsg.id) {
|
//编辑
|
this.$api.post("/population/edit",this.FromMsg,e=> {
|
demo.toast("编辑成功")
|
})
|
} else {
|
//新增
|
this.FromMsg.communityId = this.$route.query.vi;
|
this.$api.post("/population/add",this.FromMsg,e=> {
|
demo.toast("保存成功")
|
demo.$local.set("populationId", e);
|
})
|
}
|
} else {
|
return false;
|
}
|
});
|
},
|
|
}
|
}
|
</script>
|
|
<style>
|
|
</style>
|