From a2554a049a4099a49dc6883fad3e70bdb44df0df Mon Sep 17 00:00:00 2001 From: Minkyu0424 Date: Thu, 6 Feb 2025 05:19:27 +0900 Subject: [PATCH 01/11] =?UTF-8?q?:sparkles:=20[feat]=20:=20=EB=B6=80?= =?UTF-8?q?=EC=84=9C=EC=A0=95=EB=B3=B4=20=EA=B0=80=EC=A0=B8=EC=98=A4?= =?UTF-8?q?=EA=B8=B0=20API=20=EC=97=B0=EA=B2=B0,=20=EB=B6=80=EC=84=9C?= =?UTF-8?q?=EC=A0=95=EB=B3=B4=20=EB=93=9C=EB=A1=AD=EB=8B=A4=EC=9A=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/admin.ts | 10 ++- .../user-manage/DepartmentDropDown.vue | 61 +++++++++++++++++++ .../user-manage/UserRegistration.vue | 33 ++++++---- 3 files changed, 89 insertions(+), 15 deletions(-) create mode 100644 src/components/user-manage/DepartmentDropDown.vue diff --git a/src/api/admin.ts b/src/api/admin.ts index 86c6c982..a60a3b70 100644 --- a/src/api/admin.ts +++ b/src/api/admin.ts @@ -1,4 +1,4 @@ -import type { NewLabelTypes, UserRegistrationProps } from '@/types/admin' +import type { NewLabelTypes, UserRegistrationApiProps } from '@/types/admin' import type { LabelDataTypes } from '@/types/common' import { axiosInstance } from '@/utils/axios' @@ -25,8 +25,12 @@ export const deleteCategoryAdmin = async (id: number) => { return response.data } -export const addMemberAdmin = async (memberData: UserRegistrationProps) => { - console.log(memberData, '요청 데이터') +export const addMemberAdmin = async (memberData: UserRegistrationApiProps) => { const response = await axiosInstance.post('/api/managements/members', memberData) return response.data } + +export const getDepartmentsAdmin = async () => { + const response = await axiosInstance.get('/api/managements/departments') + return response.data +} diff --git a/src/components/user-manage/DepartmentDropDown.vue b/src/components/user-manage/DepartmentDropDown.vue new file mode 100644 index 00000000..61bc38f9 --- /dev/null +++ b/src/components/user-manage/DepartmentDropDown.vue @@ -0,0 +1,61 @@ + + + diff --git a/src/components/user-manage/UserRegistration.vue b/src/components/user-manage/UserRegistration.vue index 865aac49..3224fa75 100644 --- a/src/components/user-manage/UserRegistration.vue +++ b/src/components/user-manage/UserRegistration.vue @@ -14,10 +14,18 @@ v-model="userRegistrationForm.nickname" :placeholderText="'회원의 아이디를 입력해주세요'" :labelName="'아이디'" /> - +
+ + +
- + import { addMemberAdmin } from '@/api/admin' -import { INITIAL_USER_REGISTRATION, RoleKeys } from '@/constants/admin' +import { INITIAL_USER_REGISTRATION, RoleKeys, RoleTypeMapping } from '@/constants/admin' import { ref } from 'vue' import { useRouter } from 'vue-router' import FormButtonContainer from '../common/FormButtonContainer.vue' @@ -56,6 +60,7 @@ import FormCheckbox from '../common/FormCheckbox.vue' import ModalView from '../ModalView.vue' import RequestTaskDropdown from '../request-task/RequestTaskDropdown.vue' import RequestTaskInput from '../request-task/RequestTaskInput.vue' +import DepartmentDropDown from './DepartmentDropDown.vue' const isModalVisible = ref(false) const userRegistrationForm = ref(INITIAL_USER_REGISTRATION) @@ -67,11 +72,15 @@ const handleCancel = () => { isModalVisible.value = false router.back() } +console.log(RoleTypeMapping['사용자']) const handleSubmit = async () => { console.log(userRegistrationForm.value) - const formData = { ...userRegistrationForm.value, role: 'ROLE_USER', departmentId: 1 } - console.log(formData, '요청정보') + const formData = { + ...userRegistrationForm.value, + role: RoleTypeMapping[userRegistrationForm.value.role], + email: userRegistrationForm.value.nickname + userRegistrationForm.value.email + } await addMemberAdmin(formData) isModalVisible.value = true } From a77403d57797e3c37092b8339c6540dc713b92ed Mon Sep 17 00:00:00 2001 From: Minkyu0424 Date: Thu, 6 Feb 2025 05:19:44 +0900 Subject: [PATCH 02/11] =?UTF-8?q?:sparkles:=20[feat]=20:=20=ED=9A=8C?= =?UTF-8?q?=EC=9B=90=20=EC=B6=94=EA=B0=80=20API=20=EC=97=B0=EA=B2=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../request-task/RequestTaskInput.vue | 4 ++-- src/components/user-manage/UserUpdate.vue | 13 +++++-------- src/constants/admin.ts | 10 +++++----- src/types/admin.ts | 17 ++++++++++++++++- src/types/user.ts | 2 +- 5 files changed, 29 insertions(+), 17 deletions(-) diff --git a/src/components/request-task/RequestTaskInput.vue b/src/components/request-task/RequestTaskInput.vue index c7bd4828..ecf9e557 100644 --- a/src/components/request-task/RequestTaskInput.vue +++ b/src/components/request-task/RequestTaskInput.vue @@ -1,5 +1,5 @@