Support #26852
กำหนดจำนวนขั้นต่ำการสั่งซื้อสินค้า NPD บน E-Ordering
100%
Description
- Support Case — กำหนดจำนวนขั้นต่ำการสั่งซื้อสินค้า NPD บน E-Ordering
รายงานโดย: Suwaranya Thongchanluk (suwaranya_t@toagroup.com)
วันที่รับแจ้ง: 3 พ.ค. 2568
- ความต้องการ
รบกวนกำหนดจำนวนขั้นต่ำการสั่งซื้อสินค้า NPD บนระบบ E-Ordering เพื่อให้สินค้าสั่งลงกล่องและลงเลทค์
- รายการสินค้าที่ต้องกำหนดจำนวนขั้นต่ำ
| Product Name | Material | Material Description | ขั้นต่ำ |
| --- | --- | --- | --- |
| 9N MGP SKIM COAT | T9N1759899GY00MG | MGP SKIM COAT #GREY 20 KG | 50 |
| 9N MGP SKIM COAT | T9N1759899WH00MG | MGP SKIM COAT #WHITE 20 KG | 50 |
| B4 TOA 110 SKIM COTE SMOOTH | TB417598990110GR | TOA 110 SKIM COAT SMOOTH #GREY 20KG | 50 |
| B4 TOA 110 SKIM COTE SMOOTH | TB417598990110WH | TOA 110 SKIM COAT SMOOTH #WHITE 20KG | 50 |
| 8P TOA PAINT BRUSH | T8P277V5E6000010 | TOA PAINT BRUSH SMOOTH 1" | 48 |
| 8P TOA PAINT BRUSH | T8P277V5M6000015 | TOA PAINT BRUSH SMOOTH 1.5" | 48 |
| 8P TOA PAINT BRUSH | T8P277V5M7000020 | TOA PAINT BRUSH SMOOTH 2" | 48 |
| 8P TOA PAINT BRUSH | T8P277V58A000025 | TOA PAINT BRUSH SMOOTH 2.5" | 48 |
| 8P TOA PAINT BRUSH | T8P277V5S8000030 | TOA PAINT BRUSH SMOOTH 3" | 48 |
| 8P TOA PAINT BRUSH | T8P277V5E7000040 | TOA PAINT BRUSH SMOOTH 4" | 48 |
- หมายเหตุด้านเทคนิค
มี trigger ใน database ที่ทำหน้าที่ override หน่วยขายอยู่แล้ว — ต้องตรวจสอบและเพิ่มรายการ material ใหม่เข้า logic เดิม
- Estimated Effort
0.5 man-day
History
Updated by Bright Phattarapong 10 days ago
- Implementation Plan (SPEC-CR-2026-05-001)
Root Cause: trigger `update_product_num2_to_b_unit` ยังไม่มี material NPD ชุดใหม่
Solution: `CREATE OR REPLACE FUNCTION public.update_product_num2_to_b_unit()` — เพิ่ม 2 ELSIF block:
```
-- CR-2026-05-001: NPD MGP SKIM COAT & TOA 110 SKIM COAT SMOOTH → 50 EA/เลท
ELSIF NEW.material_id IN (
'T9N1759899GY00MG', 'T9N1759899WH00MG',
'TB417598990110GR', 'TB417598990110WH'
) THEN
NEW.num2_to_b_unit := 50;
-- CR-2026-05-001: NPD TOA PAINT BRUSH → 48 EA/กล่อง
ELSIF NEW.material_id IN (
'T8P277V5E6000010', 'T8P277V5M6000015', 'T8P277V5M7000020',
'T8P277V58A000025', 'T8P277V5S8000030', 'T8P277V5E7000040'
) THEN
NEW.num2_to_b_unit := 48;
```
Spec: docs/specs/SPEC-CR-2026-05-001-npd-min-order-qty.md
DB Layer Only — ไม่มีการแก้ไข Backend/Frontend
Updated by Bright Phattarapong 10 days ago
- Status changed from New to Closed
- % Done changed from 0 to 100
ดำเนินการเรียบร้อยแล้ว
- แก้ไข trigger function `update_product_num2_to_b_unit` เพิ่ม 2 ELSIF block สำหรับ NPD 10 material
- รัน initial data script UPDATE `ms_product` backfill ค่า `num2_to_b_unit` และ `web_discount = 'X'` ครบทั้ง 10 รายการ
- ตรวจสอบผลผ่าน verification query แล้ว ค่าถูกต้องทุก row
Spec: SPEC-CR-2026-05-001-npd-min-order-qty.docx