This commit is contained in:
Thanakorn S
2026-04-29 17:04:11 +07:00
parent f6dc9a3278
commit db5c47b6ca
15 changed files with 679 additions and 43 deletions
@@ -0,0 +1,34 @@
<?php
session_start();
require '../../../assets/utils/db_auth.php';
require '../../../assets/utils/classes/ReportManager.php';
$report = new ReportManager($pdo2, $company_id);
$warehouse_id = (int)($data['warehouse_id'] ?? 0);
$items = $report->getExpiredStock($warehouse_id);
$expired = 0;
$critical = 0;
$warning = 0;
$caution = 0;
foreach ($items as $item) {
if ($item['status'] === 'expired') { $expired++; }
if ($item['status'] === 'critical') { $critical++; }
if ($item['status'] === 'warning') { $warning++; }
if ($item['status'] === 'caution') { $caution++; }
}
$answer['output'] = [
'items' => $items,
'expired' => $expired,
'critical' => $critical,
'warning' => $warning,
'caution' => $caution,
];
$answer['success'] = 1;
exit(json_encode($answer));
?>
@@ -0,0 +1,13 @@
<?php
session_start();
require '../../../assets/utils/db_auth.php';
require '../../../assets/utils/classes/ReportManager.php';
$report = new ReportManager($pdo2, $company_id);
$answer['output'] = $report->getLotStockLog(
$data['product_sku'] ?? '',
$data['lot_number'] ?? ''
);
$answer['success'] = 1;
exit(json_encode($answer));
?>
@@ -0,0 +1,16 @@
<?php
session_start();
require '../../../assets/utils/db_auth.php';
require '../../../assets/utils/classes/ReportManager.php';
$report = new ReportManager($pdo2, $company_id);
$result = $report->getProductLots();
$answer['output'] = $result['rows'];
$answer['total'] = $result['total'];
$answer['active'] = $result['active'];
$answer['expired'] = $result['expired'];
$answer['near'] = $result['near'];
$answer['success'] = 1;
exit(json_encode($answer));
?>
@@ -0,0 +1,18 @@
<?php
session_start();
require '../../../assets/utils/db_auth.php';
require '../../../assets/utils/classes/ReportManager.php';
$rack_id = (int)($data['rack_id'] ?? 0);
if (!$rack_id) {
$answer['output'] = [];
$answer['success'] = 1;
exit(json_encode($answer));
}
$report = new ReportManager($pdo2, $company_id);
$answer['output'] = $report->getRackLog($rack_id);
$answer['success'] = 1;
exit(json_encode($answer));
?>
@@ -0,0 +1,16 @@
<?php
session_start();
require '../../../assets/utils/db_auth.php';
require '../../../assets/utils/classes/ReportManager.php';
$report = new ReportManager($pdo2, $company_id);
$total = $report->getTotalCapacity();
$occupied = $report->getSpaceUsed();
$answer['output'] = $report->getRackOccupancy();
$answer['total'] = $total;
$answer['occupied'] = $occupied;
$answer['empty'] = $total - $occupied;
$answer['success'] = 1;
exit(json_encode($answer));
?>
@@ -0,0 +1,23 @@
<?php
session_start();
require '../../../assets/utils/db_auth.php';
require '../../../assets/utils/classes/ReportManager.php';
$data = json_decode($_POST['json'] ?? '{}', true) ?: [];
$warehouse_id = (int)($data['warehouse_id'] ?? 0);
$from_month = $data['from_month'] ?? '';
$to_month = $data['to_month'] ?? '';
if (!$warehouse_id || !$from_month || !$to_month) {
$answer['message'] = 'warehouse_id, from_month, and to_month are required.';
exit(json_encode($answer));
}
if ($from_month > $to_month) [$from_month, $to_month] = [$to_month, $from_month];
$report = new ReportManager($pdo2, $company_id);
$answer['output'] = $report->getStockMovementSummary($warehouse_id, $from_month, $to_month);
$answer['success'] = 1;
exit(json_encode($answer));
?>
@@ -0,0 +1,24 @@
<?php
session_start();
require '../../../assets/utils/db_auth.php';
require '../../../assets/utils/classes/ReportManager.php';
$data = json_decode($_POST['json'] ?? '{}', true) ?: [];
$warehouse_id = (int)($data['warehouse_id'] ?? 0);
$product_sku = trim($data['product_sku'] ?? '');
$from_month = $data['from_month'] ?? '';
$to_month = $data['to_month'] ?? '';
if (!$warehouse_id || !$product_sku || !$from_month || !$to_month) {
$answer['message'] = 'warehouse_id, product_sku, from_month, and to_month are required.';
exit(json_encode($answer));
}
if ($from_month > $to_month) [$from_month, $to_month] = [$to_month, $from_month];
$report = new ReportManager($pdo2, $company_id);
$answer['output'] = $report->getStockMovementBySku($warehouse_id, $product_sku, $from_month, $to_month);
$answer['success'] = 1;
exit(json_encode($answer));
?>