-- WING-OPS Seed Data: Common Codes
-- 공통코드그룹 16건, 공통코드 약 100건
-- 출처: database/init.sql

-- ============================================================
-- 공통코드그룹 (CMN_CD_GRP)
-- ============================================================

-- 조직유형 (ORG_TP)
INSERT INTO wing.cmn_cd_grp (cmn_cd_grp_id, cmn_cd_grp_nm, grp_dc) VALUES
('ORG_TP', '조직유형', '조직의 유형을 구분하는 코드');
INSERT INTO wing.cmn_cd (cmn_cd_grp_id, cmn_cd, cmn_cd_nm, sort_ord) VALUES
('ORG_TP', 'HEADQUARTERS', '본청',         1),
('ORG_TP', 'REGIONAL',     '지방청',       2),
('ORG_TP', 'STATION',      '해양경찰서',   3),
('ORG_TP', 'AGENCY',       '유관기관',     4);

-- 사용자역할 (USER_ROLE)
INSERT INTO wing.cmn_cd_grp (cmn_cd_grp_id, cmn_cd_grp_nm, grp_dc) VALUES
('USER_ROLE', '사용자역할', '사용자의 시스템 역할을 구분하는 코드');
INSERT INTO wing.cmn_cd (cmn_cd_grp_id, cmn_cd, cmn_cd_nm, sort_ord) VALUES
('USER_ROLE', 'ADMIN',   '관리자',     1),
('USER_ROLE', 'MANAGER', '운영자',     2),
('USER_ROLE', 'USER',    '일반사용자', 3);

-- 사고유형 (ACDNT_TP)
INSERT INTO wing.cmn_cd_grp (cmn_cd_grp_id, cmn_cd_grp_nm, grp_dc) VALUES
('ACDNT_TP', '사고유형', '해양사고의 유형을 구분하는 코드');
INSERT INTO wing.cmn_cd (cmn_cd_grp_id, cmn_cd, cmn_cd_nm, sort_ord) VALUES
('ACDNT_TP', 'COLLISION', '충돌', 1),
('ACDNT_TP', 'GROUNDING', '좌초', 2),
('ACDNT_TP', 'SINKING',   '침몰', 3),
('ACDNT_TP', 'LEAK',      '누출', 4),
('ACDNT_TP', 'EXPLOSION', '폭발', 5),
('ACDNT_TP', 'ETC',       '기타', 99);

-- 사고상태 (ACDNT_STTS)
INSERT INTO wing.cmn_cd_grp (cmn_cd_grp_id, cmn_cd_grp_nm, grp_dc) VALUES
('ACDNT_STTS', '사고상태', '사고의 진행 상태를 구분하는 코드');
INSERT INTO wing.cmn_cd (cmn_cd_grp_id, cmn_cd, cmn_cd_nm, sort_ord) VALUES
('ACDNT_STTS', 'ACTIVE',     '진행중', 1),
('ACDNT_STTS', 'MONITORING', '감시중', 2),
('ACDNT_STTS', 'CLOSED',     '종료',   3);

-- 심각도 (SVRT)
INSERT INTO wing.cmn_cd_grp (cmn_cd_grp_id, cmn_cd_grp_nm, grp_dc) VALUES
('SVRT', '심각도', '사고의 심각도를 구분하는 코드');
INSERT INTO wing.cmn_cd (cmn_cd_grp_id, cmn_cd, cmn_cd_nm, sort_ord) VALUES
('SVRT', 'DANGER',   '위험', 1),
('SVRT', 'ALERT',    '경계', 2),
('SVRT', 'CAUTION',  '주의', 3),
('SVRT', 'INTEREST', '관심', 4);

-- 유종 (OIL_TP)
INSERT INTO wing.cmn_cd_grp (cmn_cd_grp_id, cmn_cd_grp_nm, grp_dc) VALUES
('OIL_TP', '유종', '유출유의 종류를 구분하는 코드');
INSERT INTO wing.cmn_cd (cmn_cd_grp_id, cmn_cd, cmn_cd_nm, sort_ord) VALUES
('OIL_TP', 'CRUDE',    '원유',     1),
('OIL_TP', 'BUNKER_C', '벙커C유', 2),
('OIL_TP', 'DIESEL',   '경유',     3),
('OIL_TP', 'GASOLINE', '휘발유',   4),
('OIL_TP', 'KEROSENE', '등유',     5),
('OIL_TP', 'LUBE',     '윤활유',   6),
('OIL_TP', 'ETC',      '기타',     99);

-- 유출단위 (SPIL_UNIT)
INSERT INTO wing.cmn_cd_grp (cmn_cd_grp_id, cmn_cd_grp_nm, grp_dc) VALUES
('SPIL_UNIT', '유출단위', '유출량의 측정 단위를 구분하는 코드');
INSERT INTO wing.cmn_cd (cmn_cd_grp_id, cmn_cd, cmn_cd_nm, sort_ord) VALUES
('SPIL_UNIT', 'KL',  '킬로리터', 1),
('SPIL_UNIT', 'L',   '리터',     2),
('SPIL_UNIT', 'BBL', '배럴',     3),
('SPIL_UNIT', 'TON', '톤',       4);

