新增:动态配置优化修改

pull/56/head
李强 2022-05-10 17:09:14 +08:00
parent f1e79dfc13
commit 380b3b7fea
11 changed files with 55 additions and 32 deletions

View File

@ -19,7 +19,7 @@ export function getButtonSettings (objectSettings) {
} }
}) })
} }
// v2.0.2 中已弃用改为 vm.dictionary('button_status_bool')
// 启用 true/ 禁用 false // 启用 true/ 禁用 false
export const BUTTON_STATUS_BOOL = getButtonSettings([{ label: '启用', value: true }, { label: '禁用', value: false }]) export const BUTTON_STATUS_BOOL = getButtonSettings([{ label: '启用', value: true }, { label: '禁用', value: false }])

View File

@ -1,6 +1,27 @@
import { request } from '@/api/service' import { request } from '@/api/service'
export const urlPrefix = '/api/init/dictionary/' export const urlPrefix = '/api/init/dictionary/'
export const BUTTON_VALUE_TO_COLOR_MAPPING = {
1: 'success',
true: 'success',
0: 'danger',
false: 'danger',
Search: 'warning', // 查询
Update: 'primary', // 编辑
Create: 'success', // 新增
Retrieve: 'info', // 单例
Delete: 'danger' // 删除
}
export function getButtonSettings (objectSettings) {
return objectSettings.map(item => {
return {
label: item.label,
value: item.value,
color: BUTTON_VALUE_TO_COLOR_MAPPING[item.value]
}
})
}
// 系统配置 // 系统配置
export default { export default {
@ -26,7 +47,6 @@ export default {
if (key === 'all') { if (key === 'all') {
res.data.data.map(data => { res.data.data.map(data => {
data.children.map((children, index) => { data.children.map((children, index) => {
console.log(children.type)
switch (children.type) { switch (children.type) {
case 1: case 1:
children.value = Number(children.value) children.value = Number(children.value)
@ -36,9 +56,8 @@ export default {
break break
} }
}) })
newData[data.value] = data.children newData[data.value] = getButtonSettings(data.children)
}) })
console.log(11, newData)
state.data = newData state.data = newData
} else { } else {
state.data = res.data.data[key] state.data = res.data.data[key]
@ -69,7 +88,6 @@ export default {
* @param {Boolean} key active * @param {Boolean} key active
*/ */
async get (state, key) { async get (state, key) {
console.log(1212, state.data[key])
return state.data[key] return state.data[key]
} }
} }

View File

@ -1,5 +1,3 @@
import { BUTTON_STATUS_BOOL } from '@/config/button'
import { request } from '@/api/service' import { request } from '@/api/service'
export const crudOptions = (vm) => { export const crudOptions = (vm) => {
@ -234,7 +232,7 @@ export const crudOptions = (vm) => {
width: 90, width: 90,
type: 'radio', type: 'radio',
dict: { dict: {
data: BUTTON_STATUS_BOOL data: vm.dictionary('button_status_bool')
}, },
form: { form: {
value: true, value: true,

View File

@ -1,5 +1,4 @@
import { request } from '@/api/service' import { request } from '@/api/service'
import { BUTTON_STATUS_BOOL } from '@/config/button'
import { urlPrefix as deptPrefix } from './api' import { urlPrefix as deptPrefix } from './api'
import XEUtils from 'xe-utils' import XEUtils from 'xe-utils'
export const crudOptions = (vm) => { export const crudOptions = (vm) => {
@ -226,7 +225,7 @@ export const crudOptions = (vm) => {
width: 90, width: 90,
type: 'radio', type: 'radio',
dict: { dict: {
data: BUTTON_STATUS_BOOL data: vm.dictionary('button_status_bool')
}, },
form: { form: {
value: true, value: true,

View File

@ -155,10 +155,9 @@ export const crudOptions = (vm) => {
search: { search: {
disabled: false disabled: false
}, },
type: 'radio', type: 'radio',
dict: { dict: {
data: vm.dictionary('status_bool') data: vm.dictionary('button_status_bool')
}, },
component: { component: {
props: { props: {
@ -166,8 +165,15 @@ export const crudOptions = (vm) => {
} }
}, },
form: { form: {
value: 1, rules: [ // 表单校验规则
{ required: true, message: '状态必填项' }
],
value: true,
component: { component: {
placeholder: '请选择状态'
},
itemProps: {
class: { yxtInput: true }
} }
} }
}, },
@ -179,6 +185,9 @@ export const crudOptions = (vm) => {
form: { form: {
value: 1, value: 1,
component: { component: {
},
itemProps: {
class: { yxtInput: true }
} }
} }
} }

View File

@ -1,5 +1,3 @@
import { BUTTON_STATUS_BOOL } from '@/config/button'
export const crudOptions = (vm) => { export const crudOptions = (vm) => {
return { return {
@ -236,7 +234,7 @@ export const crudOptions = (vm) => {
}, },
type: 'radio', type: 'radio',
dict: { dict: {
data: BUTTON_STATUS_BOOL data: vm.dictionary('button_status_bool')
}, },
form: { form: {
value: true, value: true,

View File

@ -44,6 +44,11 @@ export default {
required: true required: true
} }
}, },
watch: {
dictionaryRow () {
this.doRefresh({ from: 'load' })
}
},
data () { data () {
return { return {
drawer: false drawer: false

View File

@ -1,5 +1,5 @@
import { request } from '@/api/service' import { request } from '@/api/service'
import { BUTTON_STATUS_BOOL, BUTTON_WHETHER_BOOL, BUTTON_VALUE_TO_COLOR_MAPPING } from '@/config/button' import { BUTTON_VALUE_TO_COLOR_MAPPING } from '@/config/button'
import { urlPrefix as menuPrefix } from './api' import { urlPrefix as menuPrefix } from './api'
import { urlPrefix as buttonPrefix } from '../button/api' import { urlPrefix as buttonPrefix } from '../button/api'
import XEUtils from 'xe-utils' import XEUtils from 'xe-utils'
@ -223,7 +223,7 @@ export const crudOptions = (vm) => {
disabled: true disabled: true
}, },
dict: { dict: {
data: BUTTON_WHETHER_BOOL data: vm.dictionary('button_whether_bool')
}, },
form: { form: {
value: false, value: false,
@ -238,7 +238,7 @@ export const crudOptions = (vm) => {
width: 70, width: 70,
type: 'radio', type: 'radio',
dict: { dict: {
data: BUTTON_WHETHER_BOOL data: vm.dictionary('button_whether_bool')
}, },
form: { form: {
value: false, value: false,
@ -396,7 +396,7 @@ export const crudOptions = (vm) => {
width: 50, width: 50,
type: 'radio', type: 'radio',
dict: { dict: {
data: BUTTON_WHETHER_BOOL data: vm.dictionary('button_whether_bool')
}, },
form: { form: {
value: false, value: false,
@ -424,7 +424,7 @@ export const crudOptions = (vm) => {
width: 75, width: 75,
type: 'radio', type: 'radio',
dict: { dict: {
data: BUTTON_WHETHER_BOOL data: vm.dictionary('button_whether_bool')
}, },
form: { form: {
value: true, value: true,
@ -449,7 +449,7 @@ export const crudOptions = (vm) => {
width: 70, width: 70,
type: 'radio', type: 'radio',
dict: { dict: {
data: BUTTON_STATUS_BOOL data: vm.dictionary('button_status_bool')
}, },
form: { form: {
value: true, value: true,

View File

@ -1,5 +1,3 @@
import { BUTTON_STATUS_BOOL, BUTTON_WHETHER_BOOL } from '@/config/button'
export const crudOptions = (vm) => { export const crudOptions = (vm) => {
return { return {
pageOptions: { pageOptions: {
@ -161,7 +159,7 @@ export const crudOptions = (vm) => {
type: 'radio', type: 'radio',
dict: { dict: {
data: BUTTON_WHETHER_BOOL data: vm.dictionary('button_whether_bool')
}, },
form: { form: {
value: false, value: false,
@ -180,7 +178,7 @@ export const crudOptions = (vm) => {
}, },
type: 'radio', type: 'radio',
dict: { dict: {
data: BUTTON_STATUS_BOOL data: vm.dictionary('button_status_bool')
}, },
form: { form: {
value: true, value: true,

View File

@ -1,5 +1,4 @@
import { request } from '@/api/service' import { request } from '@/api/service'
import { BUTTON_STATUS_BOOL, USER_TYPE } from '@/config/button'
import { urlPrefix as deptPrefix } from '../dept/api' import { urlPrefix as deptPrefix } from '../dept/api'
export const crudOptions = (vm) => { export const crudOptions = (vm) => {
@ -227,7 +226,7 @@ export const crudOptions = (vm) => {
type: 'radio', type: 'radio',
width: 70, width: 70,
dict: { dict: {
data: [{ label: '', value: 1 }, { label: '', value: 0 }] data: vm.dictionary('gender')
}, },
form: { form: {
value: 1, value: 1,
@ -246,7 +245,7 @@ export const crudOptions = (vm) => {
width: 140, width: 140,
type: 'select', type: 'select',
dict: { dict: {
data: USER_TYPE data: vm.dictionary('user_type')
}, },
form: { form: {
show: false, show: false,
@ -264,7 +263,7 @@ export const crudOptions = (vm) => {
width: 70, width: 70,
type: 'radio', type: 'radio',
dict: { dict: {
data: BUTTON_STATUS_BOOL data: vm.dictionary('button_status_bool')
}, },
form: { form: {
value: true, value: true,

View File

@ -1,5 +1,4 @@
import { request } from '@/api/service' import { request } from '@/api/service'
import { BUTTON_STATUS_BOOL } from '@/config/button'
export const crudOptions = (vm) => { export const crudOptions = (vm) => {
return { return {
@ -170,7 +169,7 @@ export const crudOptions = (vm) => {
width: 150, width: 150,
type: 'radio', type: 'radio',
dict: { dict: {
data: BUTTON_STATUS_BOOL data: vm.dictionary('button_status_bool')
}, },
form: { form: {
value: true, value: true,