You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
727 lines
27 KiB
727 lines
27 KiB
<template>
|
|
<el-dialog :visible.sync="visible"
|
|
:title="!dataForm.id ? $t('add') : $t('update')"
|
|
:close-on-click-modal="false"
|
|
:close-on-press-escape="false">
|
|
<el-form v-loading="vueLoading"
|
|
element-loading-text="拼命加载中"
|
|
element-loading-spinner="el-icon-loading"
|
|
:model="dataForm"
|
|
:rules="dataRule"
|
|
ref="dataForm"
|
|
@keyup.enter.native="dataFormSubmitHandle()"
|
|
:label-width="$i18n.locale === 'en-US' ? '120px' : '80px'">
|
|
<el-form-item label="人员姓名"
|
|
prop="userName"
|
|
label-width="155px">
|
|
<el-input v-model="dataForm.userName"
|
|
placeholder="人员姓名"
|
|
maxlength="20"
|
|
clearable
|
|
@keyup.native="btKeyUpUserName"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="性别"
|
|
prop="gender"
|
|
label-width="155px">
|
|
<el-select v-model="dataForm.gender"
|
|
clearable
|
|
placeholder="性别">
|
|
<el-option v-for="item in gender"
|
|
:key="item.dictValue"
|
|
:label="item.dictName"
|
|
:value="item.dictValue">
|
|
</el-option>
|
|
</el-select>
|
|
</el-form-item>
|
|
<el-form-item label="民族"
|
|
prop="nation"
|
|
label-width="155px">
|
|
<el-input v-model="dataForm.nation"
|
|
placeholder="民族"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="曾用名"
|
|
prop="formerName"
|
|
label-width="155px">
|
|
<el-input v-model="dataForm.formerName"
|
|
placeholder="曾用名"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="出生年月"
|
|
prop="birthday"
|
|
label-width="155px">
|
|
<el-input v-model="dataForm.birthday"
|
|
placeholder="出生年月"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="身份证号"
|
|
prop="idCard"
|
|
label-width="155px">
|
|
<el-input v-model="dataForm.idCard"
|
|
placeholder="身份证"
|
|
clearable
|
|
maxlength="49"
|
|
@keyup.native="btKeyUpIdCard"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="联系方式"
|
|
prop="mobile"
|
|
label-width="155px">
|
|
<el-input v-model="dataForm.mobile"
|
|
placeholder="联系方式"
|
|
clearable
|
|
maxlength="11"
|
|
@keyup.native="btKeyUpMobile"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="户籍地"
|
|
prop="householdRegisterName"
|
|
label-width="155px">
|
|
<el-cascader ref="hjdname"
|
|
v-model="dataForm.householdRegisterCodes"
|
|
:options="options"
|
|
@change="householdRegisterChangeHandle"
|
|
:props="{ checkStrictly: false, multiple: true, emitPath: true }">
|
|
</el-cascader>
|
|
</el-form-item>
|
|
<el-form-item label="户籍地详细地址"
|
|
prop="householdRegisterDetail"
|
|
label-width="155px">
|
|
<el-input v-model="dataForm.householdRegisterDetail"
|
|
placeholder="户籍地详细地址"
|
|
maxlength="200"
|
|
clearable></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="县内居住地"
|
|
prop="liveAddressName"
|
|
label-width="155px">
|
|
<!-- <el-cascader-->
|
|
<!-- ref="jzdname"-->
|
|
<!-- v-model="dataForm.liveAddressCodes"-->
|
|
<!-- :options="liveOptions"-->
|
|
<!-- @change="liveAddressChangeHandle"-->
|
|
<!-- :props="{ checkStrictly: false, multiple: true, emitPath: true }"-->
|
|
<!-- >-->
|
|
<!-- </el-cascader>-->
|
|
|
|
<el-select v-model="dataForm.liveAddressCode"
|
|
placeholder="请选择">
|
|
<el-option v-for="item in liveOptions"
|
|
:key="item.value"
|
|
:label="item.label"
|
|
:value="item.value">
|
|
</el-option>
|
|
</el-select>
|
|
<!-- <el-input v-model="dataForm.liveAddressName" placeholder="县内居住地" maxlength="200" clearable></el-input>-->
|
|
</el-form-item>
|
|
<!--<el-form-item label="县内居住地详细地址" prop="liveAddressDetail" label-width="155px">-->
|
|
<!--<el-input v-model="dataForm.liveAddressDetail" placeholder="县内居住地详细地址" maxlength="200" clearable></el-input>-->
|
|
<!--</el-form-item>-->
|
|
|
|
<el-form-item label="身高"
|
|
prop="height"
|
|
label-width="155px">
|
|
<el-input v-model="dataForm.height"
|
|
placeholder="身高"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="文化程度"
|
|
prop="standardOfCulture"
|
|
label-width="155px">
|
|
<el-input v-model="dataForm.standardOfCulture"
|
|
placeholder="文化程度"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="健康情况"
|
|
prop="health"
|
|
label-width="155px">
|
|
<el-input v-model="dataForm.health"
|
|
placeholder="健康情况"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="血型"
|
|
prop="bloodType"
|
|
label-width="155px">
|
|
<el-input v-model="dataForm.bloodType"
|
|
placeholder="血型"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="婚姻状况"
|
|
prop="maritalStatus"
|
|
label-width="155px">
|
|
<el-input v-model="dataForm.maritalStatus"
|
|
placeholder="婚姻状况"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="与户主关系"
|
|
prop="relation"
|
|
label-width="155px">
|
|
<el-input v-model="dataForm.relation"
|
|
placeholder="与户主关系"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="国籍"
|
|
prop="nationality"
|
|
label-width="155px">
|
|
<el-input v-model="dataForm.nationality"
|
|
placeholder="国籍"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="政治面貌"
|
|
prop="politicsStatus"
|
|
label-width="155px">
|
|
<el-input v-model="dataForm.politicsStatus"
|
|
placeholder="政治面貌"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="宗教信仰"
|
|
prop="faith"
|
|
label-width="155px">
|
|
<el-input v-model="dataForm.faith"
|
|
placeholder="宗教信仰"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="毕业院校"
|
|
prop="graduateSchool"
|
|
label-width="155px">
|
|
<el-input v-model="dataForm.graduateSchool"
|
|
placeholder="毕业院校"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="专业"
|
|
prop="professional"
|
|
label-width="155px">
|
|
<el-input v-model="dataForm.professional"
|
|
placeholder="专业"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="工作状态"
|
|
prop="workStatus"
|
|
label-width="155px">
|
|
<el-input v-model="dataForm.workStatus"
|
|
placeholder="工作状态"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="行业类别"
|
|
prop="industryCategory"
|
|
label-width="155px">
|
|
<el-input v-model="dataForm.industryCategory"
|
|
placeholder="行业类别"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="工作单位(现/原)"
|
|
prop="workUnits"
|
|
label-width="155px">
|
|
<el-input v-model="dataForm.workUnits"
|
|
placeholder="工作单位(现/原)"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="兵役状况"
|
|
prop="military"
|
|
label-width="155px">
|
|
<el-input v-model="dataForm.military"
|
|
placeholder="兵役状况"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="人口类别"
|
|
prop="peopleCategories"
|
|
label-width="155px">
|
|
<el-input v-model="dataForm.peopleCategories"
|
|
placeholder="人口类别"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="特殊人群"
|
|
prop="specialCrowd"
|
|
label-width="155px">
|
|
<el-input v-model="dataForm.specialCrowd"
|
|
placeholder="特殊人群"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="有无车辆"
|
|
prop="car"
|
|
label-width="155px">
|
|
<el-input v-model="dataForm.car"
|
|
placeholder="有无车辆"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="车牌号"
|
|
prop="carNo"
|
|
label-width="155px">
|
|
<el-input v-model="dataForm.carNo"
|
|
placeholder="车牌号"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="人户状况"
|
|
prop="hushaiStatus"
|
|
label-width="155px">
|
|
<el-input v-model="dataForm.hushaiStatus"
|
|
placeholder="人户状况"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="籍贯"
|
|
prop="nativePlace"
|
|
label-width="155px">
|
|
<el-input v-model="dataForm.nativePlace"
|
|
placeholder="籍贯"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="往返情况"
|
|
prop="returnState"
|
|
label-width="155px">
|
|
<el-select v-model="dataForm.returnState"
|
|
placeholder="往返情况"
|
|
@change="selectModel($event)">
|
|
<el-option v-for="item in returnStateArr"
|
|
:key="item.dictValue"
|
|
:label="item.dictName"
|
|
:value="item.dictValue">
|
|
</el-option>
|
|
</el-select>
|
|
</el-form-item>
|
|
<div v-if="showFlagIn">
|
|
<el-form-item label="拟离开平阴时间"
|
|
prop="leaveTime"
|
|
label-width="155px">
|
|
<el-date-picker v-model="dataForm.leaveTime"
|
|
type="date"
|
|
placeholder="选择拟离开平阴时间"
|
|
label-width="150px"
|
|
value-format="yyyy-MM-dd"
|
|
format="yyyy-MM-dd"
|
|
style="width:200px">
|
|
</el-date-picker>
|
|
</el-form-item>
|
|
<el-form-item label="拟去往目的地"
|
|
prop="destinationAddressName"
|
|
label-width="155px">
|
|
<el-cascader ref="qwmddname"
|
|
v-model="dataForm.destinationAddressCodes"
|
|
:options="options"
|
|
@change="destinationChangeHandle"
|
|
:props="{ checkStrictly: false, multiple: true, emitPath: true }">
|
|
</el-cascader>
|
|
</el-form-item>
|
|
<el-form-item label="拟去往目的地详细地址"
|
|
prop="destinationAddressDetail"
|
|
label-width="155px">
|
|
<el-input v-model="dataForm.destinationAddressDetail"
|
|
placeholder="去往目的地详细地址"
|
|
maxlength="200"
|
|
clearable></el-input>
|
|
</el-form-item>
|
|
</div>
|
|
<div v-if="showFlagOut">
|
|
<el-form-item label="居住地关联人"
|
|
prop="relationPeople"
|
|
label-width="155px">
|
|
<el-input v-model="dataForm.relationPeople"
|
|
placeholder="居住地关联人"
|
|
maxlength="20"
|
|
clearable
|
|
@keyup.native="btKeyUpRelationPeople"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="关联人联系电话"
|
|
prop="relationPeopleMobile"
|
|
label-width="155px">
|
|
<el-input v-model="dataForm.relationPeopleMobile"
|
|
placeholder="关联人联系电话"
|
|
clearable
|
|
maxlength="11"
|
|
@keyup.native="btKeyUpRelationPeopleMobile"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="疫情风险等级"
|
|
prop="riskGrade"
|
|
label-width="155px">
|
|
<el-select v-model="dataForm.riskGrade"
|
|
placeholder="现居住地疫情风险等级">
|
|
<el-option v-for="item in riskGradeeArr"
|
|
:key="item.dictValue"
|
|
:label="item.dictName"
|
|
:value="item.dictValue">
|
|
</el-option>
|
|
</el-select>
|
|
</el-form-item>
|
|
<el-form-item label="拟返回平阴时间"
|
|
prop="goBarkTime"
|
|
label-width="155px">
|
|
<el-date-picker v-model="dataForm.goBarkTime"
|
|
type="date"
|
|
placeholder="返回平阴时间"
|
|
label-width="155px"
|
|
value-format="yyyy-MM-dd"
|
|
format="yyyy-MM-dd"
|
|
style="width:200px">
|
|
</el-date-picker>
|
|
</el-form-item>
|
|
<el-form-item label="现居住地"
|
|
prop="outLiveAddressName"
|
|
label-width="155px">
|
|
<el-cascader ref="zwjzdname"
|
|
v-model="dataForm.outLiveAddressCodes"
|
|
:options="options"
|
|
@change="outLiveAddressChangeHandle"
|
|
:props="{ checkStrictly: false, multiple: true, emitPath: true }">
|
|
</el-cascader>
|
|
</el-form-item>
|
|
<el-form-item label="现居住地详细地址"
|
|
prop="outLiveAddressDetail"
|
|
label-width="155px">
|
|
<el-input v-model="dataForm.outLiveAddressDetail"
|
|
placeholder="现居住地详细地址"
|
|
maxlength="200"
|
|
clearable></el-input>
|
|
</el-form-item>
|
|
</div>
|
|
<el-form-item label="社区/村庄"
|
|
prop="community"
|
|
label-width="155px">
|
|
<el-input v-model="dataForm.community"
|
|
placeholder="社区/村庄"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="网格名称"
|
|
prop="gridName"
|
|
label-width="155px">
|
|
<el-input v-model="dataForm.gridName"
|
|
placeholder="网格名称"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="小区"
|
|
prop="plot"
|
|
label-width="155px">
|
|
<el-input v-model="dataForm.plot"
|
|
placeholder="小区"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="楼号"
|
|
prop="buildingNo"
|
|
label-width="155px">
|
|
<el-input v-model="dataForm.buildingNo"
|
|
placeholder="楼号"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="单元"
|
|
prop="unit"
|
|
label-width="155px">
|
|
<el-input v-model="dataForm.unit"
|
|
placeholder="单元"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="房间号"
|
|
prop="roomNo"
|
|
label-width="155px">
|
|
<el-input v-model="dataForm.roomNo"
|
|
placeholder="房间号"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="房屋性质"
|
|
prop="houseProperty"
|
|
label-width="155px">
|
|
<el-input v-model="dataForm.houseProperty"
|
|
placeholder="房屋性质"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="家庭保障情况"
|
|
prop="familySecurity"
|
|
label-width="155px">
|
|
<el-input v-model="dataForm.familySecurity"
|
|
placeholder="家庭保障情况"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="居住情况"
|
|
prop="livingSituation"
|
|
label-width="155px">
|
|
<el-input v-model="dataForm.livingSituation"
|
|
placeholder="居住情况"></el-input>
|
|
</el-form-item>
|
|
</el-form>
|
|
<template slot="footer">
|
|
<el-button @click="visible = false">{{ $t('cancel') }}</el-button>
|
|
<el-button type="primary"
|
|
:disabled="isAble"
|
|
@click="dataFormSubmitHandle()">{{ $t('confirm') }}</el-button>
|
|
</template>
|
|
</el-dialog>
|
|
</template>
|
|
|
|
<script>
|
|
import debounce from 'lodash/debounce'
|
|
|
|
export default {
|
|
data () {
|
|
return {
|
|
visible: false,
|
|
dataForm: {
|
|
userName: '',
|
|
idCard: '',
|
|
mobile: '',
|
|
householdRegisterCode: '',
|
|
householdRegisterName: '',
|
|
householdRegisterDetail: '',
|
|
liveAddressCode: '',
|
|
liveAddressName: '',
|
|
liveAddressDetail: '',
|
|
relationPeople: '',
|
|
relationPeopleMobile: '',
|
|
outLiveAddressCode: '',
|
|
outLiveAddressName: '',
|
|
outLiveAddressDetail: '',
|
|
returnState: '1',
|
|
householdRegisterCodes: [],
|
|
liveAddressCodes: [],
|
|
outLiveAddressCodes: [],
|
|
leaveTime: '',
|
|
destinationAddressName: '',
|
|
destinationAddressCode: '',
|
|
destinationAddressDetail: '',
|
|
destinationAddressCodes: [],
|
|
riskGrade: '',
|
|
goBarkTime: '',
|
|
gender: '',
|
|
bloodType: '',
|
|
nation: '',
|
|
formerName: '',
|
|
birthday: '',
|
|
height: '',
|
|
standardOfCulture: '',
|
|
health: '',
|
|
maritalStatus: '',
|
|
relation: '',
|
|
nationality: '',
|
|
politicsStatus: '',
|
|
faith: '',
|
|
graduateSchool: '',
|
|
professional: '',
|
|
workStatus: '',
|
|
industryCategory: '',
|
|
workUnits: '',
|
|
military: '',
|
|
peopleCategories: '',
|
|
specialCrowd: '',
|
|
car: '',
|
|
carNo: '',
|
|
hushaiStatus: '',
|
|
nativePlace: '',
|
|
community: '',
|
|
gridName: '',
|
|
plot: '',
|
|
buildingNo: '',
|
|
unit: '',
|
|
roomNo: '',
|
|
houseProperty: '',
|
|
familySecurity: '',
|
|
livingSituation: ''
|
|
},
|
|
returnStateArr: [
|
|
{ dictValue: '1', dictName: '在本地' },
|
|
{ dictValue: '2', dictName: '在外地' }
|
|
],
|
|
options: [],
|
|
liveOptions: [],
|
|
isAble: false,
|
|
showFlagIn: true,
|
|
showFlagOut: false,
|
|
riskGradeeArr: [
|
|
{ dictValue: '1', dictName: '低风险' },
|
|
{ dictValue: '2', dictName: '中风险' },
|
|
{ dictValue: '3', dictName: '高风险' }
|
|
],
|
|
gender: [
|
|
{ dictValue: '男', dictName: '男' },
|
|
{ dictValue: '女', dictName: '女' }
|
|
],
|
|
vueLoading: true
|
|
}
|
|
},
|
|
computed: {
|
|
dataRule () {
|
|
return {
|
|
userName: [
|
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' }
|
|
],
|
|
mobile: [
|
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' }
|
|
],
|
|
idCard: [
|
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' },
|
|
{ pattern: /(^\d{15}$)|bai(^\d{18}$)|(^\d{17}(\d|X|x)$)/, message: '请输入正确身份证号', trigger: 'blur' }
|
|
]
|
|
}
|
|
}
|
|
},
|
|
methods: {
|
|
init () {
|
|
this.visible = true
|
|
this.isAble = true
|
|
this.vueLoading = true
|
|
// 清空组织树选中
|
|
this.dataForm.destinationAddressCodes = []
|
|
this.getOptions()
|
|
this.getLiveOptions()
|
|
this.$nextTick(() => {
|
|
this.$refs['dataForm'].resetFields()
|
|
if (this.dataForm.id) {
|
|
this.getInfo()
|
|
}
|
|
})
|
|
},
|
|
// 往返情况取值变化事件
|
|
selectModel (id) {
|
|
if (id === '1') {
|
|
// 在平阴
|
|
this.showFlagIn = true
|
|
this.showFlagOut = false
|
|
} else {
|
|
this.showFlagIn = false
|
|
this.showFlagOut = true
|
|
}
|
|
},
|
|
householdRegisterChangeHandle (value, selectedData) {
|
|
let householdRegisterCode = ''
|
|
let householdRegisterName = ''
|
|
var householdRegisterCodeArr = this.$refs['hjdname'].currentValue
|
|
var householdRegisterNameArr = this.$refs['hjdname'].currentLabels
|
|
for (var i = 0; i < householdRegisterCodeArr.length; i++) {
|
|
if (i === householdRegisterCodeArr.length - 1) {
|
|
householdRegisterCode += householdRegisterCodeArr[i]
|
|
} else {
|
|
householdRegisterCode += householdRegisterCodeArr[i] + ','
|
|
}
|
|
}
|
|
for (var j = 0; j < householdRegisterNameArr.length; j++) {
|
|
if (j === householdRegisterNameArr.length - 1) {
|
|
householdRegisterName += householdRegisterNameArr[j]
|
|
} else {
|
|
householdRegisterName += householdRegisterNameArr[j] + '/'
|
|
}
|
|
}
|
|
this.dataForm.householdRegisterCode = householdRegisterCode
|
|
this.dataForm.householdRegisterName = householdRegisterName
|
|
},
|
|
liveAddressChangeHandle (value, selectedData) {
|
|
let liveAddressCode = ''
|
|
let liveAddressName = ''
|
|
var liveAddressCodeArr = this.$refs['jzdname'].currentValue
|
|
var liveAddressNameArr = this.$refs['jzdname'].currentLabels
|
|
for (var i = 0; i < liveAddressCodeArr.length; i++) {
|
|
if (i === liveAddressCodeArr.length - 1) {
|
|
liveAddressCode += liveAddressCodeArr[i]
|
|
} else {
|
|
liveAddressCode += liveAddressCodeArr[i] + ','
|
|
}
|
|
}
|
|
for (var j = 0; j < liveAddressNameArr.length; j++) {
|
|
if (j === liveAddressNameArr.length - 1) {
|
|
liveAddressName += liveAddressNameArr[j]
|
|
} else {
|
|
liveAddressName += liveAddressNameArr[j] + '/'
|
|
}
|
|
}
|
|
this.dataForm.liveAddressCode = liveAddressCode
|
|
this.dataForm.liveAddressName = liveAddressName
|
|
},
|
|
outLiveAddressChangeHandle (value, selectedData) {
|
|
let outLiveAddressCode = ''
|
|
let outLiveAddressName = ''
|
|
var outLiveAddressCodeArr = this.$refs['zwjzdname'].currentValue
|
|
var outLiveAddressNameArr = this.$refs['zwjzdname'].currentLabels
|
|
for (var i = 0; i < outLiveAddressCodeArr.length; i++) {
|
|
if (i === outLiveAddressCodeArr.length - 1) {
|
|
outLiveAddressCode += outLiveAddressCodeArr[i]
|
|
} else {
|
|
outLiveAddressCode += outLiveAddressCodeArr[i] + ','
|
|
}
|
|
}
|
|
for (var j = 0; j < outLiveAddressNameArr.length; j++) {
|
|
if (j === outLiveAddressNameArr.length - 1) {
|
|
outLiveAddressName += outLiveAddressNameArr[j]
|
|
} else {
|
|
outLiveAddressName += outLiveAddressNameArr[j] + '/'
|
|
}
|
|
}
|
|
this.dataForm.outLiveAddressCode = outLiveAddressCode
|
|
this.dataForm.outLiveAddressName = outLiveAddressName
|
|
},
|
|
destinationChangeHandle (value, selectedData) {
|
|
let destinationAddressCode = ''
|
|
let destinationAddressName = ''
|
|
var destinationAddressCodeArr = this.$refs['qwmddname'].currentValue
|
|
var destinationAddressNameArr = this.$refs['qwmddname'].currentLabels
|
|
for (var i = 0; i < destinationAddressCodeArr.length; i++) {
|
|
if (i === destinationAddressCodeArr.length - 1) {
|
|
destinationAddressCode += destinationAddressCodeArr[i]
|
|
} else {
|
|
destinationAddressCode += destinationAddressCodeArr[i] + ','
|
|
}
|
|
}
|
|
for (var j = 0; j < destinationAddressNameArr.length; j++) {
|
|
if (j === destinationAddressNameArr.length - 1) {
|
|
destinationAddressName += destinationAddressNameArr[j]
|
|
} else {
|
|
destinationAddressName += destinationAddressNameArr[j] + '/'
|
|
}
|
|
}
|
|
this.dataForm.destinationAddressCode = destinationAddressCode
|
|
this.dataForm.destinationAddressName = destinationAddressName
|
|
},
|
|
getOptions () {
|
|
this.$http
|
|
.get(`sys/select/getSysArea`)
|
|
.then(({ data: res }) => {
|
|
if (res.code !== 0) {
|
|
return this.$message.error(res.msg)
|
|
}
|
|
this.options = res.data
|
|
this.vueLoading = false
|
|
this.isAble = false
|
|
})
|
|
.catch(() => {
|
|
})
|
|
},
|
|
getLiveOptions () {
|
|
this.$http
|
|
.get(`sys/select/getLiveArea`)
|
|
.then(({ data: res }) => {
|
|
if (res.code !== 0) {
|
|
return this.$message.error(res.msg)
|
|
}
|
|
this.liveOptions = res.data
|
|
})
|
|
.catch(() => {
|
|
})
|
|
},
|
|
// 获取信息
|
|
getInfo () {
|
|
this.$http.get(`sys/epidemicuserinfo/${this.dataForm.id}`).then(({ data: res }) => {
|
|
if (res.code !== 0) {
|
|
return this.$message.error(res.msg)
|
|
}
|
|
this.dataForm = {
|
|
...this.dataForm,
|
|
...res.data
|
|
}
|
|
if (this.dataForm.returnState === '1') {
|
|
// 在平阴
|
|
this.showFlagIn = true
|
|
this.showFlagOut = false
|
|
} else {
|
|
this.showFlagIn = false
|
|
this.showFlagOut = true
|
|
}
|
|
}).catch(() => {
|
|
})
|
|
},
|
|
// 表单提交
|
|
dataFormSubmitHandle: debounce(function () {
|
|
this.$refs['dataForm'].validate((valid) => {
|
|
if (!valid) {
|
|
return false
|
|
}
|
|
this.isAble = true
|
|
this.$http[!this.dataForm.id ? 'post' : 'put']('sys/epidemicuserinfo/', this.dataForm).then(({ data: res }) => {
|
|
if (res.code !== 0) {
|
|
this.isAble = false
|
|
return this.$message.error(res.msg)
|
|
}
|
|
this.$message({
|
|
message: this.$t('prompt.success'),
|
|
type: 'success',
|
|
duration: 500,
|
|
onClose: () => {
|
|
this.visible = false
|
|
this.$emit('refreshDataList')
|
|
}
|
|
})
|
|
}).catch(() => {
|
|
})
|
|
})
|
|
}, 1000, { 'leading': true, 'trailing': false }),
|
|
btKeyUpIdCard (e) {
|
|
e.target.value = e.target.value.replace(/[`~!@#$%^&*()_+=<>?:"{}|·~!@#¥%……&*()——+={}|《》?:“”【】、;‘’,。、]/g, '')
|
|
this.dataForm.idCard = e.target.value
|
|
},
|
|
btKeyUpMobile (e) {
|
|
e.target.value = e.target.value.replace(/[`~!@#$%^&*()_+=<>?:"{}|·~!@#¥%……&*()——+={}|《》?:“”【】、;‘’,。、]/g, '')
|
|
this.dataForm.mobile = e.target.value
|
|
},
|
|
btKeyUpRelationPeopleMobile (e) {
|
|
e.target.value = e.target.value.replace(/[`~!@#$%^&*()_+=<>?:"{}|·~!@#¥%……&*()——+={}|《》?:“”【】、;‘’,。、]/g, '')
|
|
this.dataForm.relationPeopleMobile = e.target.value
|
|
},
|
|
btKeyUpUserName (e) {
|
|
e.target.value = e.target.value.replace(/[`~!@#$%^&*()_+=<>?:"{}|·~!@#¥%……&*()——+={}|《》?:“”【】、;‘’,。、]/g, '')
|
|
this.dataForm.userName = e.target.value
|
|
},
|
|
btKeyUpRelationPeople (e) {
|
|
e.target.value = e.target.value.replace(/[`~!@#$%^&*()_+=<>?:"{}|·~!@#¥%……&*()——+={}|《》?:“”【】、;‘’,。、]/g, '')
|
|
this.dataForm.relationPeople = e.target.value
|
|
}
|
|
}
|
|
}
|
|
</script>
|
|
|