การแก้ไขข้อมูลและลบสินค้า
เนื้อหานี้สำหรับการใช้งาน New Product API ผ่าน /product-masters
เท่านั้น
การแก้ไขข้อมูลสินค้า
Client สามารถแก้ไขข้อมูลสินค้าด้วยการส่ง PUT request ไปยัง path /product-masters/:id
โดยที่ id เป็นหมายเลข id ของ product master
เช่น เดียวกันกับการเรียกดูข้อมูลด้วย id และระบุค่าที่ต้องการใน request body ตามกำหนดเช่นเดียวกันกับ
การสร้างสินค้าใหม่
ทั้งนี้มีกำหนดเพิ่มเติมสำหรับข้อมูลรายละเอียดสินค้าหรือ product-list ซึ่งจะต้องระบุ product list id ให้ถูกต้อง ซึ่งสามารถอ้างอิง format ของ product list ได้ดังนี้
Field | Type | Description |
---|---|---|
id | number | product list id |
unitName | string | หน่วยของสินค้า |
sellPrice | number | ราคาขายของสินค้า |
buyPrice | number | ราคาซื้อของสินค้า |
barcode | string | รหัสบาร์โค้ด |
isMainProduct | boolean | Flag เพื่อระบุว่า product list ดังกล่าวเป็นสินค้าหลัก ใช้ในกรณีของสินค้านับสต็อกแบบแยกหน่วย |
convertRatio | number | สัดส่วนของจำนวนสินค้าในหน่วยหลัก ต่อหน่วยนั้น ๆ หนึ่งหน่วย ใช้ในกรณีของสินค้านับสต็อกแบบแยกหน่วย |
ข้อกำหนดเพิ่มเติมในการส่งข้อมูล
- ต้องระบุ product master id และ product list id ของสินค้าที่จะแก้ไขให้ถูกต้อง
- ไม่สามารถแก้ไขประเภทของสินค้าจากประเภทหนึ่งไปเป็นอีกประเภทหนึ่งได้
- สำหรับการอัพเดตรายการสินค้าของสินค้าประเภทนับสต็อก
- สินค้าหน่วยหลัก (Main product) จะต้องระบุ
id
ของสินค้าเหมือนเดิม โดยสามารถดูid
ได้จาก GET /product-masters/[id] ที่ต้องการอัปเดต] - ทุกรายการสินค้าที่มีหน่วยเดิม ต้องระบุ
id
ของสินค้าเหมือนเดิม - สำหรับสินค้านับสต็อกแบบแยกหน่วย ถ้าต้องการเพิ่มรายการสินค้า ไม่ต้องระบุ
id
- สามารถเปลี่ยนจากสินค้าหน่วยเดียวเป็นสิน ค้าหลายหน่วยได้
- ไม่สามารถเปลี่ยนจากสินค้าหลายหน่วยเป็นสินค้าหน่วยเดียว ยกเว้นสินค้าหลักที่ไม่มีความเคลื่อนไหว
hasMovement = false
และไม่มีข้อมูลการตั้งต้นสินค้าinventorySettings = null
- สินค้าหน่วยหลัก (Main product) ไม่สามารถเปลี่ยนหน่วยหลัก
unitName
ได้ เมื่อสินค้าหลักนั้นมีข้อมูลการตั้งต้นสินค้าinventorySettings
หรือมีความเคลื่อนไหวในรายการสินค้าhasMovement = true
- สินค้าหน่วยย่อย รายการสินค้าที่มีความเคลื่อนไหว
hasMovement = true
- ไม่สามารถเปลี่ยนหน่วย
unitName
และอัตราส่วนระหว่างหน่วยย่อยและหน่วยหลักconvertRatio
- ไม่สามารถนำออกจากสินค้าหลักได้
- ไม่สามารถเปลี่ยนหน่วย
- สินค้าหน่วยหลัก (Main product) จะต้องระบุ
การลบสินค้า
Client สามารถลบสินค้าได้ด้วยการส่ง DELETE request ไปยัง path /product-masters/:id` โดยที่ id เป็นหมายเลข id ของ product master เช่นเดียวกันกับการเรียกดูข้อมูลด้วย id ทั้งนี้สำหรับสินค้าประเภทนับสต็อก หากสินค้านั้นมีความเคลื่อนไหวเกิดขึ้นแล้วจะไม่สามารถลบสินค้านั้นออกจากระบบได้