|
@@ -75,14 +75,14 @@
|
|
|
</el-table-column>
|
|
|
</el-table>
|
|
|
<el-dialog title="首页项列表" :visible.sync="dialogFormVisible">
|
|
|
- <el-form :model="form">
|
|
|
- <el-form-item label="项目名称" :label-width="formLabelWidth">
|
|
|
+ <el-form ref="ruleForm" :model="form" :rules="rules">
|
|
|
+ <el-form-item label="项目名称" :label-width="formLabelWidth" prop="content">
|
|
|
<el-input v-model="form.content" autocomplete="off" clearable />
|
|
|
</el-form-item>
|
|
|
- <el-form-item v-if="type === 'add'" label="icon" :label-width="formLabelWidth">
|
|
|
+ <el-form-item v-if="type === 'add'" label="icon" :label-width="formLabelWidth" prop="icon">
|
|
|
<el-input v-model="form.icon" autocomplete="off" clearable />
|
|
|
</el-form-item>
|
|
|
- <el-form-item v-if="type === 'add'" label="模板" :label-width="formLabelWidth">
|
|
|
+ <el-form-item v-if="type === 'add'" label="模板" :label-width="formLabelWidth" prop="targetType">
|
|
|
<el-select v-model="form.targetType" placeholder="请选择">
|
|
|
<el-option value="LIBRARY" label="图书馆课程" />
|
|
|
<el-option value="PAY" label="知识付费" />
|
|
@@ -91,13 +91,13 @@
|
|
|
<el-option value="URL" label="URL" />
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="排序" :label-width="formLabelWidth">
|
|
|
+ <el-form-item label="排序" :label-width="formLabelWidth" prop="sort">
|
|
|
<el-input v-model="form.sort" autocomplete="off" clearable />
|
|
|
</el-form-item>
|
|
|
- <el-form-item v-if="type === 'add'" label="Code" :label-width="formLabelWidth">
|
|
|
+ <el-form-item v-if="type === 'add'" label="Code" :label-width="formLabelWidth" prop="targetContent">
|
|
|
<el-input v-model="form.targetContent" autocomplete="off" clearable />
|
|
|
</el-form-item>
|
|
|
- <el-form-item v-if="type === 'add'" label="状态" :label-width="formLabelWidth">
|
|
|
+ <el-form-item v-if="type === 'add'" label="状态" :label-width="formLabelWidth" prop="status">
|
|
|
<el-select v-model="form.status" placeholder="请选择">
|
|
|
<el-option value="NOT_ON_STOCK" label="下架" />
|
|
|
<el-option value="HAS_ON_STOCK" label="上架" />
|
|
@@ -106,7 +106,7 @@
|
|
|
</el-form>
|
|
|
<div slot="footer" class="dialog-footer">
|
|
|
<el-button @click="dialogFormVisible = false">取 消</el-button>
|
|
|
- <el-button type="primary" @click="handOk">确 定</el-button>
|
|
|
+ <el-button type="primary" @click="handOk('ruleForm')">确 定</el-button>
|
|
|
</div>
|
|
|
</el-dialog>
|
|
|
<el-pagination
|
|
@@ -130,7 +130,21 @@ export default {
|
|
|
dialogFormVisible: false,
|
|
|
type: '',
|
|
|
formLabelWidth: '120px',
|
|
|
- page: 1
|
|
|
+ page: 1,
|
|
|
+ rules: {
|
|
|
+ content: [
|
|
|
+ { required: true, message: '请输入项目名称', trigger: 'blur' }
|
|
|
+ ],
|
|
|
+ icon: [
|
|
|
+ { required: true, message: '请输入icon', trigger: 'blur' }
|
|
|
+ ],
|
|
|
+ targetType: [{ required: true, message: '请选择模板', trigger: 'change' }],
|
|
|
+ sort: [
|
|
|
+ { required: true, message: '请输入排序', trigger: 'blur' }
|
|
|
+ ],
|
|
|
+ targetContent: [{ required: true, message: '请输入项目Code', trigger: 'blur' }],
|
|
|
+ status: [{ required: true, message: '请选择状态', trigger: 'change' }]
|
|
|
+ }
|
|
|
}
|
|
|
},
|
|
|
created() {
|
|
@@ -261,23 +275,30 @@ export default {
|
|
|
})
|
|
|
})
|
|
|
},
|
|
|
- handOk() {
|
|
|
- if (this.type === 'set') {
|
|
|
- console.log(this.form)
|
|
|
- this.$store.dispatch('dashboard/setRowItemList', this.form).then(() => {
|
|
|
- this.dialogFormVisible = false
|
|
|
- this.$store.dispatch('dashboard/getRowItemList', {
|
|
|
- id: this.$route.query.id
|
|
|
- })
|
|
|
- })
|
|
|
- } else if (this.form.content !== '' && this.form.icon !== '' && this.form.targetType !== '' && this.form.sort !== '' && this.form.status !== '' && this.form.targetContent !== '') {
|
|
|
- this.$store.dispatch('dashboard/addRowItemList', this.form).then(() => {
|
|
|
- this.dialogFormVisible = false
|
|
|
- this.$store.dispatch('dashboard/getRowItemList', {
|
|
|
- id: this.$route.query.id
|
|
|
- })
|
|
|
- })
|
|
|
- }
|
|
|
+ handOk(formName) {
|
|
|
+ this.$refs[formName].validate((valid) => {
|
|
|
+ if (valid) {
|
|
|
+ if (this.type === 'set') {
|
|
|
+ console.log(this.form)
|
|
|
+ this.$store.dispatch('dashboard/setRowItemList', this.form).then(() => {
|
|
|
+ this.dialogFormVisible = false
|
|
|
+ this.$store.dispatch('dashboard/getRowItemList', {
|
|
|
+ id: this.$route.query.id
|
|
|
+ })
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ this.$store.dispatch('dashboard/addRowItemList', this.form).then(() => {
|
|
|
+ this.dialogFormVisible = false
|
|
|
+ this.$store.dispatch('dashboard/getRowItemList', {
|
|
|
+ id: this.$route.query.id
|
|
|
+ })
|
|
|
+ })
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ console.log('error submit!!')
|
|
|
+ return false
|
|
|
+ }
|
|
|
+ })
|
|
|
},
|
|
|
handleCurrentChange(val) {
|
|
|
console.log(val)
|