feat: 기본코드 bag 목록과 관리자 CRUD 분리

- /bag/code-kinds, /bag/code-details/{ck_idx} 조회 (LoginAuthFilter, Roles::canManageCodeMaster)
- admin에서는 종류·세부 목록 제거, 등록·수정·삭제만 유지 후 bag으로 리다이렉트
- 사이트 메뉴·기본코드 링크 SQL, CSV 동기화 스크립트·README 보강
- 관리자 대시보드: 발주·판매 테이블 미존재 시 통계 비활성화
- 회원 로그인 잠금(mb_login_fail_count, mb_locked_until) 및 관리자 잠금 해제

Made-with: Cursor
This commit is contained in:
taekyoungc
2026-03-30 15:07:09 +09:00
parent de8f631ca8
commit ab40a90f69
32 changed files with 1026 additions and 704 deletions

View File

@@ -0,0 +1,232 @@
-- Sync missing rows from 종량제_개발목록_20260127(기본코드 종류).csv
-- Generated by writable/tools/sync_basic_codes_from_csv.py
SET NAMES utf8mb4;
INSERT INTO `code_kind` (`ck_code`, `ck_name`, `ck_state`, `ck_regdate`) SELECT 'A', '도/특별시/광역시 구분', 1, NOW() FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `code_kind` c WHERE c.ck_code = 'A');
INSERT INTO `code_kind` (`ck_code`, `ck_name`, `ck_state`, `ck_regdate`) SELECT 'B', '특별시/광역시/시/군코드', 1, NOW() FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `code_kind` c WHERE c.ck_code = 'B');
INSERT INTO `code_kind` (`ck_code`, `ck_name`, `ck_state`, `ck_regdate`) SELECT 'C', '구코드', 1, NOW() FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `code_kind` c WHERE c.ck_code = 'C');
INSERT INTO `code_kind` (`ck_code`, `ck_name`, `ck_state`, `ck_regdate`) SELECT 'D', '동코드', 1, NOW() FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `code_kind` c WHERE c.ck_code = 'D');
INSERT INTO `code_kind` (`ck_code`, `ck_name`, `ck_state`, `ck_regdate`) SELECT 'E', '봉투구분', 1, NOW() FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `code_kind` c WHERE c.ck_code = 'E');
INSERT INTO `code_kind` (`ck_code`, `ck_name`, `ck_state`, `ck_regdate`) SELECT 'F', '봉투재질', 1, NOW() FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `code_kind` c WHERE c.ck_code = 'F');
INSERT INTO `code_kind` (`ck_code`, `ck_name`, `ck_state`, `ck_regdate`) SELECT 'G', '용량별', 1, NOW() FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `code_kind` c WHERE c.ck_code = 'G');
INSERT INTO `code_kind` (`ck_code`, `ck_name`, `ck_state`, `ck_regdate`) SELECT 'H', '무상지급', 1, NOW() FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `code_kind` c WHERE c.ck_code = 'H');
INSERT INTO `code_kind` (`ck_code`, `ck_name`, `ck_state`, `ck_regdate`) SELECT 'I', '판매형태', 1, NOW() FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `code_kind` c WHERE c.ck_code = 'I');
INSERT INTO `code_kind` (`ck_code`, `ck_name`, `ck_state`, `ck_regdate`) SELECT 'J', '반품형태', 1, NOW() FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `code_kind` c WHERE c.ck_code = 'J');
INSERT INTO `code_kind` (`ck_code`, `ck_name`, `ck_state`, `ck_regdate`) SELECT 'K', '반품사유', 1, NOW() FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `code_kind` c WHERE c.ck_code = 'K');
INSERT INTO `code_kind` (`ck_code`, `ck_name`, `ck_state`, `ck_regdate`) SELECT 'L', '지정판매소 변경사유', 1, NOW() FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `code_kind` c WHERE c.ck_code = 'L');
INSERT INTO `code_kind` (`ck_code`, `ck_name`, `ck_state`, `ck_regdate`) SELECT 'M', '수불구분', 1, NOW() FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `code_kind` c WHERE c.ck_code = 'M');
INSERT INTO `code_kind` (`ck_code`, `ck_name`, `ck_state`, `ck_regdate`) SELECT 'N', '동판종류', 1, NOW() FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `code_kind` c WHERE c.ck_code = 'N');
INSERT INTO `code_kind` (`ck_code`, `ck_name`, `ck_state`, `ck_regdate`) SELECT 'O', '봉투명', 1, NOW() FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `code_kind` c WHERE c.ck_code = 'O');
INSERT INTO `code_kind` (`ck_code`, `ck_name`, `ck_state`, `ck_regdate`) SELECT 'P', '작업권한', 1, NOW() FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `code_kind` c WHERE c.ck_code = 'P');
INSERT INTO `code_kind` (`ck_code`, `ck_name`, `ck_state`, `ck_regdate`) SELECT 'Q', '예산과목', 1, NOW() FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `code_kind` c WHERE c.ck_code = 'Q');
INSERT INTO `code_kind` (`ck_code`, `ck_name`, `ck_state`, `ck_regdate`) SELECT 'R', '은행목록', 1, NOW() FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `code_kind` c WHERE c.ck_code = 'R');
INSERT INTO `code_kind` (`ck_code`, `ck_name`, `ck_state`, `ck_regdate`) SELECT 'S', '소속', 1, NOW() FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `code_kind` c WHERE c.ck_code = 'S');
INSERT INTO `code_kind` (`ck_code`, `ck_name`, `ck_state`, `ck_regdate`) SELECT 'T', '직위', 1, NOW() FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `code_kind` c WHERE c.ck_code = 'T');
INSERT INTO `code_kind` (`ck_code`, `ck_name`, `ck_state`, `ck_regdate`) SELECT 'U', '배달', 1, NOW() FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `code_kind` c WHERE c.ck_code = 'U');
INSERT INTO `code_kind` (`ck_code`, `ck_name`, `ck_state`, `ck_regdate`) SELECT 'V', '구역', 1, NOW() FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `code_kind` c WHERE c.ck_code = 'V');
INSERT INTO `code_kind` (`ck_code`, `ck_name`, `ck_state`, `ck_regdate`) SELECT 'W', '봉투명(약어)', 1, NOW() FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `code_kind` c WHERE c.ck_code = 'W');
INSERT INTO `code_kind` (`ck_code`, `ck_name`, `ck_state`, `ck_regdate`) SELECT 'X', '봉투구분(대분)', 1, NOW() FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `code_kind` c WHERE c.ck_code = 'X');
INSERT INTO `code_kind` (`ck_code`, `ck_name`, `ck_state`, `ck_regdate`) SELECT 'Y', '분기', 1, NOW() FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `code_kind` c WHERE c.ck_code = 'Y');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '10', '특별시', 10, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'A' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '10');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '11', '광역시', 20, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'A' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '11');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '20', '경기도', 30, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'A' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '20');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '21', '강원도', 40, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'A' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '21');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '22', '충청북도', 50, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'A' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '22');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '23', '충청남도', 60, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'A' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '23');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '24', '전라북도', 70, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'A' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '24');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '25', '전라남도', 80, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'A' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '25');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '26', '경상북도', 90, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'A' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '26');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '27', '경상남도', 100, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'A' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '27');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '28', '제주도', 110, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'A' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '28');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '1001', '서울특별시', 10, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'B' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '1001');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '1101', '부산광역시', 20, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'B' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '1101');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '1102', '대구광역시', 30, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'B' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '1102');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '1103', '인천광역시', 40, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'B' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '1103');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '1104', '대전광역시', 50, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'B' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '1104');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '1105', '광주광역시', 60, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'B' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '1105');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '1106', '울산광역시', 70, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'B' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '1106');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '110209', '북구', 10, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'C' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '110209');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '11020901', '검단동', 10, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'D' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '11020901');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '11020902', '고성동1가', 20, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'D' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '11020902');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '11020903', '고성동2가', 30, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'D' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '11020903');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '11020904', '고성동3가', 40, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'D' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '11020904');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '11020905', '관음동', 50, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'D' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '11020905');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '11020906', '구암동', 60, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'D' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '11020906');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '11020907', '국우동', 70, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'D' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '11020907');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '11020908', '금호동', 80, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'D' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '11020908');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '11020909', '노곡동', 90, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'D' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '11020909');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '11020910', '노원동1가', 100, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'D' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '11020910');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '11020911', '노원동2가', 110, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'D' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '11020911');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '11020912', '노원동3가', 120, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'D' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '11020912');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '11020913', '대현동', 130, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'D' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '11020913');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '11020914', '도남동', 140, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'D' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '11020914');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '11020915', '동변동', 150, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'D' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '11020915');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '11020916', '동천동', 160, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'D' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '11020916');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '11020917', '동호동', 170, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'D' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '11020917');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '11020918', '매천동', 180, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'D' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '11020918');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '11020919', '복현동', 190, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'D' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '11020919');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '11020920', '사수동', 200, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'D' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '11020920');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '11020921', '산격동', 210, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'D' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '11020921');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '11020922', '서변동', 220, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'D' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '11020922');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '11020923', '연경동', 230, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'D' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '11020923');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '11020924', '읍내동', 240, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'D' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '11020924');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '11020925', '조야동', 250, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'D' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '11020925');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '11020926', '칠성동1가', 260, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'D' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '11020926');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '11020927', '칠성동2가', 270, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'D' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '11020927');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '11020928', '침산동', 280, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'D' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '11020928');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '10', '일반용', 10, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'E' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '10');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '20', '공공용', 20, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'E' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '20');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '30', '무료용', 30, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'E' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '30');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '40', '공동주택용', 40, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'E' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '40');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '50', '재사용', 50, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'E' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '50');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '60', '음식물 봉투', 60, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'E' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '60');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '61', '음식물 스티커', 70, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'E' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '61');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '62', '음식물 용기', 80, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'E' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '62');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '70', '대형폐기물 스티커', 90, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'E' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '70');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '2', '고밀도', 10, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'F' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '2');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '6', 'PP마대', 20, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'F' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '6');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '7', '스티커', 30, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'F' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '7');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '8', '용기', 40, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'F' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '8');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '10', '2L', 10, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'G' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '10');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '11', '3L', 20, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'G' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '11');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '12', '5L', 30, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'G' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '12');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '13', '10L', 40, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'G' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '13');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '15', '20L', 50, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'G' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '15');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '16', '30L', 60, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'G' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '16');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '17', '50L', 70, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'G' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '17');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '18', '60L', 80, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'G' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '18');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '19', '75L', 90, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'G' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '19');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '20', '100L', 100, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'G' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '20');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '21', '120L', 110, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'G' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '21');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '70', '1000원', 120, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'G' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '70');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '72', '3000원', 130, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'G' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '72');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '74', '5000원', 140, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'G' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '74');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '77', '8000원', 150, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'G' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '77');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '78', '10000원', 160, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'G' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '78');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '1', '시설보호대상자', 10, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'H' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '1');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '10', '생보자', 20, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'H' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '10');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '2', '통,반장', 30, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'H' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '2');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '3', '대한민국무공수훈자', 40, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'H' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '3');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '4', '사회복지시설', 50, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'H' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '4');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '1', '무상지급', 10, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'I' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '1');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '2', '일반판매', 20, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'I' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '2');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '3', '관내판매', 30, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'I' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '3');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '4', '교환판매', 40, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'I' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '4');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '1', '일반반품', 10, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'J' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '1');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '2', '관내반품', 20, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'J' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '2');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '3', '반품', 30, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'J' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '3');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '1', '봉투훼손', 10, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'K' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '1');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '2', '지정판매소 폐업', 20, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'K' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '2');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '4', '스티커 미사용', 30, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'K' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '4');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '1', '지정판매소변경사유1', 10, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'L' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '1');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '2', '지정판매소변경사유2', 20, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'L' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '2');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '10', '실사입고', 10, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'M' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '10');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '11', '신청입고', 20, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'M' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '11');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '12', '무료입고', 30, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'M' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '12');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '13', '발주입고', 40, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'M' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '13');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '16', '반품입고(정상)', 50, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'M' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '16');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '17', '반품입고(불용)', 60, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'M' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '17');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '18', '이동입고', 70, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'M' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '18');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '1A', '교환입고', 80, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'M' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '1A');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '1B', '기타입고', 90, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'M' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '1B');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '20', '실사출고', 100, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'M' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '20');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '21', '신청불출', 110, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'M' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '21');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '22', '무료불출', 120, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'M' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '22');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '23', '일반판매', 130, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'M' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '23');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '24', '공공출고', 140, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'M' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '24');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '26', '반품출고(정상)', 150, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'M' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '26');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '27', '반품출고(불용)', 160, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'M' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '27');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '28', '이동출고', 170, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'M' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '28');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '29', '파기처리', 180, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'M' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '29');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '2A', '교환출고', 190, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'M' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '2A');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '2B', '기타출고', 200, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'M' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '2B');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '99', '시찰', 210, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'M' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '99');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '10', '동판 종류1', 10, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'N' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '10');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '20', '동판 종류2', 20, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'N' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '20');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '10112', '일반용 3L', 10, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'O' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '10112');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '10122', '일반용 5L', 20, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'O' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '10122');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '10132', '일반용 10L', 30, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'O' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '10132');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '10152', '일반용 20L', 40, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'O' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '10152');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '10162', '일반용 30L', 50, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'O' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '10162');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '10172', '일반용 50L', 60, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'O' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '10172');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '10192', '일반용 75L', 70, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'O' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '10192');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '10202', '일반용 100L', 80, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'O' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '10202');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '20172', '공공용 50L', 90, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'O' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '20172');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '40152', '공동주택용 20L', 100, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'O' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '40152');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '40182', '공동주택용 60L', 110, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'O' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '40182');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '40212', '공동주택용 120L', 120, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'O' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '40212');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '50122', '재사용 5L', 130, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'O' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '50122');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '60102', '음식물 2L', 140, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'O' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '60102');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '60132', '음식물 10L', 150, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'O' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '60132');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '61107', '음식물 스티커 2L', 160, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'O' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '61107');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '61117', '음식물 스티커 3L', 170, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'O' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '61117');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '61127', '음식물 스티커 5L', 180, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'O' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '61127');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '61157', '음식물 스티커 20L', 190, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'O' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '61157');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '61187', '음식물 스티커 60L', 200, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'O' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '61187');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '61217', '음식물 스티커 120L', 210, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'O' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '61217');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '62128', '음식물용기 5L', 220, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'O' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '62128');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '62158', '음식물용기 20L', 230, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'O' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '62158');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '70707', '폐기물 스티커 1,000원', 240, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'O' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '70707');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '70727', '폐기물 스티커 3,000원', 250, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'O' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '70727');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '70747', '폐기물 스티커 5,000원', 260, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'O' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '70747');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '70787', '폐기물 스티커 10,000원', 270, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'O' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '70787');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '111', '등록-다시', 10, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'P' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '111');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '1000', '', 10, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'Q' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '1000');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '1001', '보건및생활환경개선비', 20, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'Q' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '1001');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '2000', '', 30, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'Q' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '2000');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '2010', '환경관리', 40, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'Q' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '2010');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '4', '국민은행', 10, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'R' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '4');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '7', '수협', 20, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'R' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '7');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '20', '우리은행', 30, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'R' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '20');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '32', '부산은행', 40, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'R' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '32');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '99', '새마을금고', 50, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'R' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '99');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '1', '청소과', 10, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'S' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '1');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '2', '청소행정과', 20, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'S' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '2');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '3', '자원순환과', 30, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'S' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '3');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '4', '도시미화과', 40, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'S' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '4');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '5', '영업부', 50, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'S' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '5');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '6', '관리부', 60, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'S' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '6');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '7', '기술부', 70, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'S' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '7');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '1', '7급', 10, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'T' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '1');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '2', '8급', 20, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'T' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '2');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '3', '9급', 30, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'T' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '3');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '4', '기능', 40, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'T' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '4');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '5', '계장', 50, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'T' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '5');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '6', '과장', 60, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'T' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '6');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '7', '사장', 70, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'T' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '7');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '8', '상무', 80, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'T' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '8');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '1', '', 10, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'U' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '1');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '2', '', 20, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'U' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '2');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '3', '', 30, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'U' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '3');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '4', '', 40, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'U' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '4');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '5', '', 50, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'U' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '5');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '6', '', 60, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'U' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '6');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '7', '', 70, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'U' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '7');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '1', '1구역', 10, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'V' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '1');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '2', '2구역', 20, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'V' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '2');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '10132', '일반용 10L', 10, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'W' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '10132');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '10152', '일반용 20L', 20, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'W' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '10152');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '10162', '일반용 30L', 30, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'W' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '10162');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '10172', '일반용 50L', 40, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'W' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '10172');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '10202', '일반용 100L', 50, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'W' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '10202');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '20172', '공공용 50L', 60, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'W' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '20172');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '40152', '공동주택용스티커 20L', 70, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'W' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '40152');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '40182', '공동주택용스티커 60L', 80, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'W' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '40182');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '40212', '공동주택용스티커 120L', 90, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'W' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '40212');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '60102', '음식물 2L', 100, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'W' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '60102');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '60132', '음식물 10L', 110, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'W' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '60132');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '61127', '스티커 5L', 120, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'W' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '61127');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '61157', '스티커 20L', 130, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'W' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '61157');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '61217', '스티커 120L', 140, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'W' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '61217');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '62128', '음식물용기 5L', 150, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'W' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '62128');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '62158', '음식물용기 20L', 160, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'W' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '62158');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '1', '일반용', 10, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'X' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '1');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '2', '공공용', 20, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'X' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '2');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '3', '무료용', 30, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'X' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '3');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '4', '공동주택용', 40, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'X' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '4');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '6', '음식물', 50, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'X' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '6');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '1', '1/4분기', 10, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'Y' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '1');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '2', '2/4분기', 20, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'Y' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '2');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '3', '3/4분기', 30, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'Y' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '3');
INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) SELECT k.ck_idx, '4', '4/4분기', 40, 1, NOW() FROM `code_kind` k WHERE k.ck_code = 'Y' AND NOT EXISTS (SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = '4');

