Files
lcbp3/specs/99-archives/history/2025-12-25-drawing-admin-panel-implementation.md
admin c90a664f53
All checks were successful
Build and Deploy / deploy (push) Successful in 1m0s
260222:1053 20260222 refactor specs/ #1 03-Data-and-Storage
2026-02-22 10:53:23 +07:00

4.3 KiB

Drawing Module Frontend/Backend Implementation

วันที่: 25 ธันวาคม 2568 (2025-12-25) Session: Drawing Dashboard & Admin Panel UX/UI Implementation


🎯 วัตถุประสงค์

  1. Update Backend entities และ Frontend types ตาม v1.7.0 schema (Drawing Revision)
  2. สร้าง Admin Panel สำหรับจัดการ Drawing Master Data
  3. สร้าง Backend APIs สำหรับ CRUD operations

สิ่งที่ทำเสร็จ

1. Backend Entity Updates (Drawing Revision Schema)

File Changes
shop-drawing-revision.entity.ts เพิ่ม isCurrent, createdBy, updatedBy, User relations
asbuilt-drawing-revision.entity.ts เพิ่ม isCurrent, createdBy, updatedBy, User relations

2. Frontend Type Updates

File Changes
frontend/types/drawing.ts DrawingRevision - เพิ่ม createdBy, updatedBy, update isCurrent type

3. Admin Panel Frontend (6 pages)

Route Description
/admin/drawings Navigation hub
/admin/drawings/contract/volumes Volume CRUD
/admin/drawings/contract/categories Category CRUD
/admin/drawings/contract/sub-categories Sub-category CRUD
/admin/drawings/shop/main-categories Main Category CRUD
/admin/drawings/shop/sub-categories Sub-category CRUD

Service: frontend/lib/services/drawing-master-data.service.ts

4. Backend APIs (Full CRUD)

Controller: backend/src/modules/drawing/drawing-master-data.controller.ts Service: backend/src/modules/drawing/drawing-master-data.service.ts

Endpoint Methods
/api/drawings/master-data/contract/volumes GET, POST, PATCH, DELETE
/api/drawings/master-data/contract/categories GET, POST, PATCH, DELETE
/api/drawings/master-data/contract/sub-categories GET, POST, PATCH, DELETE
/api/drawings/master-data/shop/main-categories GET, POST, PATCH, DELETE
/api/drawings/master-data/shop/sub-categories GET, POST, PATCH, DELETE

5. Admin Dashboard Update

เพิ่ม "Drawing Master Data" link ใน Admin Dashboard (frontend/app/(admin)/admin/page.tsx)


📁 ไฟล์ที่แก้ไข/สร้างใหม่

Backend

  • backend/src/modules/drawing/entities/shop-drawing-revision.entity.ts - Modified
  • backend/src/modules/drawing/entities/asbuilt-drawing-revision.entity.ts - Modified
  • backend/src/modules/drawing/drawing-master-data.controller.ts - Rewritten
  • backend/src/modules/drawing/drawing-master-data.service.ts - Rewritten

Frontend

  • frontend/types/drawing.ts - Modified
  • frontend/lib/services/drawing-master-data.service.ts - NEW
  • frontend/app/(admin)/admin/drawings/page.tsx - NEW
  • frontend/app/(admin)/admin/drawings/contract/volumes/page.tsx - NEW
  • frontend/app/(admin)/admin/drawings/contract/categories/page.tsx - NEW
  • frontend/app/(admin)/admin/drawings/contract/sub-categories/page.tsx - NEW
  • frontend/app/(admin)/admin/drawings/shop/main-categories/page.tsx - NEW
  • frontend/app/(admin)/admin/drawings/shop/sub-categories/page.tsx - NEW
  • frontend/app/(admin)/admin/page.tsx - Modified

Specs

  • specs/09-history/2025-12-25-drawing-revision-schema-update.md - Updated (marked complete)

🔧 Build Status

Component Status
Backend Passed
Frontend Passed

📋 TODO (Phase 2+)

  • Dashboard Drawing UX Enhancements (filters)
  • Contract Drawing: Category-SubCategory mapping UI
  • Shop Drawing: MainCategory-SubCategory linking