|
@@ -5,12 +5,11 @@
|
|
|
:visible.sync="dialogVisible"
|
|
|
width="50%"
|
|
|
:before-close="handleClose">
|
|
|
-
|
|
|
- <el-form ref="form" :model="form" label-width="120px" size="small">
|
|
|
+ <el-form ref="form" :model="form" :rules="rules" label-width="120px" size="small">
|
|
|
<el-row>
|
|
|
- <el-form-item label="人员信息类型">
|
|
|
+ <el-form-item label="人员信息类型" >
|
|
|
<!-- <el-input v-model="form.type" ></el-input>-->
|
|
|
- <div @click="clickType(index)" class="typediv" :class="{'isactive':isclick==index}" v-for="(item,index) in typeList">
|
|
|
+ <div @click="clickType(index,item.value)" class="typediv" :class="{'isactive':isclick==index}" v-for="(item,index) in typeList">
|
|
|
<img :src="item.icon" alt="">
|
|
|
<span style="display: block">{{item.name}}</span>
|
|
|
</div>
|
|
@@ -18,29 +17,36 @@
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
- <el-form-item label="个人照片">
|
|
|
- <el-upload
|
|
|
- class="avatar-uploader"
|
|
|
- action="https://jsonplaceholder.typicode.com/posts/"
|
|
|
- :show-file-list="false"
|
|
|
- :on-success="handleAvatarSuccess"
|
|
|
- :before-upload="beforeAvatarUpload">
|
|
|
- <img v-if="form.imageUrl" :src="form.imageUrl" class="avatar">
|
|
|
- <i v-else class="el-icon-plus avatar-uploader-icon"></i>
|
|
|
- </el-upload>
|
|
|
+ <el-form-item label="个人照片" prop="ryZp">
|
|
|
+ <div v-loading="photoLoading" :element-loading-text="photoLoadingText" style="width: 80px;border: 1px solid #D4D6D9;height: 80px;text-align: center;border-radius: 8px">
|
|
|
+ <input @change="getfile($event)" class="filebox" type="file" accept="image/*">
|
|
|
+ <div v-if="!form.ryZp">
|
|
|
+ <i class="el-icon-plus" style="font-size: 50px;color: #D4D6D9;line-height: 80px"></i>
|
|
|
+ </div>
|
|
|
+ <img v-else :src="form.ryZp" style="width: 100%">
|
|
|
+
|
|
|
+ </div>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
- <el-form-item label="与房主关系">
|
|
|
- <el-select v-model="form.region" placeholder="请选择活动区域">
|
|
|
- <el-option label="区域一" value="shanghai"></el-option>
|
|
|
- <el-option label="区域二" value="beijing"></el-option>
|
|
|
+ <el-form-item label="与房主关系" prop="ryHzgx">
|
|
|
+ <el-select v-model="form.ryHzgx" placeholder="与房主关系" style="width:99%">
|
|
|
+ <el-option
|
|
|
+ v-for="item in yfzgx"
|
|
|
+ :key="item.value"
|
|
|
+ :label="item.label"
|
|
|
+ :value="item.value">
|
|
|
+ </el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="民族">
|
|
|
- <el-select v-model="form.region" placeholder="请选择活动区域">
|
|
|
- <el-option label="区域一" value="shanghai"></el-option>
|
|
|
- <el-option label="区域二" value="beijing"></el-option>
|
|
|
+ <el-form-item label="民族" prop="ryMzDm">
|
|
|
+ <el-select v-model="form.ryMzDm" placeholder="民族" style="width:99%">
|
|
|
+ <el-option
|
|
|
+ v-for="item in mz"
|
|
|
+ :key="item.value"
|
|
|
+ :label="item.label"
|
|
|
+ :value="item.value">
|
|
|
+ </el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
@@ -48,15 +54,19 @@
|
|
|
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
- <el-form-item label="姓名">
|
|
|
- <el-input v-model="form.type"></el-input>
|
|
|
+ <el-form-item label="姓名" prop="ryXm">
|
|
|
+ <el-input v-model="form.ryXm"></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
- <el-form-item label="文化程度">
|
|
|
- <el-select v-model="form.region" placeholder="请选择活动区域">
|
|
|
- <el-option label="区域一" value="shanghai"></el-option>
|
|
|
- <el-option label="区域二" value="beijing"></el-option>
|
|
|
+ <el-form-item label="文化程度" prop="ryWhcd">
|
|
|
+ <el-select v-model="form.ryWhcd" placeholder="文化程度" style="width:99%">
|
|
|
+ <el-option
|
|
|
+ v-for="item in whcd"
|
|
|
+ :key="item.value"
|
|
|
+ :label="item.label"
|
|
|
+ :value="item.value">
|
|
|
+ </el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
@@ -64,15 +74,19 @@
|
|
|
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
- <el-form-item label="公民身份号码">
|
|
|
- <el-input v-model="form.type"></el-input>
|
|
|
+ <el-form-item label="公民身份号码" prop="rySfzh">
|
|
|
+ <el-input v-model="form.rySfzh"></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
- <el-form-item label="婚姻状况">
|
|
|
- <el-select v-model="form.region" placeholder="请选择活动区域">
|
|
|
- <el-option label="区域一" value="shanghai"></el-option>
|
|
|
- <el-option label="区域二" value="beijing"></el-option>
|
|
|
+ <el-form-item label="婚姻状况" prop="ryHyzk">
|
|
|
+ <el-select v-model="form.ryHyzk" placeholder="婚姻状况" style="width:99%">
|
|
|
+ <el-option
|
|
|
+ v-for="item in hyzk"
|
|
|
+ :key="item.value"
|
|
|
+ :label="item.label"
|
|
|
+ :value="item.value">
|
|
|
+ </el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
@@ -80,18 +94,22 @@
|
|
|
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
- <el-form-item label="性别">
|
|
|
- <el-radio-group v-model="form.sex">
|
|
|
+ <el-form-item label="性别" prop="ryXb">
|
|
|
+ <el-radio-group v-model="form.ryXb">
|
|
|
<el-radio label="男"></el-radio>
|
|
|
<el-radio label="女"></el-radio>
|
|
|
</el-radio-group>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
- <el-form-item label="政治面貌">
|
|
|
- <el-select v-model="form.region" placeholder="请选择活动区域">
|
|
|
- <el-option label="区域一" value="shanghai"></el-option>
|
|
|
- <el-option label="区域二" value="beijing"></el-option>
|
|
|
+ <el-form-item label="政治面貌" prop="ryZzmm">
|
|
|
+ <el-select v-model="form.ryZzmm" placeholder="政治面貌" style="width:99%">
|
|
|
+ <el-option
|
|
|
+ v-for="item in zzmm"
|
|
|
+ :key="item.value"
|
|
|
+ :label="item.label"
|
|
|
+ :value="item.value">
|
|
|
+ </el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
@@ -100,15 +118,19 @@
|
|
|
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
- <el-form-item label="联系电话">
|
|
|
- <el-input v-model="form.type"></el-input>
|
|
|
+ <el-form-item label="联系电话" prop="ryDh">
|
|
|
+ <el-input v-model="form.ryDh"></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
- <el-form-item label="兵役状况">
|
|
|
- <el-select v-model="form.region" placeholder="请选择活动区域">
|
|
|
- <el-option label="区域一" value="shanghai"></el-option>
|
|
|
- <el-option label="区域二" value="beijing"></el-option>
|
|
|
+ <el-form-item label="兵役状况" prop="ryByzk">
|
|
|
+ <el-select v-model="form.ryByzk" placeholder="兵役状况" style="width:99%">
|
|
|
+ <el-option
|
|
|
+ v-for="item in byzk"
|
|
|
+ :key="item.value"
|
|
|
+ :label="item.label"
|
|
|
+ :value="item.value">
|
|
|
+ </el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
@@ -124,8 +146,8 @@
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :offset="2" :span="22" v-show="form.isth=='否'" class="iserea">
|
|
|
- <el-form-item label="微信号">
|
|
|
- <el-input v-model="form.type"></el-input>
|
|
|
+ <el-form-item label="微信号" prop="vx">
|
|
|
+ <el-input v-model="form.vx"></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
@@ -140,14 +162,9 @@
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :offset="2" :span="22" v-show="form.iszjxy=='是'" class="iserea">
|
|
|
- <el-form-item label="">
|
|
|
+ <el-form-item label="" prop="zjxy">
|
|
|
<el-checkbox-group v-model="form.zjxy">
|
|
|
- <el-checkbox label="佛教" name="type"></el-checkbox>
|
|
|
- <el-checkbox label="道教" name="type"></el-checkbox>
|
|
|
- <el-checkbox label="伊斯兰教" name="type"></el-checkbox>
|
|
|
- <el-checkbox label="天主教" name="type"></el-checkbox>
|
|
|
- <el-checkbox label="基督教" name="type"></el-checkbox>
|
|
|
- <el-checkbox label="其他" name="type"></el-checkbox>
|
|
|
+ <el-checkbox v-for="titem in zjxy" :label="titem.label" :name="titem.value" :key="titem.value"></el-checkbox>
|
|
|
</el-checkbox-group>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
@@ -163,23 +180,24 @@
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :offset="2" :span="22" v-show="form.isdw=='是'" class="iserea">
|
|
|
- <el-form-item label="单位名称">
|
|
|
- <el-input v-model="form.type"></el-input>
|
|
|
+ <el-form-item label="单位名称" prop="dwMc">
|
|
|
+ <el-input v-model="form.dwMc"></el-input>
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="管理类别">
|
|
|
- <el-select v-model="form.region" placeholder="请选择活动区域">
|
|
|
- <el-option label="区域一" value="shanghai"></el-option>
|
|
|
- <el-option label="区域二" value="beijing"></el-option>
|
|
|
+ <el-form-item label="管理类别" prop="dwLb">
|
|
|
+ <el-select v-model="form.dwLb" placeholder="管理类别" style="width:99%">
|
|
|
+ <el-option
|
|
|
+ v-for="item in dwLb"
|
|
|
+ :key="item.value"
|
|
|
+ :label="item.label"
|
|
|
+ :value="item.value">
|
|
|
+ </el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="单位地址">
|
|
|
- <el-select v-model="form.region" placeholder="请选择活动区域">
|
|
|
- <el-option label="区域一" value="shanghai"></el-option>
|
|
|
- <el-option label="区域二" value="beijing"></el-option>
|
|
|
- </el-select>
|
|
|
+ <el-form-item label="单位地址" prop="dwDz">
|
|
|
+ <el-input v-model="form.dwDz"></el-input>
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="详细地址">
|
|
|
- <el-input v-model="form.type"></el-input>
|
|
|
+ <el-form-item label="详细地址" prop="dwXz">
|
|
|
+ <el-input v-model="form.dwXz"></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
@@ -188,30 +206,20 @@
|
|
|
<el-row>
|
|
|
<el-col :span="24">
|
|
|
<el-form-item label="是否特殊人群">
|
|
|
- <el-radio-group v-model="form.isrq">
|
|
|
+ <el-radio-group v-model="form.istsrq">
|
|
|
<el-radio label="是"></el-radio>
|
|
|
<el-radio label="否"></el-radio>
|
|
|
</el-radio-group>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
- <el-col :offset="2" :span="22" v-show="form.isrq=='是'" class="iserea">
|
|
|
+ <el-col :offset="2" :span="22" v-show="form.istsrq=='是'" class="iserea">
|
|
|
<el-form-item label="">
|
|
|
- <el-checkbox-group v-model="form.tsrq">
|
|
|
- <el-checkbox label="低收入群体" name="1"></el-checkbox>
|
|
|
- <el-checkbox label="失独丧偶" name="2"></el-checkbox>
|
|
|
- <el-checkbox label="外来务工" name="3"></el-checkbox>
|
|
|
- <el-checkbox label="孤寡老人" name="4"></el-checkbox>
|
|
|
- <el-checkbox label="出国人员" name="5"></el-checkbox>
|
|
|
- <el-checkbox label="利益受损" name="6"></el-checkbox>
|
|
|
- <el-checkbox label="残疾人" name="7"></el-checkbox>
|
|
|
- <el-checkbox label="留守儿童" name="8"></el-checkbox>
|
|
|
- <el-checkbox label="遭受病灾" name="9"></el-checkbox>
|
|
|
- <el-checkbox label="精神病人" name="10"></el-checkbox>
|
|
|
- <el-checkbox label="其他(未落户/未注销等)" name="11"></el-checkbox>
|
|
|
+ <el-checkbox-group v-model="form.ryTsLb">
|
|
|
+ <el-checkbox v-for="(titem,index) in tsrq" :label="titem.label" :name="titem.value" :key="index"></el-checkbox>
|
|
|
</el-checkbox-group>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="具体情况" style="padding-left: 120px">
|
|
|
- <el-input placeholder="请描述具体情况,非必填,限2000字符" type="textarea" v-model="form.desc"></el-input>
|
|
|
+ <el-input placeholder="请描述具体情况,非必填,限2000字符" type="textarea" v-model="form.ryTsJtqk"></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
@@ -219,48 +227,135 @@
|
|
|
</el-form>
|
|
|
|
|
|
|
|
|
+ <span slot="footer" class="dialog-footer">
|
|
|
+ <el-button size="small" @click="dialogVisible = false">取 消</el-button>
|
|
|
+ <el-button size="small" type="primary" @click="submitok">确 定</el-button>
|
|
|
+ </span>
|
|
|
|
|
|
- <el-button size="small" @click="dialogVisible = false">取 消</el-button>
|
|
|
- <el-button size="small" type="primary" @click="dialogVisible = false">确 定</el-button>
|
|
|
</el-dialog>
|
|
|
+
|
|
|
+
|
|
|
+ <registry_sure @closeDialog="dialogVisible = false" :PostData="form" ref="registry_sure"/>
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
+import registry_sure from "./registry_sure";
|
|
|
+import {baseUrl} from '@/config/env'
|
|
|
+import {putfile,dictionaryList,saveRy} from "../../../../api/fwbzdz/fwbzdz";
|
|
|
+
|
|
|
export default {
|
|
|
name: "add",
|
|
|
+ props:{},
|
|
|
+ components:{registry_sure},
|
|
|
data(){
|
|
|
return{
|
|
|
isclick:null,
|
|
|
+ photoLoading:false,
|
|
|
+ photoLoadingText:'',
|
|
|
+ urls:baseUrl+'/blade-resource/oss/endpoint/put-file',
|
|
|
typeList:[
|
|
|
- {name:'常住人口',icon:require('../asset/icon_type_permanent.svg')},
|
|
|
- {name:'寄住人口',icon:require('../asset/icon_type_lodge.svg')},
|
|
|
- {name:'暂住人口',icon:require('../asset/icon_type_stay.svg')},
|
|
|
- {name:'境外人口',icon:require('../asset/icon_type_foreigner.svg')},
|
|
|
- {name:'未落常人口',icon:require('../asset/icon_type_not.svg')}
|
|
|
+ {name:'常住人口',value:'czrk',icon:require('../asset/icon_type_permanent.svg')},
|
|
|
+ {name:'寄住人口',value:'jzrk',icon:require('../asset/icon_type_lodge.svg')},
|
|
|
+ {name:'暂住人口',value:'zzrk',icon:require('../asset/icon_type_stay.svg')},
|
|
|
+ {name:'境外人口',value:'jwrk',icon:require('../asset/icon_type_foreigner.svg')},
|
|
|
+ {name:'未落常人口',value:'wlrk',icon:require('../asset/icon_type_not.svg')}
|
|
|
],
|
|
|
form:{
|
|
|
- tsrq:[],
|
|
|
- zjxy:[],
|
|
|
- imageUrl: ''
|
|
|
- },
|
|
|
+ ryType:'',
|
|
|
+ ryZp:'',
|
|
|
+ ryTsLb:'',
|
|
|
+ ryXm:'',
|
|
|
+ rySfzh:'',
|
|
|
+ ryHzgx:'',
|
|
|
+ ryHyzk:'',
|
|
|
+ ryWhcd:'',
|
|
|
+ ryZzmm:'',
|
|
|
+ ryByzk:'',
|
|
|
+ ryDh:'',
|
|
|
+ vx:'',
|
|
|
+ zjxy:'',
|
|
|
+ dwMc:'',
|
|
|
+ dwLb:'',
|
|
|
+ dwDz:'',
|
|
|
+ dwXz:'',
|
|
|
+ ryTsJtqk:'',
|
|
|
+ ryMzDm:'',
|
|
|
+ ryXb:'',
|
|
|
+ },
|
|
|
+ tsrq:[],
|
|
|
+ gjOp:[],
|
|
|
+ options:[],
|
|
|
+ yfzgx:[],
|
|
|
+ whcd:[],
|
|
|
+ mz:[],
|
|
|
+ hyzk:[],
|
|
|
+ zzmm:[],
|
|
|
+ byzk:[],
|
|
|
+ zjxy:[],
|
|
|
+ dwLb:[],
|
|
|
dialogVisible:false
|
|
|
}
|
|
|
},
|
|
|
+ mounted() {
|
|
|
+ this.inits()
|
|
|
+ },
|
|
|
+ computed:{
|
|
|
+
|
|
|
+ },
|
|
|
methods:{
|
|
|
- clickType(index){
|
|
|
+ inits(){
|
|
|
+ dictionaryList().then(res => {
|
|
|
+ const data = res.data.data
|
|
|
+ console.log('dictionaryList', data)
|
|
|
+ this.options = data
|
|
|
+ this.gjOp = data.gjdq
|
|
|
+ this.tsrq = data.tsrq
|
|
|
+ this.yfzgx=data.yfzgx
|
|
|
+ this.whcd=data.whcd
|
|
|
+ this.mz=data.mz
|
|
|
+ this.hyzk=data.hyzk
|
|
|
+ this.zzmm=data.zzmm
|
|
|
+ this.byzk=data.byzk
|
|
|
+ this.zjxy=data.zjxy
|
|
|
+ this.dwLb=data.dwLb
|
|
|
+
|
|
|
+ }).finally(() => {
|
|
|
+
|
|
|
+ })
|
|
|
+ },
|
|
|
+ getfile(e){
|
|
|
+ var _this = this
|
|
|
+ _this.photoLoading=true
|
|
|
+ var fileList = new FormData()
|
|
|
+ fileList.append('file',e.target.files[0])
|
|
|
+ _this.photoLoadingText='正在上传'
|
|
|
+ putfile(fileList).then(res=>{
|
|
|
+ _this.$set(_this.form,'ryZp',res.data.data.link)
|
|
|
+ e.target.value=''
|
|
|
+ _this.photoLoading=false
|
|
|
+ _this.photoLoadingText=''
|
|
|
+ }).catch(err=>{
|
|
|
+ _this.$message.error('上传异常')
|
|
|
+ _this.photoLoading=false
|
|
|
+ _this.photoLoadingText=''
|
|
|
+ })
|
|
|
+
|
|
|
+ },
|
|
|
+ submitok(){
|
|
|
+ this.$refs.registry_sure.dialogVisible=true
|
|
|
+ },
|
|
|
+ clickType(index,value){
|
|
|
+ this.$set(this.form,'ryType',value)
|
|
|
this.isclick = index
|
|
|
},
|
|
|
handleAvatarSuccess(res, file) {
|
|
|
- this.imageUrl = URL.createObjectURL(file.raw);
|
|
|
+ this.form.ryZp = URL.createObjectURL(file.raw);
|
|
|
},
|
|
|
beforeAvatarUpload(file) {
|
|
|
const isJPG = file.type === 'image/jpeg';
|
|
|
const isLt2M = file.size / 1024 / 1024 < 2;
|
|
|
|
|
|
- if (!isJPG) {
|
|
|
- this.$message.error('上传头像图片只能是 JPG 格式!');
|
|
|
- }
|
|
|
if (!isLt2M) {
|
|
|
this.$message.error('上传头像图片大小不能超过 2MB!');
|
|
|
}
|
|
@@ -274,6 +369,25 @@ export default {
|
|
|
</script>
|
|
|
|
|
|
<style scoped lang="scss">
|
|
|
+.filebox{
|
|
|
+ opacity: 0;
|
|
|
+ width: 100%;
|
|
|
+ position: absolute;
|
|
|
+ width: 80px;
|
|
|
+ height: 80px;
|
|
|
+ top: 0;
|
|
|
+ left: 0;
|
|
|
+ right: 0;
|
|
|
+ bottom: 0;
|
|
|
+}
|
|
|
+:deep .el-input__inner{
|
|
|
+ background: #ECF2FE !important;
|
|
|
+ border: none;
|
|
|
+}
|
|
|
+:deep .el-textarea__inner{
|
|
|
+ background: #ECF2FE !important;
|
|
|
+ border: none;
|
|
|
+}
|
|
|
.typediv{
|
|
|
float: left;
|
|
|
width: 102px;
|
|
@@ -298,14 +412,7 @@ export default {
|
|
|
box-sizing: border-box;
|
|
|
padding-top: 18px;
|
|
|
border-radius: 8px;
|
|
|
- :deep .el-input__inner{
|
|
|
- background: #ECF2FE !important;
|
|
|
- border: none;
|
|
|
- }
|
|
|
- :deep .el-textarea__inner{
|
|
|
- background: #ECF2FE !important;
|
|
|
- border: none;
|
|
|
- }
|
|
|
+
|
|
|
}
|
|
|
:deep .avatar-uploader .el-upload {
|
|
|
width: 88px;
|