-- 유출유형 (SPIL_TP)
INSERT INTO wing.cmn_cd_grp (cmn_cd_grp_id, cmn_cd_grp_nm, grp_dc) VALUES
('SPIL_TP', '유출유형', '유출의 형태를 구분하는 코드');
INSERT INTO wing.cmn_cd (cmn_cd_grp_id, cmn_cd, cmn_cd_nm, sort_ord) VALUES
('SPIL_TP', 'CONTINUOUS',    '연속유출', 1),
('SPIL_TP', 'INSTANTANEOUS', '순간유출', 2);

-- 예측알고리즘 (ALGO)
INSERT INTO wing.cmn_cd_grp (cmn_cd_grp_id, cmn_cd_grp_nm, grp_dc) VALUES
('ALGO', '예측알고리즘', '유출 확산 예측에 사용되는 알고리즘 코드');
INSERT INTO wing.cmn_cd (cmn_cd_grp_id, cmn_cd, cmn_cd_nm, sort_ord) VALUES
('ALGO', 'GNOME', 'GNOME 모델', 1),
('ALGO', 'OSCAR', 'OSCAR 모델', 2),
('ALGO', 'MOHID', 'MOHID 모델', 3);

-- 실행상태 (EXEC_STTS)
INSERT INTO wing.cmn_cd_grp (cmn_cd_grp_id, cmn_cd_grp_nm, grp_dc) VALUES
('EXEC_STTS', '실행상태', '예측 실행의 상태를 구분하는 코드');
INSERT INTO wing.cmn_cd (cmn_cd_grp_id, cmn_cd, cmn_cd_nm, sort_ord) VALUES
('EXEC_STTS', 'PENDING',   '대기',  1),
('EXEC_STTS', 'RUNNING',   '실행중', 2),
('EXEC_STTS', 'COMPLETED', '완료',  3),
('EXEC_STTS', 'FAILED',    '실패',  4);

-- 오일펜스우선순위 (BOOM_PRIORT)
INSERT INTO wing.cmn_cd_grp (cmn_cd_grp_id, cmn_cd_grp_nm, grp_dc) VALUES
('BOOM_PRIORT', '오일펜스우선순위', '오일펜스 배치 우선순위를 구분하는 코드');
INSERT INTO wing.cmn_cd (cmn_cd_grp_id, cmn_cd, cmn_cd_nm, sort_ord) VALUES
('BOOM_PRIORT', 'CRITICAL', '긴급', 1),
('BOOM_PRIORT', 'HIGH',     '높음', 2),
('BOOM_PRIORT', 'MEDIUM',   '보통', 3),
('BOOM_PRIORT', 'LOW',      '낮음', 4);

-- 오일펜스배치상태 (DPLY_STTS)
INSERT INTO wing.cmn_cd_grp (cmn_cd_grp_id, cmn_cd_grp_nm, grp_dc) VALUES
('DPLY_STTS', '배치상태', '오일펜스의 배치 상태를 구분하는 코드');
INSERT INTO wing.cmn_cd (cmn_cd_grp_id, cmn_cd, cmn_cd_nm, sort_ord) VALUES
('DPLY_STTS', 'PLANNED',   '계획',    1),
('DPLY_STTS', 'DEPLOYING', '배치중',  2),
('DPLY_STTS', 'DEPLOYED',  '배치완료', 3),
('DPLY_STTS', 'REMOVED',   '회수',    4);

-- 해안유형 (CST_TP)
INSERT INTO wing.cmn_cd_grp (cmn_cd_grp_id, cmn_cd_grp_nm, grp_dc) VALUES
('CST_TP', '해안유형', '해안의 지형 유형을 구분하는 코드');
INSERT INTO wing.cmn_cd (cmn_cd_grp_id, cmn_cd, cmn_cd_nm, sort_ord) VALUES
('CST_TP', 'ROCK',     '암반해안',    1),
('CST_TP', 'GRAVEL',   '자갈해안',    2),
('CST_TP', 'SAND',     '모래해안',    3),
('CST_TP', 'MUD',      '갯벌',        4),
('CST_TP', 'MIXED',    '혼합해안',    5),
('CST_TP', 'SEAWALL',  '인공구조물',  6),
('CST_TP', 'TETRAPOD', '테트라포드',  7);

