Files
2026-05-13 15:11:24 +07:00

38 lines
1.1 KiB
PHP

<?php
/**
* PostingManager
*
* The ONLY bridge between WMS and the accounting engine.
* WMS API endpoints call methods here — nothing in WMS imports
* accounting classes directly.
*
* Usage in a WMS API endpoint (add at the end, after business doc saves):
* require_once '../../../assets/utils/classes/PostingManager.php';
* (new PostingManager($pdo2, $company_id))->postInvoice($invoice_id);
*
* If posting fails it logs silently — the business document is already saved.
*/
class PostingManager
{
private PDO $pdo;
private int $companyId;
public function __construct(PDO $pdo, int $company_id)
{
$this->pdo = $pdo;
$this->companyId = $company_id;
}
// TODO: postInvoice(int $invoice_id): void
// TODO: voidInvoice(int $invoice_id): void
// TODO: postPurchaseReceive(int $po_id): void
// TODO: voidPurchaseReceive(int $po_id): void
// TODO: postReceipt(int $receipt_id): void
// TODO: voidReceipt(int $receipt_id): void
// TODO: postPayment(int $payment_id): void
// TODO: voidPayment(int $payment_id): void
}