summaryrefslogtreecommitdiff
path: root/config/euserColumnsConfig.ts
diff options
context:
space:
mode:
authordujinkim <dujin.kim@dtsolution.co.kr>2025-03-26 00:37:41 +0000
committerdujinkim <dujin.kim@dtsolution.co.kr>2025-03-26 00:37:41 +0000
commite0dfb55c5457aec489fc084c4567e791b4c65eb1 (patch)
tree68543a65d88f5afb3a0202925804103daa91bc6f /config/euserColumnsConfig.ts
3/25 까지의 대표님 작업사항
Diffstat (limited to 'config/euserColumnsConfig.ts')
-rw-r--r--config/euserColumnsConfig.ts58
1 files changed, 58 insertions, 0 deletions
diff --git a/config/euserColumnsConfig.ts b/config/euserColumnsConfig.ts
new file mode 100644
index 00000000..4f2da5b8
--- /dev/null
+++ b/config/euserColumnsConfig.ts
@@ -0,0 +1,58 @@
+import { UserView } from "@/db/schema/users";
+
+/**
+ * 테이블/엑셀에 보여줄 컬럼 한 칸을 어떻게 렌더링할지 결정하는 설정
+ */
+export interface UserColumnConfig {
+ /**
+ * "조인 결과" 객체(UserWithCompanyAndRoles)의 어느 필드를 표시할지
+ */
+ id: keyof UserView;
+
+ /** 화면·엑셀에서 보여줄 컬럼명 */
+ label: string;
+
+ /** (선택) 그룹핑/카테고리 */
+ group?: string;
+
+ /** (선택) Excel에서의 헤더 */
+ excelHeader?: string;
+
+ /** (선택) 데이터 타입(예: date, string, number 등), 포맷 지정용 */
+ type?: string;
+}
+
+/**
+ * 실제로 "User + Company + Roles" 정보 테이블에서
+ * 어떤 컬럼들을 어떤 순서로 표시할 것인지 정의.
+ */
+export const euserColumnsConfig: UserColumnConfig[] = [
+ {
+ id: "user_name",
+ label: "User Name",
+ excelHeader: "User Name",
+ },
+ {
+ id: "user_email",
+ label: "Email",
+ excelHeader: "Email",
+ },
+ {
+ id: "company_name",
+ label: "Company Name",
+ excelHeader: "Company Name",
+ },
+ {
+ id: "roles",
+ label: "Roles",
+ excelHeader: "Roles",
+ // type: "string[]", // 필요하면 추가
+ },
+ // 필요 시 createdAt도 조인해서 가져왔다면 아래처럼 추가
+ {
+ id: "created_at",
+ label: "Created At",
+ excelHeader: "Created At",
+ // group: "Metadata",
+ },
+]; \ No newline at end of file