====== 시스템 테이블 정의서 (sys_* Tables) ======
> **문서 정보**
> * 원본 모델: ERwin Data Modeler
> * DB 엔진: MySQL 5.0
> * 최종 수정: 2026-03-21
----
===== 목차 =====
* [[#1. 개요|1. 개요]]
* [[#2. 테이블 관계도|2. 테이블 관계도]]
* [[#3. 공통 컬럼 규칙|3. 공통 컬럼 규칙]]
* [[#4. 테이블 상세|4. 테이블 상세]]
* [[#4.1 sys_coinfo — 회사 정보|4.1 sys_coinfo]]
* [[#4.2 SYS_DATA — 시스템 데이터 (트리 구조)|4.2 SYS_DATA]]
* [[#4.3 sys_user — 사용자|4.3 sys_user]]
* [[#4.4 sys_menu — 메뉴|4.4 sys_menu]]
* [[#4.5 sys_prog — 프로그램|4.5 sys_prog]]
* [[#4.6 sys_user_auth — 사용자 권한|4.6 sys_user_auth]]
* [[#4.7 SYS_AUTH_TEMPLET_MST — 권한 템플릿 마스터|4.7 SYS_AUTH_TEMPLET_MST]]
* [[#4.8 SYS_AUTH_TEMPLET_MAP — 권한 템플릿 매핑|4.8 SYS_AUTH_TEMPLET_MAP]]
* [[#4.9 sys_lang — 다국어|4.9 sys_lang]]
* [[#4.10 SYS_CODE_MIDDLE — 중분류 코드|4.10 SYS_CODE_MIDDLE]]
* [[#4.11 SYS_CODE_DETAIL — 상세 코드|4.11 SYS_CODE_DETAIL]]
* [[#4.12 sys_login_hist — 로그인 이력|4.12 sys_login_hist]]
* [[#4.13 sys_open_hist — 화면 오픈 이력|4.13 sys_open_hist]]
* [[#4.14 sys_EVENT_hist — 이벤트 이력|4.14 sys_EVENT_hist]]
* [[#4.15 sys_errlog — 오류 로그|4.15 sys_errlog]]
* [[#4.16 sys_hotkey — 단축키/표준값|4.16 sys_hotkey]]
* [[#4.17 SYS_ISSUE — 이슈 관리|4.17 SYS_ISSUE]]
* [[#4.18 SYS_FAVORITE — 즐겨찾기|4.18 SYS_FAVORITE]]
* [[#4.19 SYS_CALENDER — 캘린더|4.19 SYS_CALENDER]]
----
===== 1. 개요 =====
SeoulCable 시스템의 ''sys_'' 접두어 테이블은 프레임워크의 공통 기반 기능을 담당합니다. 사용자 인증, 메뉴 관리, 권한 제어, 다국어 지원, 코드 체계, 감사 로그 등 업무화면이 동작하기 위한 시스템 인프라 데이터를 관리합니다.
| **분류** | **테이블** | **설명** |
| 조직/사용자 | sys_coinfo, sys_user | 회사 정보, 사용자 계정 관리 |
| 메뉴/프로그램 | sys_menu, sys_prog | 메뉴 트리, 프로그램 등록 |
| 권한 | sys_user_auth, SYS_AUTH_TEMPLET_MST/MAP | 메뉴별 CRUD 권한 제어 |
| 시스템 데이터 | SYS_DATA, sys_lang | 트리형 마스터 데이터, 다국어 |
| 코드 | SYS_CODE_MIDDLE, SYS_CODE_DETAIL | 중분류/상세 공통코드 |
| 이력/로그 | sys_login_hist, sys_open_hist, sys_EVENT_hist, sys_errlog | 로그인/화면/이벤트/오류 이력 |
| 기타 | sys_hotkey, SYS_ISSUE, SYS_FAVORITE, SYS_CALENDER | 단축키, 이슈, 즐겨찾기, 캘린더 |
----
===== 2. 테이블 관계도 =====
┌──────────────┐
│ sys_coinfo │
│ (회사정보) │
└──────┬───────┘
│ CO_CODE
▼
┌──────────────┐ ┌──────────────┐ ┌──────────────────┐
│ sys_menu │◄─────────│ sys_user │─────────►│ sys_user_auth │
│ (메뉴) │ MENU_ID │ (사용자) │ USER_ID │ (사용자권한) │
└──────┬───────┘ └──────┬───────┘ └──────────────────┘
│ │ ▲
│ MENU_ID │ USER_ID │
▼ ▼ │
┌──────────────────┐ ┌──────────────────┐ ┌──────────────────────┐
│ sys_open_hist │ │ sys_login_hist │ │ SYS_AUTH_TEMPLET_MAP │
│ (오픈이력) │ │ (로그인이력) │ │ (권한템플릿매핑) │
└──────────────────┘ └──────────────────┘ └──────────┬───────────┘
│ │ AUTH_ID
│ MENU_ID ▼
▼ ┌──────────────────────┐
┌──────────────────┐ │ SYS_AUTH_TEMPLET_MST │
│ SYS_FAVORITE │ │ (권한템플릿마스터) │
│ (즐겨찾기) │ └────────────────────-─┘
└──────────────────┘
┌──────────────┐ ┌──────────────────┐ ┌──────────────┐
│ SYS_DATA │ │ SYS_CODE_MIDDLE │────►│SYS_CODE_DETAIL│
│ (트리데이터) │ │ (중분류코드) │ │ (상세코드) │
└──────┬───────┘ └──────────────────┘ └───────────────┘
│ DATA_ID
▼
┌──────────────┐
│ sys_lang │
│ (다국어) │
└──────────────┘
----
===== 3. 공통 컬럼 규칙 =====
대부분의 sys_ 테이블은 다음의 공통 감사(Audit) 컬럼을 포함합니다.
| **컬럼명** | **타입** | **설명** |
| INSERT_ID | BIGINT | 등록자 ID (sys_user.USER_ID) |
| INSERT_DT | timestamp/datetime | 등록 일시 |
| UPDATE_ID | BIGINT | 수정자 ID (sys_user.USER_ID) |
| UPDATE_DT | timestamp/datetime | 수정 일시 |
| MODI_KEY | BIGINT | 동시성 제어용 변경 키 |
| USE_YN | char(1) | 사용 여부 (Y/N) |
**MODI_KEY**는 Optimistic Locking 패턴에 사용됩니다. UPDATE 시 WHERE 절에 MODI_KEY를 포함하여 동시 수정을 방지합니다.
----
===== 4. 테이블 상세 =====
==== 4.1 sys_coinfo — 회사 정보 ====
회사(법인) 기본 정보를 관리하는 마스터 테이블입니다.
| **컬럼명** | **타입** | **PK** | **설명** |
| CO_CODE | BIGINT | ★ | 회사 코드 |
| CO_NAME | varchar(200) | | 회사명 |
| CO_NAME2 | varchar(200) | | 회사명2 (영문 등) |
| CORP_CODE | varchar(30) | | 법인 코드 |
| BP_CODE | varchar(100) | | 거래처 코드 |
| CEO_NAME | varchar(100) | | 대표자명 |
| JONGMOK | varchar(100) | | 종목 |
| EUPTE | varchar(100) | | 업태 |
| ZIP_CODE | varchar(20) | | 우편번호 |
| ADDR | varchar(200) | | 주소 |
| ADDR_DTL | varchar(200) | | 상세주소 |
| PHONE | varchar(50) | | 대표 전화번호 |
| EMAIL | varchar(100) | | 이메일 |
| HOME_PAGE | varchar(100) | | 홈페이지 URL |
| OPEN_DATE | char(8) | | 설립일 (YYYYMMDD) |
| IN_OUT | BIGINT | | 내수/수출 구분 |
| USE_YN | char(1) | | 사용 여부 |
| INSERT_ID | BIGINT | | 등록자 |
| INSERT_DT | timestamp | | 등록 일시 |
| UPDATE_ID | BIGINT | | 수정자 |
| UPDATE_DT | timestamp | | 수정 일시 |
| MODI_KEY | BIGINT | | 변경 키 |
----
==== 4.2 SYS_DATA — 시스템 데이터 (트리 구조) ====
시스템 전반에서 사용하는 트리 구조 마스터 데이터입니다. 코드, 분류, 설정 등을 계층형으로 관리합니다. UBi 프레임워크의 ''PKG_SYS$GET_CHILDS'' 프로시저로 하위 노드를 조회합니다.
| **컬럼명** | **타입** | **PK** | **설명** |
| DATA_ID | BIGINT | ★ | 데이터 ID (Auto Increment) |
| PARENT | BIGINT | | 상위 노드 ID (자기참조 FK) |
| PATH | varchar(200) | | 경로 (트리 위치) |
| FULL_PATH | varchar(200) | | 전체 경로 |
| CODE | varchar(100) | | 코드값 |
| NAME | varchar(200) | | 명칭 |
| DESCRIPTION | varchar(400) | | 설명 |
| VAL1 | varchar(200) | | 확장 값 1 |
| VAL2 | varchar(200) | | 확장 값 2 |
| VAL3 | varchar(200) | | 확장 값 3 |
| VAL4 | varchar(200) | | 확장 값 4 |
| VAL5 | varchar(200) | | 확장 값 5 |
| DISP_SN | decimal(5,2) | | 표시 순서 |
| USE_YN | char(1) | | 사용 여부 |
| INSERT_ID | BIGINT | | 등록자 |
| INSERT_DT | timestamp | | 등록 일시 |
| UPDATE_ID | BIGINT | | 수정자 |
| UPDATE_DT | timestamp | | 수정 일시 |
| MODI_KEY | BIGINT | | 변경 키 |
**트리 구조 조회**: PARENT 컬럼으로 부모-자식 관계를 표현합니다. PATH와 FULL_PATH를 통해 계층 경로를 빠르게 검색할 수 있습니다. VAL1~VAL5는 범용 확장 필드로, 데이터 유형에 따라 용도가 달라집니다.
----
==== 4.3 sys_user — 사용자 ====
시스템 사용자 계정 정보를 관리합니다. 로그인, 권한 부여, 인사 정보 연동의 기준 테이블입니다.
| **컬럼명** | **타입** | **PK** | **설명** |
| USER_ID | BIGINT | ★ | 사용자 ID |
| EMP_NO | varchar(30) | | 사원번호 |
| LOGID | varchar(30) | | 로그인 ID |
| PASS | varchar(400) | | 비밀번호 (암호화) |
| LOGPASS | varchar(30) | | 로그인 비밀번호 |
| NAME | varchar(200) | | 사용자명 |
| PERSONNO | varchar(30) | | 인사번호 |
| PERSONNAME | varchar(30) | | 인사명 |
| PHONE_NO | varchar(30) | | 전화번호 |
| CELL_PHONE_NO | varchar(30) | | 휴대전화번호 |
| TEL_NO | varchar(50) | | 연락처 |
| HP_NO | varchar(30) | | HP번호 |
| EMAIL | varchar(100) | | 이메일 |
| CO_CODE | varchar(10) | | 회사 코드 (FK→sys_coinfo) |
| COMP_ID | varchar(10) | | 사업장 ID |
| POST_CODE | varchar(10) | | 부서 코드 |
| JIK_WEE | varchar(10) | | 직위 코드 |
| POSITION | varchar(10) | | 직책 코드 |
| IN_DT | char(8) | | 입사일 (YYYYMMDD) |
| OUT_DT | char(8) | | 퇴사일 (YYYYMMDD) |
| ENTER_DATE | varchar(8) | | 등록일 |
| REGI_NUMB | varchar(14) | | 주민등록번호 |
| DUTY_YN | char(1) | | 재직 여부 |
| DEFAULT_LANG | BIGINT | | 기본 언어 코드 |
| USER_KIND | BIGINT | | 사용자 유형 |
| USE_KIND | varchar(1) | | 사용 구분 |
| SCM_YN | varchar(1) | | SCM 사용자 여부 |
| SCM_CUST_CODE | varchar(10) | | SCM 거래처 코드 |
| FILE_NAME | varchar(200) | | 첨부파일명 |
| REAL_FILE_NAME | varchar(200) | | 실제 파일명 |
| USE_YN | char(1) | | 사용 여부 |
| INSERT_ID | BIGINT | | 등록자 |
| INSERT_DT | timestamp | | 등록 일시 |
| UPDATE_ID | BIGINT | | 수정자 |
| UPDATE_DT | timestamp | | 수정 일시 |
| MODI_KEY | BIGINT | | 변경 키 |
----
==== 4.4 sys_menu — 메뉴 ====
시스템 메뉴를 트리 구조로 관리합니다. 각 메뉴는 프로그램(DLL)과 연결되며, 권한 컬럼(A_ADD 등)으로 메뉴 단위 기능 제어를 수행합니다.
| **컬럼명** | **타입** | **PK** | **설명** |
| MENU_ID | BIGINT | ★ | 메뉴 ID |
| PARENT | BIGINT | | 상위 메뉴 ID (자기참조 FK) |
| CODE | varchar(30) | | 메뉴 코드 |
| PATH | varchar(200) | | 메뉴 경로 |
| NAME | varchar(100) | | 메뉴명 |
| KIND | BIGINT | | 메뉴 유형 (폴더/화면 등) |
| BSNTC | BIGINT | | 업무 구분 코드 |
| DISP_SN | decimal(5,2) | | 표시 순서 |
| DISP_YN | char(1) | | 표시 여부 (Y/N) |
| ICON | varchar(100) | | 아이콘 리소스명 |
| PARAM | varchar(100) | | 호출 파라미터 |
| A_ADD | char(1) | | 추가 버튼 권한 기본값 |
| A_DELETE | char(1) | | 삭제 버튼 권한 기본값 |
| A_SAVE | char(1) | | 저장 버튼 권한 기본값 |
| A_PRINT | char(1) | | 인쇄 버튼 권한 기본값 |
| USE_YN | char(1) | | 사용 여부 |
| INSERT_ID | BIGINT | | 등록자 |
| INSERT_DT | datetime | | 등록 일시 |
| UPDATE_ID | BIGINT | | 수정자 |
| UPDATE_DT | datetime | | 수정 일시 |
| MODI_KEY | BIGINT | | 변경 키 |
**권한 컬럼 (A_ADD, A_DELETE, A_SAVE, A_PRINT)**은 해당 메뉴의 기본 버튼 활성화 여부를 정의합니다. 실제 사용자별 권한은 ''sys_user_auth'' 테이블에서 오버라이드됩니다.
----
==== 4.5 sys_prog — 프로그램 ====
업무화면 프로그램(DLL) 정보를 관리합니다. 메뉴와 연결되어 화면을 로딩합니다.
| **컬럼명** | **타입** | **PK** | **설명** |
| PROG_ID | BIGINT | ★ | 프로그램 ID |
| CODE | varchar(30) | | 프로그램 코드 (DLL명) |
| NAME | varchar(100) | | 프로그램명 |
| KIND | BIGINT | | 프로그램 유형 |
| USE_YN | char(1) | | 사용 여부 |
| INSERT_ID | BIGINT | | 등록자 |
| INSERT_DT | timestamp | | 등록 일시 |
| UPDATE_ID | BIGINT | | 수정자 |
| UPDATE_DT | timestamp | | 수정 일시 |
| MODI_KEY | BIGINT | | 변경 키 |
----
==== 4.6 sys_user_auth — 사용자 권한 ====
사용자별 메뉴 접근 권한을 관리합니다. sys_user와 sys_menu의 교차 테이블입니다.
| **컬럼명** | **타입** | **PK** | **설명** |
| USER_ID | BIGINT | ★ | 사용자 ID (FK→sys_user) |
| MENU_ID | BIGINT | ★ | 메뉴 ID (FK→sys_menu) |
| A_ADD | char(1) | | 추가 권한 (Y/N) |
| A_DELETE | char(1) | | 삭제 권한 (Y/N) |
| A_SAVE | char(1) | | 저장 권한 (Y/N) |
| A_PRINT | char(1) | | 인쇄 권한 (Y/N) |
| FAVORITE | CHAR(1) | | 즐겨찾기 여부 (Y/N) |
| USE_YN | char(1) | | 사용 여부 |
| INSERT_ID | BIGINT | | 등록자 |
| INSERT_DT | timestamp | | 등록 일시 |
| UPDATE_ID | BIGINT | | 수정자 |
| UPDATE_DT | timestamp | | 수정 일시 |
| MODI_KEY | BIGINT | | 변경 키 |
**권한 판정 로직**: 프레임워크는 로그인 시 해당 사용자의 sys_user_auth 레코드를 조회하여, 각 메뉴의 A_ADD/A_DELETE/A_SAVE/A_PRINT 값에 따라 툴바 버튼을 활성화/비활성화합니다.
----
==== 4.7 SYS_AUTH_TEMPLET_MST — 권한 템플릿 마스터 ====
권한을 일괄 부여하기 위한 템플릿(역할) 마스터입니다.
| **컬럼명** | **타입** | **PK** | **설명** |
| AUTH_ID | BIGINT | ★ | 권한 템플릿 ID |
| AUTH_NM | VARCHAR(100) | | 권한 템플릿명 |
| USE_YN | char(1) | | 사용 여부 |
| INSERT_ID | BIGINT | | 등록자 |
| INSERT_DT | timestamp | | 등록 일시 |
| UPDATE_ID | BIGINT | | 수정자 |
| UPDATE_DT | timestamp | | 수정 일시 |
| MODI_KEY | BIGINT | | 변경 키 |
----
==== 4.8 SYS_AUTH_TEMPLET_MAP — 권한 템플릿 매핑 ====
권한 템플릿과 메뉴의 매핑 테이블입니다. 템플릿에 속한 각 메뉴의 CRUD 권한을 정의합니다.
| **컬럼명** | **타입** | **PK** | **설명** |
| AUTH_ID | BIGINT | ★ | 권한 템플릿 ID (FK→SYS_AUTH_TEMPLET_MST)|
| MENU_ID | BIGINT | ★ | 메뉴 ID (FK→sys_menu) |
| A_ADD | char(1) | | 추가 권한 |
| A_DELETE | char(1) | | 삭제 권한 |
| A_SAVE | char(1) | | 저장 권한 |
| A_PRINT | char(1) | | 인쇄 권한 |
| DISP_VAL | DECIMAL(10,4) | | 표시 값 |
| USE_YN | char(1) | | 사용 여부 |
| INSERT_ID | BIGINT | | 등록자 |
| INSERT_DT | datetime | | 등록 일시 |
| UPDATE_ID | BIGINT | | 수정자 |
| UPDATE_DT | datetime | | 수정 일시 |
| MODI_KEY | BIGINT | | 변경 키 |
----
==== 4.9 sys_lang — 다국어 ====
시스템 다국어 리소스를 관리합니다. SYS_DATA의 코드를 기준으로 각 언어별 번역 데이터를 저장합니다.
| **컬럼명** | **타입** | **PK** | **설명** |
| DATA_ID | BIGINT | ★ | 데이터 ID (FK→SYS_DATA) |
| LANG_ID | BIGINT | ★ | 언어 코드 ID |
| CODE | varchar(200) | | 코드 키 (Lookup 용) |
| DATA | varchar(200) | | 번역 데이터 |
| USE_YN | char(1) | | 사용 여부 |
| INSERT_ID | BIGINT | | 등록자 |
| INSERT_DT | timestamp | | 등록 일시 |
| UPDATE_ID | BIGINT | | 수정자 |
| UPDATE_DT | timestamp | | 수정 일시 |
| MODI_KEY | BIGINT | | 변경 키 |
다국어 표시 시, 화면의 UBiColProperty에 설정된 TITLE_ID를 KEY로 sys_lang에서 현재 사용자의 DEFAULT_LANG에 해당하는 DATA를 조회하여 컬럼 제목을 표시합니다. ''[cfg.com.lng.list]'' 경로에서 지원 언어 목록을 관리합니다.
----
==== 4.10 SYS_CODE_MIDDLE — 중분류 코드 ====
공통코드 중분류 테이블입니다.
| **컬럼명** | **타입** | **PK** | **설명** |
| MIDDLE_ID | CHAR(1) | ★ | 중분류 코드 ID |
| MODI_KEY | BIGINT | | 변경 키 |
| INSERT_ID | BIGINT | | 등록자 |
| INSERT_DT | timestamp | | 등록 일시 |
| UPDATE_ID | BIGINT | | 수정자 |
| UPDATE_DT | timestamp | | 수정 일시 |
----
==== 4.11 SYS_CODE_DETAIL — 상세 코드 ====
공통코드 상세(소분류) 테이블입니다. 중분류에 종속됩니다.
| **컬럼명** | **타입** | **PK** | **설명** |
| MIDDLE_ID | CHAR(1) | ★ | 중분류 코드 (FK→SYS_CODE_MIDDLE) |
| DETAIL_ID | CHAR(1) | ★ | 상세 코드 ID |
| USE_YN | char(1) | | 사용 여부 |
| MODI_KEY | BIGINT | | 변경 키 |
| INSERT_ID | BIGINT | | 등록자 |
| INSERT_DT | timestamp | | 등록 일시 |
| UPDATE_ID | BIGINT | | 수정자 |
| UPDATE_DT | timestamp | | 수정 일시 |
----
==== 4.12 sys_login_hist — 로그인 이력 ====
사용자 로그인/로그아웃 이력을 기록합니다.
| **컬럼명** | **타입** | **PK** | **설명** |
| USER_ID | BIGINT | ★ | 사용자 ID (FK→sys_user) |
| LOGIN_DT | timestamp | ★ | 로그인 일시 |
| RESULT | BIGINT | | 결과 코드 (성공/실패) |
| FAIL_REASON | BIGINT | | 실패 사유 코드 |
| INCOM_ROOT | BIGINT | | 접근 경로 구분 |
| COM_NAME | varchar(100) | | 접속 컴퓨터명 |
----
==== 4.13 sys_open_hist — 화면 오픈 이력 ====
사용자의 업무화면 오픈 이력을 기록합니다. 화면 사용 빈도 분석 등에 활용됩니다.
| **컬럼명** | **타입** | **PK** | **설명** |
| USER_ID | BIGINT | ★ | 사용자 ID (FK→sys_user) |
| MENU_ID | BIGINT | ★ | 메뉴 ID (FK→sys_menu) |
| OPEN_DT | timestamp | ★ | 오픈 일시 |
| A_ADD | char(1) | | 추가 권한 (시점 스냅샷) |
| A_DELETE | char(1) | | 삭제 권한 (시점 스냅샷) |
| A_SAVE | char(1) | | 저장 권한 (시점 스냅샷) |
| A_PRINT | char(1) | | 인쇄 권한 (시점 스냅샷) |
| RESULT | BIGINT | | 결과 코드 |
| FAIL_REASON | BIGINT | | 실패 사유 |
----
==== 4.14 sys_EVENT_hist — 이벤트 이력 ====
시스템 주요 이벤트 발생 이력을 기록합니다.
| **컬럼명** | **타입** | **PK** | **설명** |
| USER_ID | BIGINT | ★ | 사용자 ID |
| MENU_ID | BIGINT | ★ | 메뉴 ID |
| EVENT_DT | timestamp | ★ | 이벤트 발생 일시 |
| MACH_ID | BIGINT | | 장비 ID |
| SET_QTY | CHAR(1) | | 설정 수량 |
| INSP_YN | CHAR(8) | | 검사 여부 |
| WORK_ORDER_DT | VARCHAR(200) | | 작업지시 일시 |
| DELETE_YN | CHAR(1) | | 삭제 여부 |
| INSERT_ID | BIGINT | | 등록자 |
| INSERT_DT | timestamp | | 등록 일시 |
| UPDATE_ID | BIGINT | | 수정자 |
| UPDATE_DT | timestamp | | 수정 일시 |
| MODI_KEY | BIGINT | | 변경 키 |
----
==== 4.15 sys_errlog — 오류 로그 ====
시스템 오류(Exception) 발생 이력을 기록합니다. 서비스 호출 단위로 오류 정보를 저장합니다.
| **컬럼명** | **타입** | **PK** | **설명** |
| STARTTIME | varchar(20) | ★ | 오류 발생 시간 |
| SERVICENAME | varchar(50) | | 서비스명 (API 엔드포인트) |
| FUNCTION | varchar(50) | | 함수/프로시저명 |
| PARAM | varchar(1000) | | 호출 파라미터 |
| MESSAGE | varchar(4000) | | 오류 메시지 |
----
==== 4.16 sys_hotkey — 단축키/표준값 ====
사용자별 단축키 설정 및 표준값 매핑 정보를 관리합니다.
| **컬럼명** | **타입** | **PK** | **설명** |
| USER_ID | BIGINT | ★ | 사용자 ID |
| HOTKEY_ID | BIGINT | ★ | 단축키 ID |
| VAL1 | VARCHAR(50) | | 설정 값 1 |
| VAL2 | VARCHAR(50) | | 설정 값 2 |
| USE_YN | char(1) | | 사용 여부 |
| INSERT_ID | BIGINT | | 등록자 |
| INSERT_DT | timestamp | | 등록 일시 |
| UPDATE_ID | BIGINT | | 수정자 |
| UPDATE_DT | timestamp | | 수정 일시 |
| MODI_KEY | BIGINT | | 변경 키 |
----
==== 4.17 SYS_ISSUE — 이슈 관리 ====
시스템 이슈/요청사항을 관리합니다.
| **컬럼명** | **타입** | **PK** | **설명** |
| ISSUE_ID | BIGINT | ★ | 이슈 ID |
| SEQ_KEY | VARCHAR(20) | | 시퀀스 키 |
| INSERT_ID | BIGINT | | 등록자 |
| INSERT_DT | timestamp | | 등록 일시 |
| UPDATE_ID | BIGINT | | 수정자 |
| UPDATE_DT | timestamp | | 수정 일시 |
----
==== 4.18 SYS_FAVORITE — 즐겨찾기 ====
사용자별 즐겨찾기 메뉴를 관리합니다.
| **컬럼명** | **타입** | **PK** | **설명** |
| USER_ID | BIGINT | ★ | 사용자 ID (FK→sys_user) |
| MENU_ID | BIGINT | ★ | 메뉴 ID (FK→sys_menu) |
| DISP_SN | INTEGER | | 표시 순서 |
| DELETE_YN | CHAR(1) | | 삭제 여부 |
| INSERT_ID | BIGINT | | 등록자 |
| INSERT_DT | DATETIME | | 등록 일시 |
| UPDATE_ID | BIGINT | | 수정자 |
| UPDATE_DT | DATETIME | | 수정 일시 |
| MODI_KEY | BIGINT | | 변경 키 |
----
==== 4.19 SYS_CALENDER — 캘린더 ====
시스템 캘린더(근무일/비근무일) 정보를 관리합니다.
| **컬럼명** | **타입** | **PK** | **설명** |
| CAL_DATE | CHAR(8) | ★ | 일자 (YYYYMMDD) |
| WEEK | INTEGER | | 요일 코드 |
| WEEK_COUNT | INTEGER | | 해당 월의 주차 |
| WEEK_YEAR | INTEGER | | 연간 주차 |
| USE_YN | char(1) | | 근무일 여부 (Y=근무) |
| INSERT_ID | BIGINT | | 등록자 |
| INSERT_DT | datetime | | 등록 일시 |
| UPDATE_ID | BIGINT | | 수정자 |
| UPDATE_DT | datetime | | 수정 일시 |
| MODI_KEY | BIGINT | | 변경 키 |
----
===== 5. 권한 체계 흐름 =====
[권한 템플릿 방식]
SYS_AUTH_TEMPLET_MST (역할 정의)
└─ SYS_AUTH_TEMPLET_MAP (역할×메뉴 권한)
│
│ 템플릿 적용
▼
sys_user_auth (사용자×메뉴 권한) ← 개별 오버라이드 가능
[권한 판정 순서]
1. sys_user_auth에서 USER_ID + MENU_ID로 레코드 조회
2. A_ADD / A_DELETE / A_SAVE / A_PRINT 값 확인
3. 값이 'Y'인 버튼만 활성화
4. 레코드 없으면 sys_menu의 기본 권한 값 사용
----
===== 6. 공통 프로시저 명명 규칙 =====
| **패턴** | **용도** | **예시** |
| PKG_SYS$GET_{대상} | 시스템 데이터 조회 | PKG_SYS$GET_CHILDS |
| PKG_SYS$SET_{대상} | 시스템 데이터 저장 | PKG_SYS$SET_USER_AUTH |
| PKG_SYS$DEL_{대상} | 시스템 데이터 삭제 | PKG_SYS$DEL_MENU |
----
//이 문서는 SeoulCable_v1_2.erwin 모델 파일에서 자동 추출한 정보를 기반으로 작성되었습니다.//\\
//ERwin 바이너리 파일의 특성상 일부 컬럼 정보가 불완전할 수 있습니다. 실제 DB 스키마와 교차 확인을 권장합니다.//\\
//최종 수정: 2026-03-21//