feat: phase 4 — orders with status workflow, idempotent complete_order RPC, delivery note PDF

This commit is contained in:
sean
2026-08-25 19:10:11 +07:00
parent 002fdce854
commit 029a4a21f8
15 changed files with 1749 additions and 4 deletions
+12
View File
@@ -33,4 +33,16 @@ class CustomerService extends InsForgeTableService
return sprintf('CUST-%04d', ((int) ($matches[1] ?? 0)) + 1);
}
/** @return array<string, string> id => "CUST-0001 — Nama" */
public function optionsForSelect(): array
{
return collect($this->client->listRecords($this->table(), [
'select' => 'id,customer_code,name',
'order' => 'customer_code.asc',
'limit' => 500,
]))
->mapWithKeys(fn (array $row): array => [$row['id'] => trim(($row['customer_code'] ?? '').' — '.($row['name'] ?? ''), ' —')])
->all();
}
}