View File

@@ -27,6 +27,8 @@ CREATE TABLE IF NOT EXISTS `member` (
`mb_regdate` DATETIME NOT NULL COMMENT '가입일시',
`mb_latestdate` DATETIME NULL DEFAULT NULL COMMENT '최근 로그인 일시',
`mb_leavedate` DATETIME NULL DEFAULT NULL COMMENT '탈퇴일시',
`mb_login_fail_count` INT UNSIGNED NOT NULL DEFAULT 0 COMMENT '연속 로그인 실패 횟수(비번 오류)',
`mb_locked_until` DATETIME NULL DEFAULT NULL COMMENT '로그인 잠금 만료 시각(mb_locked_until > NOW() 이면 잠금)',
PRIMARY KEY (`mb_idx`),
UNIQUE KEY `uk_mb_id` (`mb_id`),
KEY `idx_mb_state` (`mb_state`),

View File

@@ -0,0 +1,9 @@
-- 기본정보관리(bag/basic-info) 하위 "기본 코드 관리" 메뉴에 링크가 비어 있으면 bag/code-kinds 로 설정
UPDATE `menu` m
INNER JOIN `menu` p ON p.mm_idx = m.mm_pidx
AND p.mm_link = 'bag/basic-info'
AND p.mm_pidx = 0
INNER JOIN `menu_type` t ON t.mt_idx = m.mt_idx AND t.mt_code = 'site'
SET m.mm_link = 'bag/code-kinds'
WHERE m.mm_name IN ('기본 코드 관리', '기본코드관리')
AND (m.mm_link IS NULL OR m.mm_link = '');

View File

@@ -0,0 +1,19 @@
-- 기존 DB: site 메뉴 "기본정보관리" 아래 "기본코드관리" 하위 메뉴 추가 (bag/code-kinds)
-- idempotent: 동일 링크가 이미 있으면 추가하지 않음
INSERT INTO `menu` (`mt_idx`, `lg_idx`, `mm_name`, `mm_link`, `mm_pidx`, `mm_dep`, `mm_num`, `mm_cnode`, `mm_level`, `mm_is_view`)
SELECT m.mt_idx, m.lg_idx, '기본코드관리', 'bag/code-kinds', m.mm_idx, 1, 0, 0, '', 'Y'
FROM `menu` m
JOIN `menu_type` t ON t.mt_idx = m.mt_idx AND t.mt_code = 'site'
WHERE m.mm_link = 'bag/basic-info' AND m.mm_pidx = 0
AND NOT EXISTS (
SELECT 1 FROM `menu` c
WHERE c.mt_idx = m.mt_idx AND c.lg_idx = m.lg_idx AND c.mm_link = 'bag/code-kinds'
);
UPDATE `menu` m
JOIN `menu_type` t ON t.mt_idx = m.mt_idx AND t.mt_code = 'site'
SET m.mm_cnode = (
SELECT COUNT(*) FROM `menu` c WHERE c.mm_pidx = m.mm_idx AND c.mt_idx = m.mt_idx AND c.lg_idx = m.lg_idx
)
WHERE m.mm_link = 'bag/basic-info' AND m.mm_pidx = 0;

View File

@@ -56,3 +56,21 @@ INSERT INTO `menu` (`mt_idx`, `lg_idx`, `mm_name`, `mm_link`, `mm_pidx`, `mm_dep
(2, 1, '통계 분석 관리', 'bag/analytics', 0, 0, 7, 0, '', 'Y'),
(2, 1, '', 'bag/window', 0, 0, 8, 0, '', 'Y'),
(2, 1, '도움말', 'bag/help', 0, 0, 9, 0, '', 'Y');
-- site: 기본정보관리 하위 "기본코드관리" (기존 DB 중복 방지: bag/code-kinds 없을 때만 추가)
INSERT INTO `menu` (`mt_idx`, `lg_idx`, `mm_name`, `mm_link`, `mm_pidx`, `mm_dep`, `mm_num`, `mm_cnode`, `mm_level`, `mm_is_view`)
SELECT m.mt_idx, m.lg_idx, '기본코드관리', 'bag/code-kinds', m.mm_idx, 1, 0, 0, '', 'Y'
FROM `menu` m
JOIN `menu_type` t ON t.mt_idx = m.mt_idx AND t.mt_code = 'site'
WHERE m.lg_idx = 1 AND m.mm_link = 'bag/basic-info' AND m.mm_pidx = 0
AND NOT EXISTS (
SELECT 1 FROM `menu` c WHERE c.mt_idx = m.mt_idx AND c.lg_idx = m.lg_idx AND c.mm_link = 'bag/code-kinds'
)
LIMIT 1;
UPDATE `menu` m
JOIN `menu_type` t ON t.mt_idx = m.mt_idx AND t.mt_code = 'site'
SET m.mm_cnode = (
SELECT COUNT(*) FROM `menu` c WHERE c.mm_pidx = m.mm_idx AND c.mt_idx = m.mt_idx AND c.lg_idx = m.lg_idx
)
WHERE m.lg_idx = 1 AND m.mm_link = 'bag/basic-info' AND m.mm_pidx = 0;

View File

@@ -32,3 +32,21 @@ WHERE NOT EXISTS (
AND m.mm_link = t.mm_link
);
-- 3) 기본정보관리 하위 "기본코드관리" → bag/code-kinds
INSERT INTO `menu` (`mt_idx`, `lg_idx`, `mm_name`, `mm_link`, `mm_pidx`, `mm_dep`, `mm_num`, `mm_cnode`, `mm_level`, `mm_is_view`)
SELECT m.mt_idx, m.lg_idx, '기본코드관리', 'bag/code-kinds', m.mm_idx, 1, 0, 0, '', 'Y'
FROM `menu` m
JOIN `menu_type` mt ON mt.mt_idx = m.mt_idx AND mt.mt_code = 'site'
WHERE m.lg_idx = 1 AND m.mm_link = 'bag/basic-info' AND m.mm_pidx = 0
AND NOT EXISTS (
SELECT 1 FROM `menu` c WHERE c.mt_idx = m.mt_idx AND c.lg_idx = m.lg_idx AND c.mm_link = 'bag/code-kinds'
)
LIMIT 1;
UPDATE `menu` m
JOIN `menu_type` mt ON mt.mt_idx = m.mt_idx AND mt.mt_code = 'site'
SET m.mm_cnode = (
SELECT COUNT(*) FROM `menu` c WHERE c.mm_pidx = m.mm_idx AND c.mt_idx = m.mt_idx AND c.lg_idx = m.lg_idx
)
WHERE m.lg_idx = 1 AND m.mm_link = 'bag/basic-info' AND m.mm_pidx = 0;

View File

@@ -0,0 +1,145 @@
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""Parse 종량제_개발목록_20260127(기본코드 종류).csv → writable/database/code_master_sync_from_csv.sql"""
from __future__ import annotations
import csv
import re
import sys
from pathlib import Path
def read_csv_rows(path: Path) -> list[list[str]]:
raw = path.read_text(encoding="utf-8-sig")
return list(csv.reader(raw.splitlines()))
def extract_pairs(fields: list[str], first_code_idx: int, ncols: int, step: int = 3) -> list[tuple[str, str]]:
pairs: list[tuple[str, str]] = []
for k in range(ncols):
i = first_code_idx + k * step
if i + 1 >= len(fields):
pairs.append(("", ""))
continue
pairs.append((fields[i].strip(), fields[i + 1].strip()))
return pairs
SKIP_NAME = re.compile(r"코드\s*[ABCD]|순번\s*두자리|등록되는구의", re.I)
def valid_detail(cd_code: str, cd_name: str) -> bool:
if not cd_code or not cd_name:
return False
if cd_code in ("세부코드", "코드명"):
return False
if SKIP_NAME.search(cd_name) or SKIP_NAME.search(cd_code):
return False
return True
def dedup_pairs(pairs: list[tuple[str, str]]) -> list[tuple[str, str]]:
seen: set[str] = set()
out: list[tuple[str, str]] = []
for c, n in pairs:
if c in seen:
continue
seen.add(c)
out.append((c, n))
return out
def main() -> int:
root = Path(__file__).resolve().parents[2]
csv_path = root / "docs/종량제 관련 자료/종량제 개발목록/종량제_개발목록_20260127(기본코드 종류).csv"
if not csv_path.exists():
print("CSV not found:", csv_path, file=sys.stderr)
return 1
rows = read_csv_rows(csv_path)
details: dict[str, list[tuple[str, str]]] = {chr(65 + i): [] for i in range(25)}
KIND_NAMES: dict[str, str] = {}
for fields in rows:
if len(fields) >= 2:
a, b = fields[0].strip(), fields[1].strip()
if len(a) == 1 and a.isalpha() and "A" <= a <= "Y" and b and "세부코드" not in b:
KIND_NAMES[a] = b
# 블록 AI: CSV 상 4행째~ ≈ rows[3]부터 동·메모 행 전까지 (rows[3:32])
for fields in rows[3:32]:
if len(fields) < 5:
continue
pairs = extract_pairs(fields, 3, 9, step=3)
for col, let in enumerate("ABCDEFGHI"):
c, n = pairs[col]
if valid_detail(c, n):
details[let].append((c, n))
# 블록 JR: 데이터 rows[37:64]
for fields in rows[37:64]:
if len(fields) < 5:
continue
pairs = extract_pairs(fields, 3, 9, step=3)
for col, let in enumerate("JKLMNOPQR"):
c, n = pairs[col]
if valid_detail(c, n):
details[let].append((c, n))
# 블록 SY: rows[68:]
for fields in rows[68:]:
if len(fields) < 5:
continue
pairs = extract_pairs(fields, 3, 7, step=3)
for col, let in enumerate("STUVWXY"):
c, n = pairs[col]
if valid_detail(c, n):
details[let].append((c, n))
for L in details:
details[L] = dedup_pairs(details[L])
sql: list[str] = [
"-- Sync missing rows from 종량제_개발목록_20260127(기본코드 종류).csv",
"-- Generated by writable/tools/sync_basic_codes_from_csv.py",
"SET NAMES utf8mb4;",
"",
]
for L in "ABCDEFGHIJKLMNOPQRSTUVWXY":
name = KIND_NAMES.get(L, L)
ne = name.replace("'", "''")
sql.append(
f"INSERT INTO `code_kind` (`ck_code`, `ck_name`, `ck_state`, `ck_regdate`) "
f"SELECT '{L}', '{ne}', 1, NOW() FROM DUAL "
f"WHERE NOT EXISTS (SELECT 1 FROM `code_kind` c WHERE c.ck_code = '{L}');"
)
sql.append("")
for L in "ABCDEFGHIJKLMNOPQRSTUVWXY":
sort_i = 0
for c, n in details[L]:
sort_i += 10
ce = c.replace("'", "''")
ne = n.replace("'", "''")
sql.append(
"INSERT INTO `code_detail` (`cd_ck_idx`, `cd_code`, `cd_name`, `cd_sort`, `cd_state`, `cd_regdate`) "
f"SELECT k.ck_idx, '{ce}', '{ne}', {sort_i}, 1, NOW() FROM `code_kind` k "
f"WHERE k.ck_code = '{L}' AND NOT EXISTS ("
"SELECT 1 FROM `code_detail` d WHERE d.cd_ck_idx = k.ck_idx AND d.cd_code = "
f"'{ce}'"
");"
)
out_path = root / "writable/database/code_master_sync_from_csv.sql"
out_path.write_text("\n".join(sql) + "\n", encoding="utf-8")
print("Wrote", out_path)
for L in "ABCDEFGHIJKLMNOPQRSTUVWXY":
print(f" {L}: {len(details[L])} details (unique cd_code)")
return 0
if __name__ == "__main__":
raise SystemExit(main())