59 lines
3.7 KiB
SQL
59 lines
3.7 KiB
SQL
-- 메뉴 종류 (admin=관리자 상단 메뉴, site=사이트 첫페이지 등)
|
|
CREATE TABLE IF NOT EXISTS `menu_type` (
|
|
`mt_idx` INT UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '메뉴종류 PK',
|
|
`mt_code` VARCHAR(30) NOT NULL DEFAULT '' COMMENT '코드(admin, site 등)',
|
|
`mt_name` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '표시명',
|
|
`mt_sort` INT UNSIGNED NOT NULL DEFAULT 0 COMMENT '정렬',
|
|
PRIMARY KEY (`mt_idx`),
|
|
UNIQUE KEY `uk_mt_code` (`mt_code`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='메뉴 종류';
|
|
|
|
-- 메뉴 항목 (지자체별 관리, 트리: mm_pidx=0 최상위, mm_dep 깊이, mm_num 형제순서)
|
|
CREATE TABLE IF NOT EXISTS `menu` (
|
|
`mm_idx` INT UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '메뉴 PK',
|
|
`mt_idx` INT UNSIGNED NOT NULL COMMENT '메뉴종류 FK',
|
|
`lg_idx` INT UNSIGNED NOT NULL COMMENT '지자체 FK',
|
|
`mm_name` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '메뉴명',
|
|
`mm_link` VARCHAR(255) NOT NULL DEFAULT '' COMMENT '링크(예: admin/users)',
|
|
`mm_pidx` INT UNSIGNED NOT NULL DEFAULT 0 COMMENT '부모 메뉴 PK(0=최상위)',
|
|
`mm_dep` TINYINT UNSIGNED NOT NULL DEFAULT 0 COMMENT '깊이(0,1,2)',
|
|
`mm_num` INT UNSIGNED NOT NULL DEFAULT 0 COMMENT '형제 내 순서',
|
|
`mm_cnode` INT UNSIGNED NOT NULL DEFAULT 0 COMMENT '자식 개수',
|
|
`mm_level` VARCHAR(50) NOT NULL DEFAULT '' COMMENT '노출 허용 mb_level 쉼표구분(빈값=전체)',
|
|
`mm_is_view` CHAR(1) NOT NULL DEFAULT 'Y' COMMENT 'Y=노출, N=숨김',
|
|
PRIMARY KEY (`mm_idx`),
|
|
KEY `idx_mt_lg` (`mt_idx`, `lg_idx`),
|
|
KEY `idx_mm_pidx` (`mm_pidx`),
|
|
KEY `idx_mm_dep_num` (`mm_dep`, `mm_num`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='메뉴';
|
|
|
|
-- 초기 데이터: 메뉴 종류 (admin, site) + lg_idx=1 지자체용 기본 1차 메뉴
|
|
INSERT INTO `menu_type` (`mt_code`, `mt_name`, `mt_sort`) VALUES
|
|
('admin', '관리자 메뉴', 10),
|
|
('site', '사이트 메뉴', 20);
|
|
|
|
-- admin 타입, lg_idx=1 기본 1차 관리자 메뉴
|
|
INSERT INTO `menu` (`mt_idx`, `lg_idx`, `mm_name`, `mm_link`, `mm_pidx`, `mm_dep`, `mm_num`, `mm_cnode`, `mm_level`, `mm_is_view`) VALUES
|
|
-- mt_idx=1 (admin)
|
|
(1, 1, '대시보드', 'admin', 0, 0, 0, 0, '3', 'Y'),
|
|
(1, 1, '회원 관리', 'admin/users', 0, 0, 1, 0, '', 'Y'),
|
|
(1, 1, '로그인 이력', 'admin/access/login-history', 0, 0, 2, 0, '', 'Y'),
|
|
(1, 1, '승인 대기', 'admin/access/approvals', 0, 0, 3, 0, '', 'Y'),
|
|
(1, 1, '역할', 'admin/roles', 0, 0, 4, 0, '', 'Y'),
|
|
(1, 1, '메뉴', 'admin/menus', 0, 0, 5, 0, '', 'Y'),
|
|
(1, 1, '지자체 전환', 'admin/select-local-government', 0, 0, 6, 0, '', 'Y'),
|
|
(1, 1, '지자체', 'admin/local-governments', 0, 0, 7, 0, '', 'Y'),
|
|
(1, 1, '지정판매소', 'admin/designated-shops', 0, 0, 8, 0, '3', 'Y'),
|
|
|
|
-- mt_idx=2 (site) 기본 1차 사이트 메뉴 (링크는 추후 실제 라우트로 변경)
|
|
(2, 1, '기본정보관리', 'bag/basic-info', 0, 0, 0, 0, '', 'Y'),
|
|
(2, 1, '발주 입고 관리', 'bag/purchase-inbound', 0, 0, 1, 0, '', 'Y'),
|
|
(2, 1, '불출 관리', 'bag/issue', 0, 0, 2, 0, '', 'Y'),
|
|
(2, 1, '재고 관리', 'bag/inventory', 0, 0, 3, 0, '', 'Y'),
|
|
(2, 1, '판매 관리', 'bag/sales', 0, 0, 4, 0, '', 'Y'),
|
|
(2, 1, '판매 현황', 'bag/sales-stats', 0, 0, 5, 0, '', 'Y'),
|
|
(2, 1, '봉투 수불 관리', 'bag/flow', 0, 0, 6, 0, '', 'Y'),
|
|
(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');
|