From 854495c7add18f328063a9717ce3c904218aba16 Mon Sep 17 00:00:00 2001 From: qq787203167 <787203167@qq.com> Date: Sat, 12 Feb 2022 15:00:38 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=BF=85=E5=A1=AB=E6=A0=A1?= =?UTF-8?q?=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- jero-web/src/components/addForm/index.vue | 144 ++++++++++++------ .../src/components/dict/JDictSelectTag.vue | 2 +- 2 files changed, 101 insertions(+), 45 deletions(-) diff --git a/jero-web/src/components/addForm/index.vue b/jero-web/src/components/addForm/index.vue index 5822fe27e..0ec234d4d 100644 --- a/jero-web/src/components/addForm/index.vue +++ b/jero-web/src/components/addForm/index.vue @@ -11,7 +11,7 @@
- * + * {{item.enName}}
{{item.name}}
@@ -24,7 +24,7 @@
- * + * {{item.enName}}
{{item.name}}
@@ -39,7 +39,7 @@
- * + * {{item.enName}}
{{item.name}}
@@ -53,7 +53,7 @@
- * + * {{item.enName}}
{{item.name}}
@@ -67,7 +67,7 @@
- * + * {{item.enName}}
{{item.name}}
@@ -80,12 +80,13 @@
- * + * {{item.enName}}
{{item.name}}
@@ -95,7 +96,7 @@
- * + * {{item.enName}}
{{item.name}}
@@ -110,12 +111,14 @@
- * + * {{item.enName}}
{{item.name}}
-
@@ -124,7 +127,7 @@
- * + * {{item.enName}}
{{item.name}}
@@ -137,7 +140,7 @@
- * + * {{item.enName}}
{{item.name}}
@@ -155,7 +158,7 @@
- * + * {{item.enName}}
{{item.name}}
@@ -174,7 +177,7 @@
- * + * {{item.enName}}
{{item.name}}
@@ -187,7 +190,7 @@
- * + * {{item.enName}}
{{item.name}}
@@ -202,7 +205,7 @@
- * + * {{item.enName}}
{{item.name}}
@@ -216,7 +219,7 @@
- * + * {{item.enName}}
{{item.name}}
@@ -229,7 +232,7 @@
- * + * {{item.enName}}
{{item.name}}
@@ -242,7 +245,7 @@
- * + * {{item.enName}}
{{item.name}}
@@ -257,7 +260,7 @@
- * + * {{item.enName}}
{{item.name}}
@@ -272,7 +275,7 @@
- * + * {{item.enName}}
{{item.name}}
@@ -286,7 +289,7 @@
- * + * {{item.enName}}
{{item.name}}
@@ -299,7 +302,7 @@
- * + * {{item.enName}}
{{item.name}}
@@ -317,7 +320,7 @@
- * + * {{item.enName}}
{{item.name}}
@@ -359,11 +362,7 @@ return { formInline: {}, isFormInline: false, - rules: { - title: [ - { required: true, message: 'Please input Activity name', trigger: 'blur' } - ] - }, + rules: {}, labelCol: { xs: { span: 24 }, sm: { span: 6 } @@ -380,7 +379,8 @@ placeholder: '请输入名称', attrModel: 'name', enName: 'Name', - text: '基本信息' + text: '基本信息', + Required: true }, { id: 2, @@ -389,7 +389,8 @@ placeholder: '请输入标题', attrModel: 'title', enName: 'title', - text: '基本信息' + text: '基本信息', + Required: true }, { id: 3, @@ -399,7 +400,8 @@ enName: 'Single choice', validStatus: 'valid_status', attrModel: 'radio', - text: '基本信息' + text: '基本信息', + Required: true }, { id: 4, @@ -409,7 +411,8 @@ placeholder: '请输入标题', attrModel: 'checkbox', validStatus: 'valid_status', - text: '基本信息' + text: '基本信息', + Required: true }, { id: 5, @@ -417,9 +420,10 @@ name: '下拉单选', enName: 'title', placeholder: '请输入标题', - attrModel: 'radio', + attrModel: 'selete', validStatus: 'valid_status', - text: '基本信息' + text: '基本信息', + Required: true }, { id: 6, @@ -429,7 +433,8 @@ placeholder: '请输入标题', validStatus: 'valid_status', attrModel: 'selectAll', - text: '基本信息' + text: '基本信息', + Required: true }, { id: 7, @@ -446,7 +451,7 @@ name: '文本框', enName: 'title', placeholder: '请输入文本框', - attrModel: 'number', + attrModel: 'textArea', text: '基本信息' }, { @@ -506,8 +511,7 @@ } }, mounted() { - this.isFormInline = false - this.isFormInline = true + this.IntegrateData() if (this.isDisplayType) { this.headerText.forEach((res) => { res.content = [] @@ -518,13 +522,14 @@ }) }) } - console.log('dataheae',this.headerText) }, methods: { sumber() { + console.log(this.formInline) this.$refs.ruleForm.validate(valid => { if (valid) { - alert('submit!') + console.log(valid) + console.log(this.formInline) } else { console.log('error submit!!') return false @@ -549,7 +554,58 @@ this.formInline[this.uploadName] = attIdList.join(',') this.formInline = { ...this.formInline } }, - + handleInput(value) { + this.$nextTick(() => { + this.formInline = { ...this.formInline } + this.$refs.ruleForm.validateField([value]) + }) + }, + IntegrateData() { + this.isFormInline = false + let rules = {} + this.dataList.forEach((res, index) => { + const rule = [] + if (res.Required) { + if (res.type === 'INPUT') { + rule.push({ + required: true, + message: res.name + '不能为空', + trigger: 'blur' + }) + } else if (res.type === 'CHECKBOX' || res.type === 'SELECTALL' || + res.type === 'SINGLETIME' || res.type === 'SMULTITIME') { + rule.push({ + required: true, + message: res.name + '不能为空', + trigger: 'change' + }) + } else if (res.type === 'NUMBER') { + rule.push({ + required: true, + message: res.name + '不能为空', + trigger: 'blur' + }) + } else if (res.type === 'TEXTAREA') { + rule.push({ + required: true, + message: res.name + '不能为空', + trigger: 'blur' + }) + } else if (res.type === 'RADIO' || res.type === 'SELECT') { + rule.push({ + required: true, + message: res.name + '不能为空', + trigger: 'change' + }) + } + } + if (rule.length > 0) { + rules[res.attrModel] = rule + } + }) + this.$set(this, 'rules', rules) + this.isFormInline = true + } } } @@ -563,9 +619,9 @@ width: calc(100% - 130px); } - .formAdd .ant-form-item { - margin-bottom: 20px; - } + /*.formAdd .ant-form-item {*/ + /* margin-bottom: 20px;*/ + /*}*/ .itemModel .ant-form-item-control-wrapper { width: 100%; diff --git a/jero-web/src/components/dict/JDictSelectTag.vue b/jero-web/src/components/dict/JDictSelectTag.vue index 78a01d3d3..0c991d188 100644 --- a/jero-web/src/components/dict/JDictSelectTag.vue +++ b/jero-web/src/components/dict/JDictSelectTag.vue @@ -89,7 +89,7 @@ }else{ val = e } - console.log(val); + console.log(val) if(this.triggerChange){ this.$emit('change', val); }else{