|
@@ -0,0 +1,379 @@
|
|
|
+<template>
|
|
|
+ <div class="add">
|
|
|
+ <el-dialog
|
|
|
+ title="常住人口注销/外出原因"
|
|
|
+ :visible.sync="dialogVisible"
|
|
|
+ width="50%"
|
|
|
+ @close="closeDialogs('form')"
|
|
|
+ :before-close="handleClose">
|
|
|
+ <el-form ref="form" :model="form" :rules="rules" label-width="120px" size="small">
|
|
|
+ <el-row>
|
|
|
+ <el-col :span="24">
|
|
|
+ <el-form-item label="注销/外出原因">
|
|
|
+ <el-radio-group v-model="form.zxyy" @change="changeyy">
|
|
|
+ <el-radio v-for="item in czrkzxyy" :label="item.label" :value="item.value"></el-radio>
|
|
|
+ </el-radio-group>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+
|
|
|
+ <el-col :offset="2" :span="15" v-show="yy=='死亡'" class="iserea">
|
|
|
+ <el-form-item label="死亡日期" prop="swrq">
|
|
|
+ <el-date-picker
|
|
|
+ v-model="form.swrq"
|
|
|
+ type="date"
|
|
|
+ placeholder="选择日期">
|
|
|
+ </el-date-picker>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="注销日期" prop="zxrq">
|
|
|
+ <el-date-picker
|
|
|
+ v-model="form.zxrq"
|
|
|
+ type="date"
|
|
|
+ placeholder="选择日期">
|
|
|
+ </el-date-picker>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+
|
|
|
+
|
|
|
+ <el-col :offset="3" :span="15" v-show="yy=='流出或出境'" class="iserea">
|
|
|
+ <el-form-item label="外出原因" prop="ryWhcd">
|
|
|
+ <el-select v-model="form.ryWhcd" placeholder="外出原因" style="width:99%">
|
|
|
+ <el-option
|
|
|
+ v-for="item in wcyy"
|
|
|
+ :key="item.value"
|
|
|
+ :label="item.label"
|
|
|
+ :value="item.label">
|
|
|
+ </el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="外出日期" prop="zxrq">
|
|
|
+ <el-date-picker
|
|
|
+ v-model="form.zxrq"
|
|
|
+ type="date"
|
|
|
+ placeholder="选择日期">
|
|
|
+ </el-date-picker>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="去往地省市县区" prop="qwdzssxq">
|
|
|
+ <el-select v-model="form.qwdzssxq" placeholder="请选择活动区域">
|
|
|
+ <el-option label="区域一" value="shanghai"></el-option>
|
|
|
+ <el-option label="区域二" value="beijing"></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="去往地详细地址" prop="qwdzxz">
|
|
|
+ <el-input v-model="form.qwdzxz"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+
|
|
|
+ <el-col :offset="2" :span="15" v-show="yy=='户在人不在'" class="iserea">
|
|
|
+ <el-form-item label="入户分离原因" prop="bcyy">
|
|
|
+ <el-select v-model="form.bcyy" placeholder="请选择活动区域">
|
|
|
+ <el-option
|
|
|
+ v-for="item in hzrbzyy"
|
|
|
+ :key="item.value"
|
|
|
+ :label="item.label"
|
|
|
+ :value="item.label">
|
|
|
+ </el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="分离日期" prop="bcrq">
|
|
|
+ <el-date-picker
|
|
|
+ v-model="form.bcrq"
|
|
|
+ type="date"
|
|
|
+ placeholder="选择日期">
|
|
|
+ </el-date-picker>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="去往地省市县区" prop="qwdzssxq">
|
|
|
+ <el-select v-model="form.qwdzssxq" placeholder="请选择活动区域">
|
|
|
+ <el-option label="区域一" value="shanghai"></el-option>
|
|
|
+ <el-option label="区域二" value="beijing"></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="去往地详细地址" prop="qwdzxz">
|
|
|
+ <el-input v-model="form.qwdzxz"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+
|
|
|
+
|
|
|
+ </el-row>
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ </el-form>
|
|
|
+
|
|
|
+
|
|
|
+ <span slot="footer" class="dialog-footer">
|
|
|
+ <el-button size="small" @click="closeDialogs('form')">取 消</el-button>
|
|
|
+ <el-button size="small" type="primary" @click="submitok">确 定</el-button>
|
|
|
+ </span>
|
|
|
+
|
|
|
+ </el-dialog>
|
|
|
+
|
|
|
+ </div>
|
|
|
+</template>
|
|
|
+
|
|
|
+<script>
|
|
|
+import registry_sure from "./registry_sure";
|
|
|
+import {baseUrl} from '@/config/env'
|
|
|
+import {putfile,dictionaryList,saveRy} from "../../../../api/fwbzdz/fwbzdz";
|
|
|
+import { syrkzx } from "../../../../api/fwbzdz/syrk";
|
|
|
+
|
|
|
+export default {
|
|
|
+ name: "logoff",
|
|
|
+ props:['parentData','parentUpData','upStatus'],
|
|
|
+ components:{registry_sure},
|
|
|
+ data(){
|
|
|
+ return{
|
|
|
+ status:'',
|
|
|
+ isclick:null,
|
|
|
+ photoLoading:false,
|
|
|
+ photoLoadingText:'',
|
|
|
+ urls:baseUrl+'/blade-resource/oss/endpoint/put-file',
|
|
|
+ form:{
|
|
|
+ zxyy:'',
|
|
|
+ swrq:'',
|
|
|
+ zxrq:'',
|
|
|
+ bcyy:'',
|
|
|
+ bcrq:'',
|
|
|
+ qwdzssxq:'',
|
|
|
+ qwdzxz:''
|
|
|
+ },
|
|
|
+ wcyy:[],
|
|
|
+ hzrbzyy:[],
|
|
|
+ zzrkzxyy:[],
|
|
|
+ czrkzxyy:[],
|
|
|
+ dialogVisible:false,
|
|
|
+ yy:''
|
|
|
+ }
|
|
|
+ },
|
|
|
+ watch:{
|
|
|
+ parentData:{
|
|
|
+ handler(val){
|
|
|
+ if(val&&val.length>0){
|
|
|
+ this.form.fwId=val[0].fwId
|
|
|
+ this.form.dzbm=val[0].dzbm
|
|
|
+ this.form.dzXz=val[0].dzXz
|
|
|
+ }
|
|
|
+ //this.form = val[0]
|
|
|
+ },
|
|
|
+ immediate:true
|
|
|
+ },
|
|
|
+
|
|
|
+ parentUpData:{
|
|
|
+ handler(val){
|
|
|
+ console.log(val,'val')
|
|
|
+ if(val){
|
|
|
+ this.form.id=val.id
|
|
|
+ this.form.dzbm=val.dzbm
|
|
|
+ this.form.fwId=val.fwId
|
|
|
+ this.form.ryXm=val.ryXm
|
|
|
+ this.form.ryXb=val.ryXb
|
|
|
+ this.form.rySfzh=val.rySfzh
|
|
|
+ this.form.ryLxdh=val.ryLxdh
|
|
|
+ this.form.ryTsLb=val.ryTsLb
|
|
|
+ this.form.ryType=val.ryType
|
|
|
+ }
|
|
|
+ },
|
|
|
+ immediate:true
|
|
|
+ }
|
|
|
+ },
|
|
|
+ mounted() {
|
|
|
+
|
|
|
+ },
|
|
|
+ computed:{
|
|
|
+
|
|
|
+ },
|
|
|
+ methods:{
|
|
|
+ changeyy(label, index){
|
|
|
+ this.yy = label
|
|
|
+ },
|
|
|
+ closeDialogs(formRef){
|
|
|
+ this.dialogVisible = false;
|
|
|
+ this.isclick=null
|
|
|
+ this.$refs[formRef].resetFields();
|
|
|
+ //this.$emit('reload')
|
|
|
+ },
|
|
|
+ handleCheckAllChange(item,code){
|
|
|
+ if(code=='zjxy'){
|
|
|
+ this.form.zjxy = item.value
|
|
|
+ }
|
|
|
+ if(code=='tsrq'){
|
|
|
+ this.form.tsrq = item.value
|
|
|
+ }
|
|
|
+ },
|
|
|
+ inits(){
|
|
|
+ var _this = this;
|
|
|
+ dictionaryList().then(res => {
|
|
|
+ const data = res.data.data
|
|
|
+ this.wcyy = data.wcyy
|
|
|
+ this.hzrbzyy = data.hzrbzyy
|
|
|
+ this.zzrkzxyy=data.zzrkzxyy
|
|
|
+ this.czrkzxyy=data.czrkzxyy
|
|
|
+ }).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(){
|
|
|
+ syrkzx(this.form).then(res=>{
|
|
|
+ }).finally(rs=>{
|
|
|
+ this.dialogVisible=false
|
|
|
+ this.$store.commit('CHANGE_SYRK', 'syrk')
|
|
|
+ })
|
|
|
+ },
|
|
|
+
|
|
|
+ getidCard(e){
|
|
|
+ if(this.regCard(e)){
|
|
|
+ }else{
|
|
|
+ this.form.rySfzh=''
|
|
|
+ }
|
|
|
+ },
|
|
|
+ regCard(idCard){
|
|
|
+ var _this = this;
|
|
|
+ var regIdCard =
|
|
|
+ /^(^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$)|(^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])((\d{4})|\d{3}[Xx])$)$/;
|
|
|
+ if (regIdCard.test(idCard)) {
|
|
|
+ if (idCard.length == 18) {
|
|
|
+ var idCardWi = new Array(7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10,
|
|
|
+ 5, 8, 4, 2);
|
|
|
+ var idCardY = new Array(1, 0, 10, 9, 8, 7, 6, 5, 4, 3, 2);
|
|
|
+ var idCardWiSum = 0;
|
|
|
+ for (var i = 0; i < 17; i++) {
|
|
|
+ idCardWiSum += idCard.substring(i, i + 1) * idCardWi[i];
|
|
|
+ }
|
|
|
+ var idCardMod = idCardWiSum % 11;
|
|
|
+ var idCardLast = idCard.substring(17);
|
|
|
+ if (idCardMod == 2) {
|
|
|
+ if (idCardLast == "X" || idCardLast == "x") {
|
|
|
+ return true;
|
|
|
+ } else {
|
|
|
+ _this.$message.error('身份证号码错误!')
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ if (idCardLast == idCardY[idCardMod]) {
|
|
|
+ return true;
|
|
|
+ } else {
|
|
|
+ _this.$message.error('身份证号码错误!')
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ _this.$message.error('请输入有效的身份证号码!')
|
|
|
+ }
|
|
|
+ },
|
|
|
+ clickType(index,value){
|
|
|
+ this.$set(this.form,'ryType',value)
|
|
|
+ this.isclick = index
|
|
|
+ },
|
|
|
+ handleAvatarSuccess(res, file) {
|
|
|
+ this.form.ryZp = URL.createObjectURL(file.raw);
|
|
|
+ },
|
|
|
+ beforeAvatarUpload(file) {
|
|
|
+ const isJPG = file.type === 'image/jpeg';
|
|
|
+ const isLt2M = file.size / 1024 / 1024 < 2;
|
|
|
+
|
|
|
+ if (!isLt2M) {
|
|
|
+ this.$message.error('上传头像图片大小不能超过 2MB!');
|
|
|
+ }
|
|
|
+ return isJPG && isLt2M;
|
|
|
+ },
|
|
|
+ handleClose(){
|
|
|
+ this.dialogVisible=false
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+</script>
|
|
|
+
|
|
|
+<style scoped lang="scss">
|
|
|
+:deep .el-item,.el-select,.el-date-editor.el-input, .el-date-editor.el-input__inner{
|
|
|
+ width: 100%;
|
|
|
+}
|
|
|
+.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;
|
|
|
+ height: 104px;
|
|
|
+ background: rgba(16,109,255,0.02);
|
|
|
+ border-radius: 8px;
|
|
|
+ text-align: center;
|
|
|
+ padding-top: 16px;
|
|
|
+ margin-right: 16px;
|
|
|
+ border: 1px solid #ECF2FE;
|
|
|
+ cursor: pointer;
|
|
|
+ //border: 1px solid #106DFF;
|
|
|
+}
|
|
|
+.isactive{
|
|
|
+ border: 1px solid #106DFF
|
|
|
+}
|
|
|
+.container_body .el-col{
|
|
|
+ margin-right: 0 !important;
|
|
|
+}
|
|
|
+.iserea{
|
|
|
+ background: rgba(236,242,254,.3);
|
|
|
+ box-sizing: border-box;
|
|
|
+ padding-top: 18px;
|
|
|
+ border-radius: 8px;
|
|
|
+
|
|
|
+}
|
|
|
+:deep .avatar-uploader .el-upload {
|
|
|
+ width: 88px;
|
|
|
+ height: 88px;
|
|
|
+ line-height: 88px;
|
|
|
+ background: #ECF2FE;
|
|
|
+ border-radius: 8px;
|
|
|
+ border: 1px dashed #6F7CA3;
|
|
|
+ cursor: pointer;
|
|
|
+ position: relative;
|
|
|
+ overflow: hidden;
|
|
|
+}
|
|
|
+:deep .avatar-uploader .el-upload:hover {
|
|
|
+ border-color: #409EFF;
|
|
|
+}
|
|
|
+:deep .avatar-uploader-icon {
|
|
|
+ font-size: 28px;
|
|
|
+ color: #8c939d;
|
|
|
+ width: 88px;
|
|
|
+ height: 88px;
|
|
|
+ text-align: center;
|
|
|
+}
|
|
|
+:deep .avatar {
|
|
|
+ width: 88px;
|
|
|
+ height: 88px;
|
|
|
+ display: block;
|
|
|
+}
|
|
|
+</style>
|