diff --git a/backend/routes/adminRoutes.js b/backend/routes/adminRoutes.js
index 27529fe..3fd3045 100644
--- a/backend/routes/adminRoutes.js
+++ b/backend/routes/adminRoutes.js
@@ -325,7 +325,7 @@ router.get('/features/stats', async (req, res) => {
router.get('/users', async (req, res) => {
try {
const users = await User.findAll({
- attributes: ['id', 'name', 'email', 'role', 'createdAt'],
+ attributes: ['id', 'name', 'email', 'role', 'status', 'createdAt'],
order: [['createdAt', 'DESC']]
});
diff --git a/frontend/src/components/event/EventDialog.vue b/frontend/src/components/event/EventDialog.vue
index 8a79dcf..7953202 100644
--- a/frontend/src/components/event/EventDialog.vue
+++ b/frontend/src/components/event/EventDialog.vue
@@ -33,13 +33,13 @@
-
+
시작일은 필수입니다.
-
+
종료일은 필수입니다.
@@ -65,7 +65,7 @@
-
+
diff --git a/frontend/src/components/event/FileUploadDialog.vue b/frontend/src/components/event/FileUploadDialog.vue
index bb70231..cd351e4 100644
--- a/frontend/src/components/event/FileUploadDialog.vue
+++ b/frontend/src/components/event/FileUploadDialog.vue
@@ -274,7 +274,7 @@
-
- ({ ...acc, [cur.value]: cur.name }),
+ {}
+);
+
+export function getRoleName(role) {
+ return ROLE_LABELS[role] || role;
+}
export const GENDER_OPTIONS = [
{ name: '남성', value: 'male' },
@@ -93,33 +106,60 @@ export const AVERAGE_CALCULATION_PERIOD_LABELS = AVERAGE_CALCULATION_PERIOD_OPTI
{}
);
+export const CLUB_STATUS_OPTIONS = [
+ { name: '활성', value: 'active' },
+ { name: '비활성', value: 'inactive' }
+];
+export const CLUB_STATUS_LABELS = CLUB_STATUS_OPTIONS.reduce(
+ (acc, cur) => ({ ...acc, [cur.value]: cur.name }),
+ {}
+);
+
+export const SUBSCRIPTION_STATUS_OPTIONS = [
+ { name: '활성', value: 'active' },
+ { name: '만료', value: 'expired' },
+ { name: '일시중지', value: 'paused' }
+];
+export const SUBSCRIPTION_STATUS_LABELS = SUBSCRIPTION_STATUS_OPTIONS.reduce(
+ (acc, cur) => ({ ...acc, [cur.value]: cur.name }),
+ {}
+);
+
export function getGenderLabel(code) {
- return GENDER_LABELS[code] || '-';
+ return GENDER_LABELS[code] || code;
}
export function getMemberTypeLabel(code) {
- return MEMBER_TYPE_LABELS[code] || '-';
+ return MEMBER_TYPE_LABELS[code] || code;
}
export function getStatusLabel(code) {
- return STATUS_LABELS[code] || '-';
+ return STATUS_LABELS[code] || code;
}
export function getParticipantStatusLabel(code) {
- return PARTICIPANT_STATUS_LABELS[code] || '-';
+ return PARTICIPANT_STATUS_LABELS[code] || code;
}
export function getEventStatusLabel(code) {
- return EVENT_STATUS_LABELS[code] || '-';
+ return EVENT_STATUS_LABELS[code] || code;
}
export function getEventTypeLabel(code) {
- return EVENT_TYPE_LABELS[code] || '-';
+ return EVENT_TYPE_LABELS[code] || code;
}
export function getPaymentStatusLabel(code) {
- return PAYMENT_STATUS_LABELS[code] || '-';
+ return PAYMENT_STATUS_LABELS[code] || code;
}
export function getAverageCalculationPeriodLabel(code) {
- return AVERAGE_CALCULATION_PERIOD_LABELS[code] || '-';
+ return AVERAGE_CALCULATION_PERIOD_LABELS[code] || code;
+}
+
+export function getClubStatusLabel(code) {
+ return CLUB_STATUS_LABELS[code] || code;
+}
+
+export function getSubscriptionStatusLabel(code) {
+ return SUBSCRIPTION_STATUS_LABELS[code] || code;
}
export function getMemberTypeSeverity(type) {
@@ -174,4 +214,31 @@ export function getParticipantStatusSeverity(status) {
case 'canceled': return 'danger';
default: return 'secondary';
}
-}
\ No newline at end of file
+}
+
+export function getRoleSeverity(role) {
+ switch (role) {
+ case 'admin': return 'danger';
+ case 'clubadmin': return 'warning';
+ case 'user': return 'info';
+ default: return 'info';
+ }
+}
+
+export function getClubStatusSeverity(status) {
+ switch (status) {
+ case 'active': return 'success';
+ case 'inactive': return 'danger';
+ default: return 'secondary';
+ }
+}
+
+export function getSubscriptionStatusSeverity(status) {
+ switch (status) {
+ case 'active': return 'success';
+ case 'expired': return 'danger';
+ case 'paused': return 'warning';
+ default: return 'secondary';
+ }
+}
+
\ No newline at end of file
diff --git a/frontend/src/views/admin/SubscriptionManagement.vue b/frontend/src/views/admin/SubscriptionManagement.vue
index 0b4d73d..b074be6 100644
--- a/frontend/src/views/admin/SubscriptionManagement.vue
+++ b/frontend/src/views/admin/SubscriptionManagement.vue
@@ -77,7 +77,7 @@
-
+
@@ -126,7 +126,7 @@
-
+
@@ -139,28 +139,28 @@