|
@@ -10,14 +10,7 @@
|
|
|
</slot>
|
|
|
</template>
|
|
|
|
|
|
- <el-form
|
|
|
- ref="ruleFormRef"
|
|
|
- label-width="100px"
|
|
|
- label-suffix=" :"
|
|
|
- label-position="top"
|
|
|
- :rules="rules"
|
|
|
- :model="drawerProps.row"
|
|
|
- @submit.enter.prevent="handleConfirm">
|
|
|
+ <el-form ref="ruleFormRef" label-width="100px" label-suffix=" :" :rules="rules" :model="drawerProps.row" @submit.enter.prevent="handleConfirm">
|
|
|
<el-form-item label="上级字典" prop="parentId">
|
|
|
<el-tree-select
|
|
|
v-model="drawerProps.row.parentId"
|
|
@@ -29,6 +22,11 @@
|
|
|
:default-expand-all="true"
|
|
|
:props="treeProps" />
|
|
|
</el-form-item>
|
|
|
+ <el-form-item label="字典类型" prop="category">
|
|
|
+ <el-radio-group v-model="drawerProps.row.category">
|
|
|
+ <el-radio-button :value="item.dictValue" v-for="(item, index) in dictTypes" :key="index" :label="item.dictLabel" />
|
|
|
+ </el-radio-group>
|
|
|
+ </el-form-item>
|
|
|
<el-form-item label="字典标签" prop="dictLabel">
|
|
|
<el-input v-model="drawerProps.row.dictLabel" placeholder="字典标签" clearable />
|
|
|
</el-form-item>
|
|
@@ -39,16 +37,15 @@
|
|
|
<el-input-number v-model="drawerProps.row.orderNum" :precision="0" :min="1" :max="999999" />
|
|
|
</el-form-item>
|
|
|
<el-form-item label="状态" prop="status">
|
|
|
- <el-radio-group v-model="drawerProps.row.status" default-value="1">
|
|
|
- <el-radio-button label="启用" value="1" />
|
|
|
- <el-radio-button label="停用" value="0" />
|
|
|
+ <el-radio-group v-model="drawerProps.row.status">
|
|
|
+ <el-radio-button :value="item.dictValue" v-for="(item, index) in commonStatus" :key="index" :label="item.dictLabel" />
|
|
|
</el-radio-group>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="回显样式" prop="callbackShowStyle">
|
|
|
<el-radio-group v-model="drawerProps.row.callbackShowStyle">
|
|
|
- <el-radio :value="item.value" v-for="item in tagsTypeOptions" :key="item.label">
|
|
|
- <el-tag :type="item.value">
|
|
|
- {{ item.label }}
|
|
|
+ <el-radio :value="item.dictValue" v-for="item in callbackShowStyles" :key="item.dictLabel" :label="item.dictLabel">
|
|
|
+ <el-tag :type="item.dictValue">
|
|
|
+ {{ item.dictLabel }}
|
|
|
</el-tag>
|
|
|
</el-radio>
|
|
|
</el-radio-group>
|
|
@@ -71,46 +68,19 @@
|
|
|
import { DictBo, DictTreeVO } from '@/api/interface/system/dict'
|
|
|
import DictApi from '@/api/module/system/dict'
|
|
|
import { ResultEnum } from '@/enums/HttpEnum'
|
|
|
-export interface Options {
|
|
|
- id?: number
|
|
|
- label: string
|
|
|
- value: string
|
|
|
-}
|
|
|
-/**
|
|
|
- * 标签类型
|
|
|
- * @type {[Options,Options]}
|
|
|
- */
|
|
|
-const tagsTypeOptions: Options[] = [
|
|
|
- {
|
|
|
- id: 1,
|
|
|
- label: 'Default',
|
|
|
- value: 'primary'
|
|
|
- },
|
|
|
- {
|
|
|
- id: 2,
|
|
|
- label: 'Success',
|
|
|
- value: 'success'
|
|
|
- },
|
|
|
- {
|
|
|
- id: 3,
|
|
|
- label: 'Info',
|
|
|
- value: 'info'
|
|
|
- },
|
|
|
- {
|
|
|
- id: 4,
|
|
|
- label: 'Warning',
|
|
|
- value: 'warning'
|
|
|
- },
|
|
|
- {
|
|
|
- id: 5,
|
|
|
- label: 'Danger',
|
|
|
- value: 'danger'
|
|
|
- }
|
|
|
-]
|
|
|
+import { useDictOptions } from '@/hooks'
|
|
|
+
|
|
|
+const commonStatus = useDictOptions('COMMON_STATUS')
|
|
|
+const callbackShowStyles = useDictOptions('CALLBACK_SHOW_STYLE')
|
|
|
+const dictTypes = useDictOptions('DICT_TYPE')
|
|
|
+
|
|
|
import { FormInstance } from 'element-plus'
|
|
|
const rules = reactive({
|
|
|
name: [{ required: true, message: '请填写组织名称' }],
|
|
|
parentId: [{ required: true, message: '请选择上级' }],
|
|
|
+ dictLabel: [{ required: true, message: '请填写字典标签' }],
|
|
|
+ dictValue: [{ required: true, message: '请填写字典值' }],
|
|
|
+ category: [{ required: true, message: '请选择字典类型' }],
|
|
|
orderNum: [{ required: true, message: '排序不能为空' }],
|
|
|
status: [{ required: true, message: '状态不能为空' }]
|
|
|
})
|
|
@@ -144,7 +114,6 @@ const acceptParams = (params: EcoDrawerProps) => {
|
|
|
drawerProps.value = params
|
|
|
drawerVisible.value = true
|
|
|
loadTree()
|
|
|
- console.log(drawerProps.value.row.parentId)
|
|
|
}
|
|
|
|
|
|
const loadTree = () => {
|