feat: MappingEngine + Override 실제 로직 + 프론트 주요 화면
Backend: - MappingEngine: company_field_mapping 기반 동적 변환 구현 - raw_content(JSON) → 표준 원장 (TRIM/UPPER/LOWER/DATE/DIVIDE/MULTIPLY/CODE_MAP) - policy_no 로 contract 매칭 → contract_id/agent_id 자동 - 실패 시 parse_error_log 자동 적재 - Recruit/Maintain Mapper.sumByAgentMonth 추가 - OrganizationMapper.selectAncestorIds (CTE 재귀 상향) 추가 - CalcOverrideStep 실제 동작: * lower agent 의 모집+유지 합계를 base 로 사용 * 자기 조직 → 상위 조직 순으로 to_grade 직급 ACTIVE 설계사 탐색 * (lowerOrgId, toGrade) 캐싱 Frontend (주요 화면): - 공통 컴포넌트: * CodeSelect (공통코드 드롭다운, React Query 캐시) * CodeBadge (상태 색상 자동 매핑) * MoneyText (천단위 콤마, 음수 빨강, 부호 옵션) * PermissionButton (권한 없으면 미렌더) * SearchForm (조건 배열 → 자동 폼) * ExcelExportButton (blob 다운로드) * PageContainer - 훅: useCommonCodes, usePermission (메뉴별 boolean) - API 모듈: agent, contract, ledger, settle, code - 페이지: AgentList, ContractList, RecruitLedger, SettleList * SettleList: 월 요약 카드 + 확정/보류 액션 + 권한 체크 - 라우터: /org/agents, /contracts, /ledger/recruit, /settle V16 fix: - PAYMENT 메뉴는 V12 에서 level1 directory 로 생성됨 → V16 에서 PAGE 로 UPDATE 후 권한 매트릭스 적용 (자식으로 또 만들면 unique 충돌)
This commit is contained in:
@@ -1,6 +1,13 @@
|
||||
-- V16: 관리자 계정 + 메뉴 상세 + 권한 매트릭스 초기화
|
||||
-- admin 계정 비밀번호: admin1234! (BCrypt $2b$10)
|
||||
|
||||
-- 0. PAYMENT 메뉴는 V12에서 level 1 directory 로 생성되었으나
|
||||
-- PaymentController 에서 menu="PAYMENT" 로 직접 권한 체크하므로 PAGE 로 변경.
|
||||
UPDATE menu SET menu_type = 'PAGE',
|
||||
menu_path = '/payments',
|
||||
component_path = 'settle/PaymentList'
|
||||
WHERE menu_code = 'PAYMENT';
|
||||
|
||||
-- 1. 자식 메뉴 (V10에서 정의된 menu_code 와 컨트롤러 @RequirePermission 매칭)
|
||||
WITH parent AS (
|
||||
SELECT menu_id, menu_code FROM menu WHERE menu_level = 1
|
||||
@@ -32,7 +39,6 @@ JOIN (VALUES
|
||||
-- 정산/지급
|
||||
('SETTLE', 'SETTLE_LIST', '정산 결과', '/settle', 'settle/SettleList', 10),
|
||||
('SETTLE', 'BATCH_RUN', '정산 배치', '/settle/batch', 'settle/BatchRun', 20),
|
||||
('PAYMENT', 'PAYMENT', '지급 관리', '/payments', 'settle/PaymentList', 10),
|
||||
-- 시스템
|
||||
('SYSTEM', 'SYSTEM_USER', '사용자 관리', '/system/users', 'system/UserList', 10),
|
||||
('SYSTEM', 'SYSTEM_ROLE', '역할 관리', '/system/roles', 'system/RoleList', 20),
|
||||
|
||||
Reference in New Issue
Block a user