This commit is contained in:
yanran200730
2022-02-11 10:31:28 +08:00
parent 76af1c2d14
commit 7d31bbe3d0
5 changed files with 201 additions and 69 deletions

View File

@@ -67,20 +67,15 @@
<el-date-picker v-model="formData[item.formDbName]" type="datetime" placeholder="选择日期时间" :disabled="item.disable == 1"
value-format="yyyy-MM-DD HH-mm-ss"></el-date-picker>
</template>
<template v-else-if="item.type == 'time'">
<el-time-picker v-model="formData[item.formDbName]" placeholder="请选择" :disabled="item.disable == 1"
value-format="HH-mm-ss"></el-time-picker>
</template>
<template v-else-if="item.type == 'upload'">
<ai-uploader :instance="instance" isShowTip fileType="file" v-model="formData[item.formDbName]" :disabled="item.disable == 1"
acceptType=".zip,.rar,.doc,.docx,.xls,.ppt,.pptx,.pdf,.txt,.jpg,.png,.xlsx"
:limit="item.fileMaxCount" :maxSize="item.fileChoseSize"></ai-uploader>
</template>
<template v-else-if="item.type == 'rtf'">
<ai-editor v-model="formData[item.formDbName]" :instance="instance"/>
</template>
<template v-else-if="item.type == 'area'">
<ai-area-get :instance="instance" v-model="formData[item.formDbName]" :name.sync="formData.areaName" :disabled="item.disable == 1"/>
<ai-area-select
placeholder="请选择地区"
clearable
always-show
:instance="instance"
v-model="formData[item.formDbName]"
@fullname="v => formData.areaName = v"
/>
</template>
</el-form-item>
</div>
@@ -127,6 +122,30 @@ export default {
dict: Object
},
data() {
var regPhone = (rule, value, callback) => {
if (!value) {
return callback(new Error('请输入电话'))
} else {
const reg = /^[0-9]{3,11}$/
if (reg.test(value)) {
callback()
} else {
return callback(new Error('请输入正确的电话号码'))
}
}
}
let IdNumberPass = (rule, value, callback) => {
if (value) {
if (this.idCardNoUtil.checkIdCardNo(value)) {
callback();
} else {
callback(new Error('身份证号格式错误'))
}
} else {
callback(new Error('请输入身份证号'))
}
}
return {
showGrid: false,
formData: {
@@ -169,22 +188,24 @@ export default {
type: 'input',
formDbName: 'idNumber',
mustFill: 1,
fieldTips: '请输入身份证号'
fieldTips: '请输入身份证号',
rules: { required: true, validator: IdNumberPass, trigger: 'blur' }
},
{
label: '联系电话',
type: 'input',
formDbName: 'phone',
mustFill: 1,
fieldTips: '请输入联系电话'
fieldTips: '请输入联系电话',
rules: { required: true, validator: regPhone, trigger: 'blur' }
},
{
label: '所属区域',
type: 'area',
formDbName: 'areaId',
mustFill: 1,
fieldTips: '请选择所属区域',
maxLength: 20
grid: 1,
fieldTips: '请选择所属区域'
},
{
label: '详细地址',
@@ -250,6 +271,9 @@ export default {
if (e.mustFill == 1) {
rules[e.formDbName]?.push({required: true, message: e.fieldTips})
}
if (e.rules) {
rules[e.formDbName].push(e.rules)
}
})
return rules
}