| UN01 — ผู้ใช้งานและสิทธิ์ (Identity & Access) |
|
|
|
|
| UN01.001 |
Identity – Register & Onboarding |
ลงทะเบียนเจ้าของบริษัท, ยืนยันอีเมล, เชิญผู้ใช้และรับคำเชิญเข้าบริษัทที่ถูกต้อง |
SR03:001, SR08:001 |
app/login/, UserManager.php |
| UN01.002 |
Identity – Login & Role Guard |
เข้าสู่ระบบด้วย Username/Password, ตรวจบทบาทและสิทธิ์แอปพลิเคชันฝั่งเซิร์ฟเวอร์ก่อนเข้าทุกหน้า |
SR03:001, SR04:001, SR07:005 |
app/login/, UserManager.php, app/assets/utils/ |
| UN01.003 |
Identity – Password Recovery / OTP / Session |
ลืมรหัสผ่านผ่านอีเมล, OTP, Hash รหัสผ่าน bcrypt, บล็อก Concurrent Login |
SR03:001, SR01:004, SR07:003 |
PasswordManager.php, PasswordResetManager.php |
| UN01.004 |
Identity – User & App-Access Administration |
เพิ่ม/แก้ไข/ปิดใช้ผู้ใช้, กำหนดบทบาทและสิทธิ์การเข้าถึงแอปพลิเคชัน |
SR03:001, SR08:001 |
app/setting/, UserManager.php |
| UN02 — ตั้งค่าบริษัท (Company Settings) |
|
|
|
|
| UN02.001 |
Company – Profile & System Settings |
แก้ไขข้อมูลบริษัท, โลโก้, ค่าตั้งค่าระบบต่อบริษัท |
SR03:002 |
CompanyProfileManager.php, CompanySettingManager.php |
| UN02.002 |
Company – SMTP & Mail Dispatch |
ตั้งค่า SMTP ต่อบริษัท และส่งอีเมล Onboarding/กู้คืนรหัสผ่าน/แจ้งเตือน |
SR03:002, SR06:004 |
SmtpManager.php |
| UN03 — ข้อมูลหลัก (Master Data) |
|
|
|
|
| UN03.001 |
Master – Warehouse / Storage / Bin |
จัดการคลังสินค้า พื้นที่ และช่องจัดเก็บ พร้อมความจุ |
SR03:003, SR08:002 |
app/inventory/, WarehouseManager.php |
| UN03.002 |
Master – Product & Category |
จัดการหมวดสินค้า สินค้า หน่วยนับ และรูปสินค้า |
SR03:003, SR08:002 |
ProductManager.php |
| UN03.003 |
Master – Contact |
จัดการประเภทผู้ติดต่อ ลูกค้า และผู้ขาย |
SR03:003, SR08:002 |
app/contact/, ContactManager.php |
| UN03.004 |
Master – Warehouse Layer Configuration |
สลับโครงสร้างคลังแบบชั้นเดียว/หลายชั้นต่อบริษัท |
SR03:003 |
CompanySettingManager.php, WarehouseManager.php |
| UN04 — ควบคุมสินค้าคงคลัง (Inventory Control) |
|
|
|
|
| UN04.001 |
ICS – Stock-in |
รับสินค้าเข้าตามสินค้า จำนวน ตำแหน่ง เอกสารอ้างอิง สร้างความเคลื่อนไหวและยอดคงเหลือ |
SR03:004, SR08:003 |
app/ics/, StockManager.php, StockTablesTrait.php |
| UN04.002 |
ICS – Stock-out |
จ่ายสินค้าออกโดยตรวจสิทธิ์และยอดคงเหลือ ปฏิเสธจำนวนเกิน |
SR03:004, SR09:003 |
StockManager.php |
| UN04.003 |
ICS – Stock Transfer |
โอนย้ายระหว่างตำแหน่ง ต้นทาง/ปลายทางผูกเป็นรายการเดียว |
SR03:004 |
StockManager.php |
| UN04.004 |
ICS – Lot / Serial / Expiry |
บันทึกและสอบกลับ Lot, Serial Number, วันหมดอายุ |
SR03:004, SR08:002 |
StockSourceManager.php, md_lot |
| UN04.005 |
ICS – Barcode Label & Scan |
พิมพ์ฉลากบาร์โค้ด SKU/ตำแหน่ง และรับค่าจากเครื่องสแกน |
SR03:004 |
BarcodeManager.php, location_barcode_label.php |
| UN04.006 |
ICS – File Attachment |
แนบและเรียกดูไฟล์ที่อนุญาตในรายการที่รองรับ |
SR03:004 |
FileUploader.php |
| UN05 — ขาย (Sales) |
|
|
|
|
| UN05.001 |
Sales – Quotation |
สร้าง/แก้ไข/อนุมัติใบเสนอราคา และแปลงเป็นใบสั่งขาย |
SR03:005, SR04:002 |
app/order/, QuotationManager.php |
| UN05.002 |
Sales – Sales Order |
สร้างใบสั่งขาย ยืนยัน และตัดสต๊อกตามสถานะ |
SR03:005, SR04:002 |
OrderManager.php |
| UN05.003 |
Sales – Invoice |
ออกใบแจ้งหนี้จากใบสั่งขาย และบันทึก GL |
SR03:005, SR04:002 |
app/revenue/, InvoiceManager.php |
| UN05.004 |
Sales – Return / Credit Note |
รับคืนสินค้าและออกใบลดหนี้ พร้อมปรับสต๊อก/บัญชี |
SR03:005, SR04:002 |
ReturnManager.php |
| UN06 — จัดซื้อ (Purchasing) |
|
|
|
|
| UN06.001 |
Purchasing – Purchase Request |
สร้างและอนุมัติใบขอซื้อ |
SR03:006 |
app/po/, PurchaseRequestManager.php |
| UN06.002 |
Purchasing – Purchase Order |
แปลงใบขอซื้อเป็นใบสั่งซื้อ และติดตามสถานะ |
SR03:006, SR04:002 |
PurchaseOrderManager.php |
| UN06.003 |
Purchasing – Purchase Invoice |
บันทึกใบแจ้งหนี้ซื้อ รับสินค้าเข้า และบันทึก GL |
SR03:006, SR04:002 |
PurchaseOrderManager.php, StockManager.php |
| UN06.004 |
Purchasing – Supplier Return |
คืนสินค้าผู้ขาย พร้อมปรับสต๊อก/บัญชี |
SR03:006, SR04:002 |
SupplierReturnManager.php |
| UN07 — การเงิน (Finance) |
|
|
|
|
| UN07.001 |
Finance – Receipt Billing & Receipt |
วางบิลรับและบันทึกใบเสรจรับเงินผูกกับใบแจ้งหนี้ |
SR03:007, SR04:002 |
app/finance/, ReceiptBillingManager.php, ReceiptManager.php |
| UN07.002 |
Finance – Payment Billing & Payment |
วางบิลจ่ายและบันทึกใบสำคัญจ่ายผูกกับใบแจ้งหนี้ซื้อ |
SR03:007, SR04:002 |
PaymentBillingManager.php, PaymentManager.php |
| UN08 — บัญชี (Accounting) |
|
|
|
|
| UN08.001 |
Accounting – Chart of Accounts / Departments / Formulas |
จัดการผังบัญชี แผนก และสูตรบัญชีอัตโนมัติ |
SR03:008, SR08:002 |
app/accounting/, PostingManager.php |
| UN08.002 |
Accounting – Journal & GL Posting |
บันทึกสมุดรายวันและผ่านรายการ GL แบบสมดุลภายใน Transaction |
SR03:008, SR09:003 |
app/journal/, PostingManager.php |
| UN09 — รายงานและแดชบอร์ด (Reports & Dashboard) |
|
|
|
|
| UN09.001 |
Reports – Dashboard & Aggregates |
แดชบอร์ดคลังสินค้าและบัญชีจากตารางสรุปยอด |
SR03:009, SR05:001, SR05:002 |
app/dashboard/, app/ac_dashboard/, EtlStockManager.php |
| UN09.002 |
Reports – Stock Reports |
ภาพรวมสต๊อก, ความเคลื่อนไหว, ความจุ, สินค้าใกล้หมด, หมดอายุ, Lot |
SR03:009 |
app/reports/, ReportManager.php |
| UN09.003 |
Reports – Financial Reports |
งบทดลอง, งบกำไรขาดทุน, งบดุล, VAT, สมุดรายวัน, ความเคลื่อนไหว GL |
SR03:009 |
ReportManager.php |
| UN09.004 |
Reports – Filter / Print / Export |
กรอง ดู พิมพ์ และส่งออกรายงานตามขอบเขตสิทธิ์ |
SR03:009, SR04:003 |
app/reports/ |
| UN10 — ควบคุมเอกสาร (Document Control) |
|
|
|
|
| UN10.001 |
Document – Numbering |
ออกเลขที่เอกสารตามลำดับที่กำหนด (document_number_sequences) |
SR03:010, SR04:005, SR08:004 |
DocumentNumberManager.php |
| UN10.002 |
Document – Lifecycle & Status |
ควบคุมสถานะเอกสาร ปฏิเสธการเปลี่ยนสถานะที่ไม่ถูกต้อง พร้อม Confirm Dialog และข้อความข้อผิดพลาด |
SR03:010, SR09:001, SR09:002 |
BatchActionManager.php, Manager classes |
| UN10.003 |
Document – Audit Fields & History |
บันทึกผู้สร้าง ผู้แก้ไข วันที่ และประวัติรายการ |
SR03:010, SR09:001 |
td_* tables, td_bin_log |
| UN11 — แจ้งเตือนและงานตามกำหนดเวลา (Notification & Scheduler) |
|
|
|
|
| UN11.001 |
Node – Socket.IO Notification Server |
รับเหตุการณ์จาก PHP ผ่าน Endpoint ที่ป้องกันด้วย Secret และส่งต่อไปยัง Browser ของผู้ใช้ที่เกี่ยวข้อง |
SR03:011, SR04:004, SR06:004, SR06:005 |
nodejs/server.js |
| UN11.002 |
Node – Scheduler (ETL & Alerts) |
สรุปยอดสต๊อก/GL, แจ้งเตือนสินค้าใกล้หมดและใบแจ้งหนี้ค้างชำระ ตามกำหนดเวลา Asia/Bangkok |
SR03:011, SR05:002, SR01:006 |
nodejs/scheduler.js, app/cron/ |
| UN12 — ความปลอดภัยและการแยกข้อมูล (Security & Tenant Scope) |
|
|
|
|
| UN12.001 |
Security – Tenant Scope Guard |
จำกัดทุก Query และ Action ให้อยู่ในบริษัท/คลังที่ผู้ใช้ได้รับอนุญาต |
SR04:001, SR04:003, SR07:002 |
StockTablesTrait.php, Manager classes |
| UN12.002 |
Security – Server-side Validation |
ตรวจสอบข้อมูลนำเข้า, Prepared Statements, Escape Output ป้องกัน SQLi/XSS |
SR07:002, SR07:004 |
Manager classes, app/assets/utils/ |
| UN12.003 |
Security – Operation Lock & Usage Guard |
ล็อกช่วงเวลาผ่านรายการ และจำกัดโควตารายการต่อบริษัท |
SR07:002, SR09:003 |
OperationLockManager.php, UsageGuard.php |
| UN12.004 |
Security – TLS & Secret Configuration |
ค่าตั้งค่า TLS, NODE_EMIT_SECRET และ Secrets ที่สร้างตอนติดตั้ง |
SR07:001, SR01:005 |
docker/php/config.php.template, .env |
| UN13 — ติดตั้งและสำรองข้อมูล (Deployment & Backup) |
|
|
|
|
| UN13.001 |
Deploy – setup.php Schema Installer |
สร้างฐานข้อมูล wms/wms2 และตารางทั้งหมดในขั้นตอนเดียว |
SR01:003, SR08:005, SR06:001 |
setup.php, docker/mariadb/init-wms2.sql |
| UN13.002 |
Deploy – Docker Compose Stack |
Container php-apache, mariadb, node/pm2 พร้อม Entrypoint สร้าง config.php |
SR02:005, SR01:003 |
docker-compose.yml, docker/ |
| UN13.003 |
Deploy – .env Generator |
สร้าง .env และความลับอัตโนมัติ ไม่เก็บใน Git |
SR01:005 |
docker/init-env.sh, .env.example |
| UN13.004 |
Deploy – Backup & Restore |
สำรอง Git 2 Remote, mysqldump รายวัน, ขั้นตอนกู้คืน |
SR01:003 |
Product Operation Guide, backup remote |