80512f3098
Deploy momo-erp / deploy (push) Successful in 1m21s
[인증/계정] - MASTER_PWD 백도어 제거 (auth.ts, constants.ts) — 모든 사용자는 자기 비번으로만 로그인 - SUPER_ADMIN/ADMIN_USER_ID: plm_admin → admin - DB 마이그레이션 009: plm_admin → admin (비번 '1') / 모모유통 임직원 6명 등록 (user_type='A') · 거래처(user_type='C') 보존, 그 외 FITO 레거시 인사정보 일괄 삭제 [품목 마스터 확장] - momo_items: max_order_qty (1회 발주 한도), is_hidden (숨김 처리) 컬럼 추가 - /api/m/items/save: maxOrderQty/isHidden 입력 처리 - /api/m/items/list: 일반 회원에게 is_hidden=Y 품목 숨김 (view_hidden 권한자만 노출) - 관리자 품목 화면에 두 입력 필드 + 그리드 배지 추가 [회원 권한 확장] - user_info: unlimited_qty (제한수량 해지), view_hidden (숨김 보기) 컬럼 추가 - /api/m/customers/list, /save 신설 (관리자 전용 — 거래처 정보/권한 수정) - /m/admin/customers 페이지 신설 — 두 권한 토글로 관리 [발주 검증] - /api/m/orders/save: 회원의 unlimited_qty 권한 + 품목별 max_order_qty 한도 검증 추가 - 재고 한도도 백엔드에서 검증 (기존엔 프론트만 체크) [회원정보 수정] - /api/auth/profile (GET/POST): 본인 정보 + 비밀번호 변경 - /m/profile 페이지 신설, 헤더의 사용자 이름 클릭 → 프로필 페이지 [문서] - docs/MOMO_DISTRIBUTION_SPEC.md 부록 A (v0.3) 추가 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
83 lines
2.4 KiB
TypeScript
83 lines
2.4 KiB
TypeScript
// Constants.java 대응
|
|
export const SYSTEM_NAME = "업무관리 시스템";
|
|
export const COMPANY_NAME = "(주)피토";
|
|
export const COMPANY_NAME_ENG = "fito";
|
|
|
|
// FITO 회사 정보 (발주처 고정 값) — 실제 회사 정보 확정 후 수정할 것
|
|
export const COMPANY_INFO = {
|
|
// admin_supply_mng에 FITO 레코드가 등록되면 해당 OBJID로 교체
|
|
PO_CLIENT_ID: "",
|
|
NAME: "(주)피토",
|
|
BUS_NO: "",
|
|
CHARGER: "",
|
|
TEL: "",
|
|
FAX: "",
|
|
HP: "",
|
|
EMAIL: "",
|
|
ADDR: "",
|
|
} as const;
|
|
|
|
export const SUPER_ADMIN = "admin";
|
|
export const ADMIN_USER_ID = "admin";
|
|
|
|
// 페이징
|
|
export const COUNT_PER_PAGE = 20;
|
|
export const PAGE_SIZE = 10;
|
|
export const ADMIN_COUNT_PER_PAGE = 20;
|
|
|
|
// AES 암호화 키
|
|
export const AES_KEY = "ILJIAESSECRETKEY";
|
|
export const AES_ALGORITHM = "aes-128-ecb";
|
|
|
|
// 메뉴 아이콘 매핑 (menu.jsp에서 가져옴)
|
|
export const MENU_ICON_MAP: Record<string, string> = {
|
|
DASHBOARD: "LayoutDashboard",
|
|
영업: "TrendingUp",
|
|
프로젝트: "FolderKanban",
|
|
제품: "Package",
|
|
구매품: "ListChecks",
|
|
구매: "ShoppingCart",
|
|
발주: "FileText",
|
|
입고: "Warehouse",
|
|
자재: "Boxes",
|
|
생산: "Factory",
|
|
작업: "Wrench",
|
|
CS: "Headset",
|
|
투입: "UserClock",
|
|
원가: "Calculator",
|
|
자금: "Coins",
|
|
SCM: "Truck",
|
|
관리: "Settings",
|
|
품질: "ClipboardCheck",
|
|
설계: "Compass",
|
|
BOM: "GitBranch",
|
|
PART: "Puzzle",
|
|
결재: "Stamp",
|
|
};
|
|
|
|
// 파일 문서 타입 코드 (Constants.java FILE_DOC_TYPE_*)
|
|
export const FILE_DOC_TYPES = {
|
|
PART_SHAPE: { code: "PART_SHAPE", name: "PART 형상" },
|
|
PART_2D: { code: "PART_2D", name: "Part 2D 도면" },
|
|
PART_3D: { code: "PART_3D", name: "PART 3D 도면" },
|
|
NOTICE_ATTACH: { code: "NOTICE_ATTACH", name: "공지사항 첨부파일" },
|
|
PROBLEM_ATTACH: { code: "PROBLEM_ATTACH", name: "통합문제점관리 문제점 첨부파일" },
|
|
WBS_TASK_ATTACH: { code: "WBS_TASK_ATTACH", name: "WBS Task 첨부파일" },
|
|
EO_ATTACH: { code: "EO_ATTACH", name: "EO적용/점검" },
|
|
PJT_ATTACH: { code: "PJT_ATTACH", name: "프로젝트 등록 첨부파일" },
|
|
} as const;
|
|
|
|
// 공통코드 ID (Constants.java *_CD 들)
|
|
export const CODE_IDS = {
|
|
CUSTOMER_CODE: "0005110",
|
|
CAR_TYPE_CODE: "0005113",
|
|
PRODUCT_GROUP_CODE: "0005116",
|
|
MATERIAL_CODE: "0005126",
|
|
UNIT_CODE: "0000059",
|
|
PART_TYPE_CODE: "0000062",
|
|
INVENTORY_LOCATION: "0000262",
|
|
SPEC_CD: "SPE90000",
|
|
EXP_SORT_CD: "0001541",
|
|
EXP_STATUS_CD: "0001547",
|
|
} as const;
|