6b60178b1dd8b91a19f0812c151af09f269072ee
Deploy momo-erp / deploy (push) Successful in 51s
[화면 — /m/admin/procurements 전면 개편] - 좌측: 발주서 리스트 (상태 필터, 발주번호, 공급업체, 금액) - 우측: 발주서 양식 (이미지의 표준 발주서 형태) · 분류번호/발주서번호/발주일/공급업체 표 · "1. 물품의 표시" 표 (품명·단위·수량·단가·금액) · "2. 비고" 텍스트 영역 · 합계 자동 계산 - [+ 새 발주] / [발주 요청] 상단 버튼 - 작성중(OPEN) 상태에서만 인라인 편집 가능, 발주요청 후 잠김 [품목 추가 모달] - 검색 + [공급업체 필터(현재/전체)] + [결과 내 검색] - 다중 선택 + 헤더 체크박스로 전체 선택 - 이미 담긴 품목은 '이미' 표시 - 한 번에 N개 일괄 추가 (수량 1, 원가는 품목 마스터의 cost_price) [API 4종 신설] - POST /api/m/procurements/create-empty: 빈 발주서 1건 생성 (proc_no 자동 부여, status=OPEN) - POST /api/m/procurements/lines/save: 라인 추가/수정/삭제 + 합계 재집계 (트랜잭션) · 같은 품목 중복 추가 시 수량 누적 - POST /api/m/procurements/update-header: 공급업체/메모 수정 - POST /api/m/procurements/send: 발주 요청 — status OPEN→REQUESTED + 공급업체 이메일로 발주서 HTML 메일 발송 · 메일 실패해도 상태는 변경 (mailSent/mailError 응답) [매뉴얼] - 다-1 매입 발주 단계별 가이드 재작성 - "공급업체별 품목 일괄 불러오기" 팁 추가 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
FITO — (주)피토 PLM (Next.js)
기존 Java/Spring MVC + JSP + MyBatis 기반 FITO PLM을 Next.js 15 + Node.js로 컨버전한 시스템.
- 원본: /Users/jhj/FITO (Java 7 + Spring 3.2.4 + MyBatis 3.2.3 + JSP)
- DB: 외부 PostgreSQL
211.115.91.141:11140/fito(기존 스키마 그대로 사용) - 이전 이력:
woosung-nextjs에서 피벗. 스냅샷 태그woosung-v1-snapshot.
개발 시작
npm install
npm run dev # http://localhost:3000
환경변수
.env.development의 DB 접속 정보를 확인. 필수 키:
DATABASE_URL— 외부 PostgreSQL 접속NEXTAUTH_SECRET— JWT 서명 키MASTER_PWD— 마스터 비밀번호 (개발 편의용)AES_KEY— 비밀번호 AES 암호화 키 (기존 Java 호환)
배포 표준
- Docker Compose (dev/prod 분리) — 기존 FITO(Java) 배포환경 재사용
- Traefik 리버스 프록시 +
fito.wace.me도메인 (entrypoints: web, websecure / certresolver: le) - 외부 네트워크
toktork_server_default - DB는 외부 서버 공유 (
211.115.91.141:11140/fito) — 컨테이너 내부 DB 없음
start.sh 배포 스크립트 (권장)
# 첫 배포 (서버에서)
cp .env.production.example .env.production
vi .env.production # DATABASE_URL, NEXTAUTH_SECRET, AES_KEY 등 입력
./start.sh prod # git pull → build → 기동 → Traefik 라우팅 확인
# 이후 배포 (git commit 후)
./start.sh prod # 자동 git pull + 재빌드
# 기타 운영
./start.sh logs prod # 실시간 로그
./start.sh restart prod # 재시작 (git pull 포함)
./start.sh stop prod # 중지
./start.sh status prod # 컨테이너 상태
./start.sh build prod # no-cache 재빌드
./start.sh clean prod # 전체 삭제 (확인 필요)
스크립트는 start.sh 자체가 업데이트되면 새 버전으로 자동 재실행하므로 안전합니다.
로컬 개발
./start.sh # docker 기반 (localhost:3643, hot reload)
npm run dev # docker 없이 Node 직접 (localhost:3000)
인프라 정보
- 컨테이너명:
plm-fito-next(prod) /plm-fito-next-dev(dev) - 도메인:
https://fito.wace.me - 내부 포트: 3000 (Traefik이 외부 80/443 → 3000)
- 파일 저장: 호스트
./data_storage(레포 상대경로) ↔ 컨테이너/data_storage - 이미지: Next.js
output: "standalone"기반 multi-stage build
상세 구성은 CLAUDE.md 참고.
Description
Languages
TypeScript
94.6%
HTML
3.4%
JavaScript
1.8%
CSS
0.1%