ICS modules
This commit is contained in:
@@ -1,93 +1,76 @@
|
||||
<?php
|
||||
session_start();
|
||||
session_start();
|
||||
require '../../../assets/utils/db_auth.php';
|
||||
|
||||
require '../../../assets/utils/db_auth.php';
|
||||
try {
|
||||
dbTransaction($pdo2, function($pdo) use ($data, $company_id, $logging) {
|
||||
|
||||
$id = (int)($data['id'] ?? 0);
|
||||
$id = (int)($data['id'] ?? 0);
|
||||
|
||||
// get existing log
|
||||
$sql = "SELECT `log`
|
||||
FROM md_storage
|
||||
WHERE company_id = :company_id
|
||||
AND id = :id";
|
||||
$sth = $pdo2->prepare($sql);
|
||||
$sth->execute([
|
||||
':company_id' => $company_id,
|
||||
':id' => $id,
|
||||
]);
|
||||
$sql = "SELECT `log` FROM md_storage
|
||||
WHERE company_id = :company_id AND id = :id";
|
||||
$sth = $pdo->prepare($sql);
|
||||
$sth->execute([
|
||||
":company_id" => $company_id,
|
||||
":id" => $id
|
||||
]);
|
||||
|
||||
db_check($sth, $answer);
|
||||
$table_log = json_decode($sth->fetchColumn() ?: '[]', true);
|
||||
if (!is_array($table_log)) $table_log = [];
|
||||
$table_log[] = $logging;
|
||||
|
||||
$row = $sth->fetch(PDO::FETCH_ASSOC);
|
||||
$params = [
|
||||
":company_id" => $company_id,
|
||||
":warehouse" => $data["warehouse"] ?? "",
|
||||
":zone" => $data["zone"] ?? "",
|
||||
":aisle_from" => $data["aisle_from"] ?? "",
|
||||
":aisle_to" => $data["aisle_to"] ?? "",
|
||||
":rack_from" => $data["rack_from"] ?? "",
|
||||
":rack_to" => $data["rack_to"] ?? "",
|
||||
":description" => $data["description"] ?? "",
|
||||
":status" => (int)($data["status"] ?? 1),
|
||||
":log" => json_encode($table_log, JSON_UNESCAPED_UNICODE),
|
||||
];
|
||||
|
||||
$table_log = json_decode($row['log'] ?? '[]', true);
|
||||
if (!is_array($table_log)) $table_log = [];
|
||||
if ($id > 0) {
|
||||
|
||||
// add new log entry (assumes $logging already prepared)
|
||||
$table_log[] = $logging;
|
||||
$sql = "UPDATE md_storage SET
|
||||
warehouse = :warehouse,
|
||||
zone = :zone,
|
||||
aisle_from = :aisle_from,
|
||||
aisle_to = :aisle_to,
|
||||
rack_from = :rack_from,
|
||||
rack_to = :rack_to,
|
||||
description = :description,
|
||||
status = :status,
|
||||
`log` = :log
|
||||
WHERE id = :id AND company_id = :company_id";
|
||||
|
||||
if ($id > 0) {
|
||||
$params[":id"] = $id;
|
||||
|
||||
$sql = "UPDATE md_storage SET
|
||||
warehouse = :warehouse,
|
||||
zone = :zone,
|
||||
aisle_from = :aisle_from,
|
||||
aisle_to = :aisle_to,
|
||||
rack_from = :rack_from,
|
||||
rack_to = :rack_to,
|
||||
description = :description,
|
||||
status = :status,
|
||||
`log` = :log
|
||||
WHERE id = :id
|
||||
AND company_id = :company_id";
|
||||
} else {
|
||||
|
||||
$sth = $pdo2->prepare($sql);
|
||||
$sth->execute([
|
||||
":id" => $id,
|
||||
":company_id" => $company_id,
|
||||
$sql = "INSERT INTO md_storage
|
||||
(company_id, warehouse, zone, aisle_from, aisle_to, rack_from, rack_to, description, status, `log`)
|
||||
VALUES
|
||||
(:company_id, :warehouse, :zone, :aisle_from, :aisle_to, :rack_from, :rack_to, :description, :status, :log)";
|
||||
}
|
||||
|
||||
":warehouse" => $data["warehouse"] ?? "",
|
||||
":zone" => $data["zone"] ?? "",
|
||||
$sth = $pdo->prepare($sql);
|
||||
$sth->execute($params);
|
||||
|
||||
":aisle_from" => $data["aisle_from"] ?? "",
|
||||
":aisle_to" => $data["aisle_to"] ?? "",
|
||||
});
|
||||
|
||||
":rack_from" => $data["rack_from"] ?? "",
|
||||
":rack_to" => $data["rack_to"] ?? "",
|
||||
$answer["success"] = 1;
|
||||
|
||||
":description" => $data["description"] ?? "",
|
||||
":status" => (int)($data["status"] ?? 1),
|
||||
":log" => json_encode($table_log, JSON_UNESCAPED_UNICODE),
|
||||
]);
|
||||
} catch (PDOException $e) {
|
||||
$answer["success"] = 0;
|
||||
$answer["message"] = "Database error, please try again";
|
||||
|
||||
} else {
|
||||
} catch (Exception $e) {
|
||||
$answer["success"] = 0;
|
||||
$answer["message"] = "Something went wrong";
|
||||
}
|
||||
|
||||
$sql = "INSERT INTO md_storage
|
||||
(company_id, warehouse, zone, aisle_from, aisle_to, rack_from, rack_to, description, status, `log`)
|
||||
VALUES
|
||||
(:company_id, :warehouse, :zone, :aisle_from, :aisle_to, :rack_from, :rack_to, :description, :status, :log)";
|
||||
|
||||
$sth = $pdo2->prepare($sql);
|
||||
$sth->execute([
|
||||
":company_id" => $company_id,
|
||||
|
||||
":warehouse" => $data["warehouse"] ?? "",
|
||||
":zone" => $data["zone"] ?? "",
|
||||
|
||||
":aisle_from" => $data["aisle_from"] ?? "",
|
||||
":aisle_to" => $data["aisle_to"] ?? "",
|
||||
|
||||
":rack_from" => $data["rack_from"] ?? "",
|
||||
":rack_to" => $data["rack_to"] ?? "",
|
||||
|
||||
":description" => $data["description"] ?? "",
|
||||
":status" => (int)($data["status"] ?? 1),
|
||||
":log" => json_encode($table_log, JSON_UNESCAPED_UNICODE),
|
||||
]);
|
||||
}
|
||||
|
||||
db_check($sth, $answer);
|
||||
|
||||
$answer["success"] = 1;
|
||||
exit(json_encode($answer));
|
||||
?>
|
||||
exit(json_encode($answer));
|
||||
?>
|
||||
Reference in New Issue
Block a user