Files
BarangaySystem/.agents/rules/shipment-module.md
2026-06-06 18:43:00 +08:00

24 lines
1.1 KiB
Markdown

---
trigger: always_on
---
# Agent Rule: Building the Shipment Module
When implementing the Shipment Module, adhere to the following planning specifications:
## 🏗️ Data Architecture
- **Primary Model**: `Shipment` (Target File: `app/Models/Market/Shipment.php`)
- **Key Fields**: `hashkey`, `transaction_id`, `store_id`, `customer_id`, `courier_id`, `tracking_number`, `status`.
- **Status Enums**: `PENDING`, `PICKED_UP`, `IN_TRANSIT`, `DELIVERED`, `FAILED`, `RETURNED`.
- **Reference**: Detailed plan at `ai-docs/modules/shipment_module.md`.
## 🛠️ Implementation Requirements
1. **Core Logic**: Implement in `app/Http/Controllers/Market/ShipmentController.php`.
2. **Standard Fields**: Ensure every new table includes `created_by`, `updated_by`, `is_active`, and `hashkey` (300, unique) as per the Project Dictionary.
3. **Frontend**: Use Vue 3 Composition API in `resources/js/Pages/Market/`.
- `ShipmentList.vue` for tracking.
- `ShipmentDetail.vue` for timeline and management.
## 📦 Database Standards
Use migrations to create the `shipments` and `couriers` tables, ensuring foreign key constraints to `global_transactions`, `stores`, and `cst`.