review code pattern consistency
This commit is contained in:
@@ -12,10 +12,12 @@ $discount = (float)($data['discount'] ?? 0);
|
||||
$shipping_fee = (float)($data['shipping_fee'] ?? 0);
|
||||
|
||||
if (!$request_id) {
|
||||
exit(json_encode(['success' => 0, 'message' => 'Purchase request ID is required.']));
|
||||
$answer['message'] = 'Purchase request ID is required.';
|
||||
exit(json_encode($answer));
|
||||
}
|
||||
if (!$contact_id) {
|
||||
exit(json_encode(['success' => 0, 'message' => 'Supplier (contact_id) is required for the PO.']));
|
||||
$answer['message'] = 'Supplier (contact_id) is required for the PO.';
|
||||
exit(json_encode($answer));
|
||||
}
|
||||
|
||||
$prm = new PurchaseRequestManager($pdo2, $company_id);
|
||||
@@ -23,16 +25,19 @@ $prm = new PurchaseRequestManager($pdo2, $company_id);
|
||||
// Load PR — must be Approved
|
||||
$pr = $prm->getById($request_id);
|
||||
if (!$pr || (int)$pr['status'] !== 2) {
|
||||
exit(json_encode(['success' => 0, 'message' => 'Purchase request not found or not in Approved status.']));
|
||||
$answer['message'] = 'Purchase request not found or not in Approved status.';
|
||||
exit(json_encode($answer));
|
||||
}
|
||||
|
||||
$pr_items = $pr['items'];
|
||||
if (empty($pr_items)) {
|
||||
exit(json_encode(['success' => 0, 'message' => 'Purchase request has no items.']));
|
||||
$answer['message'] = 'Purchase request has no items.';
|
||||
exit(json_encode($answer));
|
||||
}
|
||||
|
||||
if ((float)$pr['total_remaining'] <= 0.000001) {
|
||||
exit(json_encode(['success' => 0, 'message' => 'Purchase request is already fully converted.']));
|
||||
$answer['message'] = 'Purchase request is already fully converted.';
|
||||
exit(json_encode($answer));
|
||||
}
|
||||
|
||||
// Index by item_id for validation
|
||||
@@ -62,7 +67,8 @@ foreach ($convert_items as $ci) {
|
||||
|
||||
if ($qty <= 0) continue;
|
||||
if (!isset($pr_by_id[$item_id])) {
|
||||
exit(json_encode(['success' => 0, 'message' => "Item #{$item_id} not found in this purchase request."]));
|
||||
$answer['message'] = "Item #{$item_id} not found in this purchase request.";
|
||||
exit(json_encode($answer));
|
||||
}
|
||||
|
||||
$pi = $pr_by_id[$item_id];
|
||||
@@ -70,10 +76,8 @@ foreach ($convert_items as $ci) {
|
||||
|
||||
if ($qty - $remaining > 0.000001) {
|
||||
$name = $pi['product_name'] ?: $pi['product_sku'];
|
||||
exit(json_encode([
|
||||
'success' => 0,
|
||||
'message' => "Cannot convert {$qty} for \"{$name}\": only {$remaining} remaining.",
|
||||
]));
|
||||
$answer['message'] = "Cannot convert {$qty} for \"{$name}\": only {$remaining} remaining.";
|
||||
exit(json_encode($answer));
|
||||
}
|
||||
|
||||
$unit_price = (float)$pi['unit_price'];
|
||||
@@ -95,7 +99,8 @@ foreach ($convert_items as $ci) {
|
||||
}
|
||||
|
||||
if (empty($po_items)) {
|
||||
exit(json_encode(['success' => 0, 'message' => 'No valid items to convert.']));
|
||||
$answer['message'] = 'No valid items to convert.';
|
||||
exit(json_encode($answer));
|
||||
}
|
||||
|
||||
$po_data = [
|
||||
|
||||
@@ -10,7 +10,8 @@ if ($id > 0) {
|
||||
$row = $prm->getById($id);
|
||||
if (!$row) {
|
||||
http_response_code(404);
|
||||
exit(json_encode(['success' => 0, 'message' => 'Purchase request not found.']));
|
||||
$answer['message'] = 'Purchase request not found.';
|
||||
exit(json_encode($answer));
|
||||
}
|
||||
$answer['output'] = $row;
|
||||
} else {
|
||||
|
||||
@@ -8,7 +8,8 @@ $id = (int)($data['id'] ?? 0);
|
||||
$action = $data['action_type'] ?? '';
|
||||
|
||||
if (!$id || !$action) {
|
||||
exit(json_encode(['success' => 0, 'message' => 'ID and action are required.']));
|
||||
$answer['message'] = 'ID and action are required.';
|
||||
exit(json_encode($answer));
|
||||
}
|
||||
|
||||
$prm = new PurchaseRequestManager($pdo2, $company_id);
|
||||
|
||||
Reference in New Issue
Block a user