Skip to content

Commit d466d0f

Browse files
committed
feat: add resetValidation method to MemberFormContent and improve formatting in UserDrawer
1 parent cc0eef3 commit d466d0f

File tree

2 files changed

+21
-13
lines changed

2 files changed

+21
-13
lines changed

ui/src/views/system/role/component/MemberFormContent.vue

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -109,5 +109,10 @@ const validate = () => {
109109
return Promise.resolve()
110110
}
111111
112-
defineExpose({ validate })
112+
const resetValidation = () => {
113+
if (formRef.value) {
114+
formRef.value.clearValidate()
115+
}
116+
}
117+
defineExpose({ validate, resetValidation })
113118
</script>

ui/src/views/system/user-manage/component/UserDrawer.vue

Lines changed: 15 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -77,18 +77,18 @@
7777
</el-drawer>
7878
</template>
7979
<script setup lang="ts">
80-
import { ref, reactive, watch, onBeforeMount, computed } from 'vue'
81-
import type { FormInstance } from 'element-plus'
80+
import {ref, reactive, watch, onBeforeMount, computed} from 'vue'
81+
import type {FormInstance} from 'element-plus'
8282
import userManageApi from '@/api/system/user-manage'
83-
import { MsgSuccess } from '@/utils/message'
84-
import { t } from '@/locales'
85-
import type { FormItemModel } from '@/api/type/role'
83+
import {MsgSuccess} from '@/utils/message'
84+
import {t} from '@/locales'
85+
import type {FormItemModel} from '@/api/type/role'
8686
import WorkspaceApi from '@/api/workspace/workspace'
8787
import MemberFormContent from '@/views/system/role/component/MemberFormContent.vue'
88-
import { RoleTypeEnum } from '@/enums/system'
88+
import {RoleTypeEnum} from '@/enums/system'
8989
import useStore from '@/stores'
9090
91-
const { user } = useStore()
91+
const {user} = useStore()
9292
const props = defineProps({
9393
title: String,
9494
})
@@ -206,7 +206,7 @@ onBeforeMount(async () => {
206206
}
207207
formItemModel.value = [...roleFormItem.value, ...workspaceFormItem.value]
208208
}
209-
list.value = [{ role_id: '', workspace_ids: [] }]
209+
list.value = [{role_id: '', workspace_ids: []}]
210210
})
211211
212212
const rules = reactive({
@@ -278,7 +278,7 @@ watch(visible, (bool) => {
278278
nick_name: '',
279279
}
280280
isEdit.value = false
281-
list.value = [{ role_id: '', workspace_ids: [] }]
281+
list.value = [{role_id: '', workspace_ids: []}]
282282
userFormRef.value?.clearValidate()
283283
}
284284
})
@@ -300,6 +300,9 @@ const open = (data: any) => {
300300
userManageApi.getSystemDefaultPassword().then((res: any) => {
301301
userForm.value.password = res.data.password
302302
})
303+
if (memberFormContentRef.value) {
304+
memberFormContentRef.value.resetValidation()
305+
}
303306
}
304307
305308
visible.value = true
@@ -319,12 +322,12 @@ const submit = async (formEl: FormInstance | undefined) => {
319322
320323
// 如果是管理员角色,则设置为 ['None']
321324
if (isAdminRole) {
322-
return { ...item, workspace_ids: ['None'] }
325+
return {...item, workspace_ids: ['None']}
323326
}
324327
325328
// 如果是普通用户且是 PE 类型,则设置为 ['default']
326329
if (user.isPE()) {
327-
return { ...item, workspace_ids: ['default'] }
330+
return {...item, workspace_ids: ['default']}
328331
}
329332
330333
// 其他情况保持原样
@@ -366,6 +369,6 @@ const submit = async (formEl: FormInstance | undefined) => {
366369
})
367370
}
368371
369-
defineExpose({ open })
372+
defineExpose({open})
370373
</script>
371374
<style lang="scss" scoped></style>

0 commit comments

Comments
 (0)