고도몰 관리자 메뉴 추가하기

jerome·2021년 4월 12일
1

고도몰

목록 보기
5/5

고도몰 관리자 메뉴 추가하기

2차 메뉴 추가하기

2차 메뉴는 3차메뉴가 등록되어야 노출됩니다.

  1. 2차 메뉴를 추가하려면 DataBase > es_adminMenu 접속하신 다음 아래 Query 를 실행해서,
    1차 메뉴인 게시판의 메뉴 고유번호를 확인합니다.
SELECT adminMenuNo FROM `es_adminMenu`
WHERE adminMenuDepth = 1
  AND adminMenuType = 'd'
  AND adminMenuName = '상품'
LIMIT 0 , 30;

-- 실행 결과값이 나옵니다.
godo00051
  1. 1차 메뉴인 게시판에서 2차 메뉴의 최대 정렬 번호를 확인합니다.
SELECT max(adminMenuSort) FROM `es_adminMenu`
WHERE adminMenuDepth = 2 AND adminMenuType = 'd' AND adminMenuParentNo = 'godo00051';

-- 실행 결과값이 나옵니다.
80
  1. 메뉴고유번호는 제작사 prefix(접두사)를 입력해야 합니다. (회사영문 또는 고유영문, 이 경우에는 gs가 된다)
    제작사 prefix(접두사) 에 godo 는 사용하지 않습니다. (godo 를 사용하시면 오류가 발생할 수 있습니다.)
SELECT adminMenuNo FROM `es_adminMenu`
WHERE adminMenuNo LIKE 'gs%'
ORDER BY adminMenuNo DESC LIMIT 0, 1;

-- 실행 결과값이 나옵니다.
gs0000011
  1. 실행 결과값이 있다면 실행결과 값에 1을 더해주고, 실행 결과값이 없다면 prefix + 숫자 5자리를 입력합니다.(숫자는 00001부터 시작하여 1씩 증가해야 합니다.)
    이 값은 INSERT Query에서 adminMenuNo에 쓰인다. (글자 수를 맞추기 위해 gs + 숫자 7자리)
-- 위의 실행결과가 있을 경우
gs0000005

-- 실행결과가 없을 경우
gs000000001
  1. 데이터베이스에 접속하여 아래 Query를 실행하여 메뉴를 등록합니다.
    DataBase Table Statement의 es_adminMenu를 반드시 확인해 주세요.
-- adminMenuNo: 4번의 실행결과
-- adminMenuCode: 메뉴코드
-- adminMenuSort: 2번의 실행결과 보다 큰 값(어드민 메뉴 정렬을 위해서 쓰이는 값)
-- adminMenuParentNo: 1번의 실행결과(상위 메뉴 코드, 이 경우에는 2차 메뉴의 고유번호가 된다)
INSERT INTO `es_adminMenu` (adminMenuNo, adminMenuType, adminMenuProductCode, adminMenuPlusCode,
adminMenuCode, adminMenuDepth, adminMenuParentNo, adminMenuSort, adminMenuName,
adminMenuUrl, adminMenuDisplayType, adminMenuDisplayNo, adminMenuSettingType, adminMenuEcKind, regDt)
VALUES ('gs000000001', 'd', 'geekstudio', null,
'goods', '2', 'godo00051', '90', '상품관리',
null, 'y', 'godo00000', 'd', 'p', now());

3차 메뉴 추가하기

  1. 위 본사 관리자의 (메뉴 관리)이라는 3차 메뉴를 추가하려면 DataBase > es_adminMenu 접속하신 다음 아래 Query 를 실행해서,
    2차 메뉴인 (기본정책)의 메뉴 고유번호를 확인합니다. 이 값은 후에 추가될 adminMenuParentNo의 값이 됩니다.
SELECT adminMenuNo FROM `es_adminMenu` WHERE adminMenuDepth = 2 AND adminMenuType = 'd' AND adminMenuName = '상품 관리';

-- 결과값
godo00052
  1. 2차 메뉴인 (기본설정)의 메뉴에서 3차 메뉴의 최대 정렬 번호를 확인합니다. (adminMenuParentNo는 1번의 결과값)
SELECT max(adminMenuSort) FROM `es_adminMenu`
WHERE adminMenuDepth = 3
  AND adminMenuType = 'd'
  AND adminMenuParentNo = 'godo00052';

-- 결과값
1100
  1. 메뉴고유번호는 제작사 prefix(접두사)를 입력해야 합니다. (회사영문 또는 고유영문, 이 경우에는 gs가 된다)
    제작사 prefix(접두사) 에 godo 는 사용하지 않습니다. (godo 를 사용하시면 오류가 발생할 수 있습니다.)
SELECT adminMenuNo FROM `es_adminMenu`
WHERE adminMenuNo LIKE 'gs%'
ORDER BY adminMenuNo DESC LIMIT 0, 1;

-- 실행 결과값이 나옵니다.
gs0000003

-- 실행 결과가 없을 경우
gs0000001
  1. 실행 결과값이 있다면 실행결과 값에 1을 더해주고, 실행 결과값이 없다면 prefix + 숫자 5자리를 입력합니다.(숫자는 00001부터 시작하여 1씩 증가해야 합니다.)
-- 위의 실행결과가 있을 경우
gs0000004

-- 실행결과가 없을 경우
gs0000001
  1. 데이터베이스에 접속하여 아래 Query를 실행하여 메뉴를 등록합니다. DataBase Table Statement의 es_adminMenu를 반드시 확인해 주세요.
-- adminMenuNo: 4번의 실행결과
-- adminMenuCode: 메뉴코드(임의로 지정해도 되지만 페이지주소(adminMenuUrl)를 CamelCase로 입력하면 알아보기 쉽다)
-- adminMenuParentNo: 2차메뉴 이름(1번의 실행결과)
-- adminMenuSort: 2번의 실행결과 보다 큰 값(어드민 메뉴 정렬을 위해서 쓰이는 값)
-- adminMenuName: 3차메뉴 이름
-- adminMenuUrl: 항목을 들어갔을때 나오는 페이지 주소
INSERT INTO `es_adminMenu` (adminMenuNo, adminMenuType, adminMenuProductCode, adminMenuPlusCode,
adminMenuCode, adminMenuDepth, adminMenuParentNo, adminMenuSort, adminMenuName,
adminMenuUrl, adminMenuDisplayType, adminMenuDisplayNo, adminMenuSettingType, adminMenuEcKind, regDt)
VALUES ('gs0000004', 'd', 'geekstudio', null,
'certificationMark', '3', 'godo00052', '1200', '인증마크 관리',
'certification_mark_list.php', 'y', 'godo00000', 'd', 'p', now());

관리자 메뉴 데이터 생성

  • 관리자 메뉴 데이터를 생성합니다.
  • 관리자 메뉴를 새로 추가할 경우, 추가할 메뉴 페이지에 해당되는 컨트롤러 내에서 해당 함수를 호출합니다.
  • es_adminMenu 테이블에 추가할 메뉴 데이터를 insert한 후에 1차메뉴(topMenu),2차메뉴(topMenu), 2차메뉴(midMenu), 3차메뉴($thisMenu) 파라미터 대로 메소드를 호출합니다.
    • $this->callMenu($topMenu, $midMenu, $thisMenu)
// 통계(statistics) > 정산(calculate) > PG정산 대사(gsPgCalculate) 메뉴 추가
$this->callMenu('statistics', 'calculate', 'gsPgCalculate');
profile
프론트엔드 개발 🌱

0개의 댓글