Commit 095ced7af04a9c09d25f57cf6fb657fef6fad218
1 parent
de6fc546
fix: todo
Showing
2 changed files
with
82 additions
and
10 deletions
yudao-ui-admin-vue3/src/components/Form/src/Form.vue
| ... | ... | @@ -227,6 +227,7 @@ export default defineComponent({ |
| 227 | 227 | {...(autoSetPlaceholder && setTextPlaceholder(item))} |
| 228 | 228 | {...setComponentProps(item)} |
| 229 | 229 | style={item.componentProps?.style} |
| 230 | + {...item.componentProps?.props} | |
| 230 | 231 | {...(notRenderOptions.includes(item?.component as string) && |
| 231 | 232 | item?.componentProps?.options |
| 232 | 233 | ? { options: item?.componentProps?.options || [] } | ... | ... |
yudao-ui-admin-vue3/src/views/system/oauth2/client/client.data.ts
| 1 | 1 | import { reactive } from 'vue' |
| 2 | 2 | import { useI18n } from '@/hooks/web/useI18n' |
| 3 | 3 | import { required } from '@/utils/formRules' |
| 4 | -import { DICT_TYPE } from '@/utils/dict' | |
| 4 | +import { DICT_TYPE, getStrDictOptions } from '@/utils/dict' | |
| 5 | 5 | import { VxeCrudSchema, useVxeCrudSchemas } from '@/hooks/web/useVxeCrudSchemas' |
| 6 | 6 | const { t } = useI18n() // 国际化 |
| 7 | 7 | |
| 8 | +const authorizedGrantOptions = getStrDictOptions(DICT_TYPE.SYSTEM_OAUTH2_GRANT_TYPE) | |
| 9 | + | |
| 8 | 10 | // 表单校验 |
| 9 | 11 | export const rules = reactive({ |
| 10 | 12 | clientId: [required], |
| ... | ... | @@ -76,36 +78,105 @@ const crudSchemas = reactive<VxeCrudSchema>({ |
| 76 | 78 | title: '授权类型', |
| 77 | 79 | field: 'authorizedGrantTypes', |
| 78 | 80 | table: { |
| 79 | - width: 300, | |
| 81 | + width: 400, | |
| 80 | 82 | slots: { |
| 81 | 83 | default: 'authorizedGrantTypes_default' |
| 82 | 84 | } |
| 85 | + }, | |
| 86 | + form: { | |
| 87 | + component: 'Select', | |
| 88 | + componentProps: { | |
| 89 | + options: authorizedGrantOptions, | |
| 90 | + props: { | |
| 91 | + multiple: true, | |
| 92 | + filterable: true | |
| 93 | + } | |
| 94 | + } | |
| 83 | 95 | } |
| 84 | 96 | }, |
| 85 | 97 | { |
| 86 | 98 | title: '授权范围', |
| 87 | - field: 'scopes', // TODO @星语:带输入的 SELECT | |
| 88 | - isTable: false | |
| 99 | + field: 'scopes', | |
| 100 | + isTable: false, | |
| 101 | + form: { | |
| 102 | + component: 'Select', | |
| 103 | + componentProps: { | |
| 104 | + options: [], | |
| 105 | + props: { | |
| 106 | + multiple: true, | |
| 107 | + filterable: true, | |
| 108 | + allowCreate: true, | |
| 109 | + defaultFirstOption: true | |
| 110 | + } | |
| 111 | + } | |
| 112 | + } | |
| 89 | 113 | }, |
| 90 | 114 | { |
| 91 | 115 | title: '自动授权范围', |
| 92 | - field: 'autoApproveScopes', // TODO @星语:带输入的 SELECT | |
| 93 | - isTable: false | |
| 116 | + field: 'autoApproveScopes', | |
| 117 | + isTable: false, | |
| 118 | + form: { | |
| 119 | + component: 'Select', | |
| 120 | + componentProps: { | |
| 121 | + options: [], | |
| 122 | + props: { | |
| 123 | + multiple: true, | |
| 124 | + filterable: true, | |
| 125 | + allowCreate: true, | |
| 126 | + defaultFirstOption: true | |
| 127 | + } | |
| 128 | + } | |
| 129 | + } | |
| 94 | 130 | }, |
| 95 | 131 | { |
| 96 | 132 | title: '可重定向的 URI 地址', |
| 97 | - field: 'redirectUris', // TODO @星语:带输入的 SELECT | |
| 98 | - isTable: false | |
| 133 | + field: 'redirectUris', | |
| 134 | + isTable: false, | |
| 135 | + form: { | |
| 136 | + component: 'Select', | |
| 137 | + componentProps: { | |
| 138 | + options: [], | |
| 139 | + props: { | |
| 140 | + multiple: true, | |
| 141 | + filterable: true, | |
| 142 | + allowCreate: true, | |
| 143 | + defaultFirstOption: true | |
| 144 | + } | |
| 145 | + } | |
| 146 | + } | |
| 99 | 147 | }, |
| 100 | 148 | { |
| 101 | 149 | title: '权限', |
| 102 | 150 | field: 'authorities', |
| 103 | - isTable: false | |
| 151 | + isTable: false, | |
| 152 | + form: { | |
| 153 | + component: 'Select', | |
| 154 | + componentProps: { | |
| 155 | + options: [], | |
| 156 | + props: { | |
| 157 | + multiple: true, | |
| 158 | + filterable: true, | |
| 159 | + allowCreate: true, | |
| 160 | + defaultFirstOption: true | |
| 161 | + } | |
| 162 | + } | |
| 163 | + } | |
| 104 | 164 | }, |
| 105 | 165 | { |
| 106 | 166 | title: '资源', |
| 107 | 167 | field: 'resourceIds', |
| 108 | - isTable: false | |
| 168 | + isTable: false, | |
| 169 | + form: { | |
| 170 | + component: 'Select', | |
| 171 | + componentProps: { | |
| 172 | + options: [], | |
| 173 | + props: { | |
| 174 | + multiple: true, | |
| 175 | + filterable: true, | |
| 176 | + defaultFirstOption: true | |
| 177 | + } | |
| 178 | + } | |
| 179 | + } | |
| 109 | 180 | }, |
| 110 | 181 | { |
| 111 | 182 | title: '附加信息', | ... | ... |