-- 민감도 (SNSTVT)
INSERT INTO wing.cmn_cd_grp (cmn_cd_grp_id, cmn_cd_grp_nm, grp_dc) VALUES
('SNSTVT', '민감도', '해안구간의 환경 민감도를 구분하는 코드');
INSERT INTO wing.cmn_cd (cmn_cd_grp_id, cmn_cd, cmn_cd_nm, sort_ord) VALUES
('SNSTVT', 'HIGH',   '고', 1),
('SNSTVT', 'MEDIUM', '중', 2),
('SNSTVT', 'LOW',    '저', 3);

-- 조사상태 (SRVY_STTS)
INSERT INTO wing.cmn_cd_grp (cmn_cd_grp_id, cmn_cd_grp_nm, grp_dc) VALUES
('SRVY_STTS', '조사상태', '해안구간 조사의 진행 상태를 구분하는 코드');
INSERT INTO wing.cmn_cd (cmn_cd_grp_id, cmn_cd, cmn_cd_nm, sort_ord) VALUES
('SRVY_STTS', 'PENDING',   '미조사', 1),
('SRVY_STTS', 'PROGRESS',  '진행중', 2),
('SRVY_STTS', 'COMPLETED', '완료',   3);

-- 조사유형 (SRVY_TP)
INSERT INTO wing.cmn_cd_grp (cmn_cd_grp_id, cmn_cd_grp_nm, grp_dc) VALUES
('SRVY_TP', '조사유형', 'SCAT 조사의 유형을 구분하는 코드');
INSERT INTO wing.cmn_cd (cmn_cd_grp_id, cmn_cd, cmn_cd_nm, sort_ord) VALUES
('SRVY_TP', 'PRE_SCAT',  'Pre-SCAT',  1),
('SRVY_TP', 'SCAT',      'SCAT',      2),
('SRVY_TP', 'POST_SCAT', 'Post-SCAT', 3);

-- 조사단계 (SRVY_PHASE)
INSERT INTO wing.cmn_cd_grp (cmn_cd_grp_id, cmn_cd_grp_nm, grp_dc) VALUES
('SRVY_PHASE', '조사단계', 'SCAT 조사의 단계를 구분하는 코드');
INSERT INTO wing.cmn_cd (cmn_cd_grp_id, cmn_cd, cmn_cd_nm, sort_ord) VALUES
('SRVY_PHASE', 'PHASE_1', '1차 조사', 1),
('SRVY_PHASE', 'PHASE_2', '2차 조사', 2),
('SRVY_PHASE', 'PHASE_3', '3차 조사', 3);

-- 오염도 (POLUT)
INSERT INTO wing.cmn_cd_grp (cmn_cd_grp_id, cmn_cd_grp_nm, grp_dc) VALUES
('POLUT', '오염도', '해안구간의 오염 정도를 구분하는 코드');
INSERT INTO wing.cmn_cd (cmn_cd_grp_id, cmn_cd, cmn_cd_nm, sort_ord) VALUES
('POLUT', 'HEAVY',    '심각', 1),
('POLUT', 'MODERATE', '보통', 2),
('POLUT', 'LIGHT',    '경미', 3),
('POLUT', 'CLEAN',    '깨끗', 4);

-- 물리상태 (PHYS_STATE)
INSERT INTO wing.cmn_cd_grp (cmn_cd_grp_id, cmn_cd_grp_nm, grp_dc) VALUES
('PHYS_STATE', '물리상태', '화학물질의 물리적 상태를 구분하는 코드');
INSERT INTO wing.cmn_cd (cmn_cd_grp_id, cmn_cd, cmn_cd_nm, sort_ord) VALUES
('PHYS_STATE', 'SOLID',  '고체', 1),
('PHYS_STATE', 'LIQUID', '액체', 2),
('PHYS_STATE', 'GAS',    '기체', 3);

-- 수용성 (WATER_SLBLT)
INSERT INTO wing.cmn_cd_grp (cmn_cd_grp_id, cmn_cd_grp_nm, grp_dc) VALUES
('WATER_SLBLT', '수용성', '화학물질의 수용성 정도를 구분하는 코드');
INSERT INTO wing.cmn_cd (cmn_cd_grp_id, cmn_cd, cmn_cd_nm, sort_ord) VALUES
('WATER_SLBLT', 'SOLUBLE',   '수용성',   1),
('WATER_SLBLT', 'PARTIAL',   '부분용해', 2),
('WATER_SLBLT', 'INSOLUBLE', '불용성',   3);

-- 독성 (TOXICITY)
INSERT INTO wing.cmn_cd_grp (cmn_cd_grp_id, cmn_cd_grp_nm, grp_dc) VALUES
('TOXICITY', '독성', '화학물질의 독성 수준을 구분하는 코드');
INSERT INTO wing.cmn_cd (cmn_cd_grp_id, cmn_cd, cmn_cd_nm, sort_ord) VALUES
('TOXICITY', 'HIGH',   '고독성', 1),
('TOXICITY', 'MEDIUM', '중독성', 2),
('TOXICITY', 'LOW',    '저독성', 3);
