|
|
|
@ -3,41 +3,41 @@ |
|
|
|
|
<!-- 对话框(添加 / 修改) --> |
|
|
|
|
<el-dialog :title="dialogTitle" :visible.sync="dialogVisible" width="45%" v-dialogDrag append-to-body> |
|
|
|
|
<el-form ref="formRef" :model="formData" :rules="formRules" v-loading="formLoading" label-width="100px"> |
|
|
|
|
<el-form-item label="模块类型" prop="type"> |
|
|
|
|
<el-select v-model="formData.type" placeholder="请选择模块类型"> |
|
|
|
|
<el-option v-for="dict in this.getDictDatas(DICT_TYPE.COLUMN_TYPE)" |
|
|
|
|
:key="dict.value" :label="dict.label" :value="dict.value"/> |
|
|
|
|
</el-select> |
|
|
|
|
</el-form-item> |
|
|
|
|
<el-form-item label="资讯类型" prop="infoType"> |
|
|
|
|
<el-select v-model="formData.infoType" placeholder="请选择资讯类型"> |
|
|
|
|
<el-option v-for="dict in this.getDictDatas(DICT_TYPE.INFO_TYPE)" |
|
|
|
|
:key="dict.value" :label="dict.label" :value="dict.value"/> |
|
|
|
|
</el-select> |
|
|
|
|
</el-form-item> |
|
|
|
|
<el-form-item label="标题" prop="title"> |
|
|
|
|
<el-input v-model="formData.title" placeholder="请输入标题"/> |
|
|
|
|
</el-form-item> |
|
|
|
|
<el-form-item label="副标题" prop="subtitle"> |
|
|
|
|
<el-input v-model="formData.subtitle" placeholder="请输入副标题"/> |
|
|
|
|
</el-form-item> |
|
|
|
|
<el-form-item label="跳转链接" prop="url"> |
|
|
|
|
<el-input v-model="formData.url" placeholder="请输入跳转链接"/> |
|
|
|
|
</el-form-item> |
|
|
|
|
<el-form-item label="简介"> |
|
|
|
|
<Editor v-model="formData.introduction" :min-height="192"/> |
|
|
|
|
</el-form-item> |
|
|
|
|
<el-form-item label="logo"> |
|
|
|
|
<ImageUpload v-model="formData.logo"/> |
|
|
|
|
</el-form-item> |
|
|
|
|
<el-form-item label="图库"> |
|
|
|
|
<ImageUpload v-model="formData.image"/> |
|
|
|
|
</el-form-item> |
|
|
|
|
<el-form-item label="内容"> |
|
|
|
|
<Editor v-model="formData.content" :min-height="192"/> |
|
|
|
|
</el-form-item> |
|
|
|
|
<el-form-item label="模块类型" prop="type"> |
|
|
|
|
<el-select v-model="formData.type" placeholder="请选择模块类型"> |
|
|
|
|
<el-option v-for="dict in this.getDictDatas(DICT_TYPE.COLUMN_TYPE)" |
|
|
|
|
:key="dict.value" :label="dict.label" :value="dict.value" /> |
|
|
|
|
</el-select> |
|
|
|
|
</el-form-item> |
|
|
|
|
<el-form-item v-if="formData.type==7" label="资讯类型" prop="infoType"> |
|
|
|
|
<el-select v-model="formData.infoType" placeholder="请选择资讯类型"> |
|
|
|
|
<el-option v-for="dict in this.getDictDatas(DICT_TYPE.INFO_TYPE)" |
|
|
|
|
:key="dict.value" :label="dict.label" :value="dict.value" /> |
|
|
|
|
</el-select> |
|
|
|
|
</el-form-item> |
|
|
|
|
<el-form-item label="标题" prop="title"> |
|
|
|
|
<el-input v-model="formData.title" placeholder="请输入标题" /> |
|
|
|
|
</el-form-item> |
|
|
|
|
<el-form-item label="副标题" prop="subtitle"> |
|
|
|
|
<el-input v-model="formData.subtitle" placeholder="请输入副标题" /> |
|
|
|
|
</el-form-item> |
|
|
|
|
<el-form-item label="跳转链接" prop="url"> |
|
|
|
|
<el-input v-model="formData.url" placeholder="请输入跳转链接" /> |
|
|
|
|
</el-form-item> |
|
|
|
|
<el-form-item label="简介"> |
|
|
|
|
<Editor v-model="formData.introduction" :min-height="192"/> |
|
|
|
|
</el-form-item> |
|
|
|
|
<el-form-item label="logo"> |
|
|
|
|
<ImageUpload :limit="1" v-model="formData.logo"/> |
|
|
|
|
</el-form-item> |
|
|
|
|
<el-form-item label="图库"> |
|
|
|
|
<ImageUpload :showPositionInput="formData.type==6" v-model="formData.image"/> |
|
|
|
|
</el-form-item> |
|
|
|
|
<el-form-item label="内容"> |
|
|
|
|
<Editor v-model="formData.content" :min-height="192"/> |
|
|
|
|
</el-form-item> |
|
|
|
|
</el-form> |
|
|
|
|
<div slot="footer" class="dialog-footer"> |
|
|
|
|
<div slot="footer" class="dialog-footer"> |
|
|
|
|
<el-button type="primary" @click="submitForm" :disabled="formLoading">确 定</el-button> |
|
|
|
|
<el-button @click="dialogVisible = false">取 消</el-button> |
|
|
|
|
</div> |
|
|
|
@ -46,102 +46,101 @@ |
|
|
|
|
</template> |
|
|
|
|
|
|
|
|
|
<script> |
|
|
|
|
import * as ColumnInfoApi from '@/api/cjy/columninfo'; |
|
|
|
|
import ImageUpload from '@/components/ImageUpload'; |
|
|
|
|
import Editor from '@/components/Editor'; |
|
|
|
|
import {DICT_TYPE, getDictDatas} from "@/utils/dict"; |
|
|
|
|
|
|
|
|
|
export default { |
|
|
|
|
name: "ColumnInfoForm", |
|
|
|
|
components: { |
|
|
|
|
ImageUpload, |
|
|
|
|
Editor, |
|
|
|
|
}, |
|
|
|
|
data() { |
|
|
|
|
return { |
|
|
|
|
// 弹出层标题 |
|
|
|
|
dialogTitle: "", |
|
|
|
|
// 是否显示弹出层 |
|
|
|
|
dialogVisible: false, |
|
|
|
|
// 表单的加载中:1)修改时的数据加载;2)提交的按钮禁用 |
|
|
|
|
formLoading: false, |
|
|
|
|
// 表单参数 |
|
|
|
|
formData: { |
|
|
|
|
id: undefined, |
|
|
|
|
type: undefined, |
|
|
|
|
infoType: undefined, |
|
|
|
|
title: undefined, |
|
|
|
|
subtitle: undefined, |
|
|
|
|
url: undefined, |
|
|
|
|
introduction: undefined, |
|
|
|
|
logo: undefined, |
|
|
|
|
image: undefined, |
|
|
|
|
content: undefined, |
|
|
|
|
}, |
|
|
|
|
// 表单校验 |
|
|
|
|
formRules: { |
|
|
|
|
type: [{required: true, message: '模块类型不能为空', trigger: 'change'}], |
|
|
|
|
}, |
|
|
|
|
}; |
|
|
|
|
}, |
|
|
|
|
methods: { |
|
|
|
|
/** 打开弹窗 */ |
|
|
|
|
async open(id) { |
|
|
|
|
this.dialogVisible = true; |
|
|
|
|
this.reset(); |
|
|
|
|
// 修改时,设置数据 |
|
|
|
|
if (id) { |
|
|
|
|
this.formLoading = true; |
|
|
|
|
try { |
|
|
|
|
const res = await ColumnInfoApi.getColumnInfo(id); |
|
|
|
|
this.formData = res.data; |
|
|
|
|
this.title = "修改栏目管理"; |
|
|
|
|
} finally { |
|
|
|
|
this.formLoading = false; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
this.title = "新增栏目管理"; |
|
|
|
|
import * as ColumnInfoApi from '@/api/cjy/columninfo'; |
|
|
|
|
import ImageUpload from '@/components/ImageUpload'; |
|
|
|
|
import Editor from '@/components/Editor'; |
|
|
|
|
import { DICT_TYPE, getDictDatas } from "@/utils/dict"; |
|
|
|
|
export default { |
|
|
|
|
name: "ColumnInfoForm", |
|
|
|
|
components: { |
|
|
|
|
ImageUpload, |
|
|
|
|
Editor, |
|
|
|
|
}, |
|
|
|
|
data() { |
|
|
|
|
return { |
|
|
|
|
// 弹出层标题 |
|
|
|
|
dialogTitle: "", |
|
|
|
|
// 是否显示弹出层 |
|
|
|
|
dialogVisible: false, |
|
|
|
|
// 表单的加载中:1)修改时的数据加载;2)提交的按钮禁用 |
|
|
|
|
formLoading: false, |
|
|
|
|
// 表单参数 |
|
|
|
|
formData: { |
|
|
|
|
id: undefined, |
|
|
|
|
type: undefined, |
|
|
|
|
infoType: undefined, |
|
|
|
|
title: undefined, |
|
|
|
|
subtitle: undefined, |
|
|
|
|
url: undefined, |
|
|
|
|
introduction: undefined, |
|
|
|
|
logo: undefined, |
|
|
|
|
image: undefined, |
|
|
|
|
content: undefined, |
|
|
|
|
}, |
|
|
|
|
// 表单校验 |
|
|
|
|
formRules: { |
|
|
|
|
type: [{ required: true, message: '模块类型不能为空', trigger: 'change' }], |
|
|
|
|
}, |
|
|
|
|
}; |
|
|
|
|
}, |
|
|
|
|
/** 提交按钮 */ |
|
|
|
|
async submitForm() { |
|
|
|
|
// 校验主表 |
|
|
|
|
await this.$refs["formRef"].validate(); |
|
|
|
|
this.formLoading = true; |
|
|
|
|
try { |
|
|
|
|
const data = this.formData; |
|
|
|
|
// 修改的提交 |
|
|
|
|
if (data.id) { |
|
|
|
|
await ColumnInfoApi.updateColumnInfo(data); |
|
|
|
|
this.$modal.msgSuccess("修改成功"); |
|
|
|
|
methods: { |
|
|
|
|
/** 打开弹窗 */ |
|
|
|
|
async open(id) { |
|
|
|
|
this.dialogVisible = true; |
|
|
|
|
this.reset(); |
|
|
|
|
// 修改时,设置数据 |
|
|
|
|
if (id) { |
|
|
|
|
this.formLoading = true; |
|
|
|
|
try { |
|
|
|
|
const res = await ColumnInfoApi.getColumnInfo(id); |
|
|
|
|
this.formData = res.data; |
|
|
|
|
this.title = "修改栏目管理"; |
|
|
|
|
} finally { |
|
|
|
|
this.formLoading = false; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
this.title = "新增栏目管理"; |
|
|
|
|
}, |
|
|
|
|
/** 提交按钮 */ |
|
|
|
|
async submitForm() { |
|
|
|
|
// 校验主表 |
|
|
|
|
await this.$refs["formRef"].validate(); |
|
|
|
|
this.formLoading = true; |
|
|
|
|
try { |
|
|
|
|
const data = this.formData; |
|
|
|
|
// 修改的提交 |
|
|
|
|
if (data.id) { |
|
|
|
|
await ColumnInfoApi.updateColumnInfo(data); |
|
|
|
|
this.$modal.msgSuccess("修改成功"); |
|
|
|
|
this.dialogVisible = false; |
|
|
|
|
this.$emit('success'); |
|
|
|
|
return; |
|
|
|
|
} |
|
|
|
|
// 添加的提交 |
|
|
|
|
await ColumnInfoApi.createColumnInfo(data); |
|
|
|
|
this.$modal.msgSuccess("新增成功"); |
|
|
|
|
this.dialogVisible = false; |
|
|
|
|
this.$emit('success'); |
|
|
|
|
return; |
|
|
|
|
} finally { |
|
|
|
|
this.formLoading = false; |
|
|
|
|
} |
|
|
|
|
// 添加的提交 |
|
|
|
|
await ColumnInfoApi.createColumnInfo(data); |
|
|
|
|
this.$modal.msgSuccess("新增成功"); |
|
|
|
|
this.dialogVisible = false; |
|
|
|
|
this.$emit('success'); |
|
|
|
|
} finally { |
|
|
|
|
this.formLoading = false; |
|
|
|
|
}, |
|
|
|
|
/** 表单重置 */ |
|
|
|
|
reset() { |
|
|
|
|
this.formData = { |
|
|
|
|
id: undefined, |
|
|
|
|
type: undefined, |
|
|
|
|
infoType: undefined, |
|
|
|
|
title: undefined, |
|
|
|
|
subtitle: undefined, |
|
|
|
|
url: undefined, |
|
|
|
|
introduction: undefined, |
|
|
|
|
logo: undefined, |
|
|
|
|
image: undefined, |
|
|
|
|
content: undefined, |
|
|
|
|
}; |
|
|
|
|
this.resetForm("formRef"); |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
/** 表单重置 */ |
|
|
|
|
reset() { |
|
|
|
|
this.formData = { |
|
|
|
|
id: undefined, |
|
|
|
|
type: undefined, |
|
|
|
|
infoType: undefined, |
|
|
|
|
title: undefined, |
|
|
|
|
subtitle: undefined, |
|
|
|
|
url: undefined, |
|
|
|
|
introduction: undefined, |
|
|
|
|
logo: undefined, |
|
|
|
|
image: undefined, |
|
|
|
|
content: undefined, |
|
|
|
|
}; |
|
|
|
|
this.resetForm("formRef"); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
}; |
|
|
|
|
}; |
|
|
|
|
</script> |
|
|
|
|