hjjeong
|
7a7f4f03b5
|
생산관리 M-BOM 본 편집(PR-B1) + 폴더 컬럼 + DataGrid 서버 페이지네이션 + bigint=varchar fix
PR-B1 본 편집/저장 (운영 saveMbom.do 1:1)
· 매퍼 7종 1:1 (insert/updateMbomHeader, insert/updateMbomDetail,
deleteMbomDetailByObjid, insertMbomHistory, updateProjectMbomStatus)
· 신규 CREATE: createObjId + generateMbomNo(M-{partNo}-YYMMDD-NN) +
child_objid 재매핑 + detail 일괄 insert + history(CREATE) + project_mgmt.mbom_status='Y'
· 수정 UPDATE: 기존 mbom_header.objid UPSERT(insert/update/delete) + history(UPDATE)
· POST /api/production/mbom/save (BEGIN/COMMIT/ROLLBACK 트랜잭션)
· MbomDetailDialog: '본 편집' 토글 + 13개 셀 인라인 편집 + 저장/취소 가드
M-BOM 컬럼 폴더 아이콘
· production/mbom/page.tsx: mbom_status 컬럼 → mbom_has(0/1) renderType=folder
· onClick → MbomDetailDialog 오픈 (행 더블클릭도 그대로 유지)
· 운영판 wace 견적/partMng 폴더 아이콘 패턴 1:1
DataGrid 서버 페이지네이션
· props 신설: serverPaging/serverPage/serverPageSize/serverTotalItems
+ onPageChange/onPageSizeChange
· 5메뉴 적용: production/mbom, development/change-list/ebom-regist/part-search/part-regist
· pageSizeOptions=[10,15,20,50,100,200,500] 통일
· 클라이언트 모드 하위호환 유지
bigint=varchar fix (mbom 트리 SQL 4종)
· ATTACH_FILE_INFO 서브쿼리: P.OBJID(bigint) = F.TARGET_OBJID(varchar) → P.OBJID::varchar 캐스트
· EBOM_WORKING_TREE_SQL INNER JOIN: P.OBJID = COALESCE(V.LAST_PART_OBJID,V.PART_NO) → ::varchar 캐스트
· 사용자 보고: 폴더 클릭 시 'operator does not exist: bigint = character varying' 토스트
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
2026-05-14 16:26:20 +09:00 |
|
hjjeong
|
49956f7afa
|
개발관리·생산관리 — 3D/2D/PDF 카운트 컬럼을 폴더 아이콘으로 통일
사용자 보고: "품명/3D 컬럼이 좁아서 겹쳐 보임 + 폴더 모양(파랑/투명)으로 표시해줘"
운영판 wace 견적현황·partMng 폴더 아이콘 패턴 1:1 적용:
- 값 > 0 → 파란 폴더 (fill-[#1a73e8])
- 값 = 0 → 흰색 폴더 (투명 효과, fill-white + muted text)
수정:
- app/(main)/COMPANY_16/development/part-regist/page.tsx — 3D/2D/PDF (60→70px, center, folder)
- app/(main)/COMPANY_16/development/part-search/page.tsx — 3D/2D/PDF (60→70px, center, folder)
- app/(main)/COMPANY_16/development/ebom-search/page.tsx — 3D/2D/PDF (60→70px width 통일)
- components/development/BomReportTreeDialog.tsx — "Y/공백" → FolderCell
- components/production/MbomDetailDialog.tsx — "Y/공백" → FolderCell
sales/{order,sale,revenue}.tsx 의 cu01_cnt 는 "주문서첨부" clip 아이콘이라 별 의미라 미수정.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
2026-05-13 17:40:25 +09:00 |
|
hjjeong
|
dd88dc6e8c
|
생산관리>M-BOM 관리 — PR-A2 단건 상세 + read-only 트리 4분기 (wace mBomPopupLeft.do 1:1)
행 더블클릭 → MbomDetailDialog (헤더 메타 + 동적 LEVEL × 19컬럼 트리 그리드).
운영판 ProductionPlanningController:1113~1276 의 4분기 자동 판별을 백엔드에서 처리:
1) SAVED mbom_header.status='Y' 우선 → getSavedMbomTreeList CTE
2) ASSIGNED_EBOM source_bom_type='EBOM' → partMng.getBOMTreeList(working) CTE
3) ASSIGNED_MBOM source_bom_type='MBOM' → getMbomStructureOnly CTE
4) TEMPLATE Machine 이외 + 동일 part_no → mbom_header 템플릿 CTE
5) NONE 빈 트리
backend:
- mbomService.getDetail (getProjectMgmtDetail 1:1, TOTAL_PROD_QTY = production_plan 우선)
- mbomService.getTree (4분기 orchestrator + 매퍼 4종 CTE 1:1)
- GET /api/production/mbom/detail/:objid
- GET /api/production/mbom/tree/:objid
frontend:
- lib/api/mbom.ts : MbomDetail / MbomTreeRow / MbomBomDataType / getDetail / getTree
- components/production/MbomDetailDialog.tsx (max-w-1600px, 헤더 14필드 + 트리 그리드)
- page.tsx 행 더블클릭 핸들러
검증: O-RING (593315995) SAVED 분기 5행 정상. TOTAL_PROD_QTY production_plan=5 / QUANTITY=2 fallback 확인.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
2026-05-13 16:29:52 +09:00 |
|