67 lines
1.8 KiB
PHP
67 lines
1.8 KiB
PHP
<?php
|
|
function updateTestPackageStatus($testPackage) {
|
|
$status = "Waiting";
|
|
$ndt_status = $testPackage->ndt_status;
|
|
$updateData = [];
|
|
|
|
if (!rejected_date($testPackage->test_package_sent_date)) {
|
|
$status = "Prepairing";
|
|
}
|
|
|
|
if (!rejected_date($testPackage->test_package_approval_date)) {
|
|
$status = "Walkdown";
|
|
}
|
|
|
|
if (!rejected_date($testPackage->walkdown_date)) {
|
|
$status = "Punch";
|
|
}
|
|
|
|
if (in_array($testPackage->a_punch_point_open, [0, ''])) {
|
|
if ($testPackage->welding_status != "Completed") {
|
|
$ndt_status = $testPackage->welding_status;
|
|
$status = "Welding Ongoing";
|
|
} elseif (!in_array($testPackage->repair_remaining, [0, ''])) {
|
|
$status = "Repair Waiting";
|
|
} else {
|
|
$status = "NDT";
|
|
}
|
|
|
|
$updateData['punch_status'] = "Closed";
|
|
if (!rejected_date($testPackage->walkdown_date)) {
|
|
$updateData['punch_status'] = "Waiting Punch";
|
|
}
|
|
} else {
|
|
$updateData['punch_status'] = "Open";
|
|
}
|
|
|
|
if ($ndt_status == "Completed") {
|
|
$status = "Ready for Test";
|
|
}
|
|
|
|
if ($testPackage->test_status == "Accepted") {
|
|
$status = "Ready Cleaning-Blowing";
|
|
}
|
|
|
|
if ($testPackage->cleaning_blowing_drying_status == "Accepted") {
|
|
if (!in_array($testPackage->b_punch_point_open, [0, ''])) {
|
|
if (!in_array($testPackage->c_punch_point_open, [0, ''])) {
|
|
$status = "Ready for Reinstatement";
|
|
} else {
|
|
$status = "C Waiting";
|
|
}
|
|
} else {
|
|
$status = "B Waiting";
|
|
}
|
|
}
|
|
|
|
if ($testPackage->reinstatement_status == "Accepted") {
|
|
$status = "Completed";
|
|
}
|
|
|
|
$updateData['tp_general_status'] = $status;
|
|
$updateData['ndt_status'] = $ndt_status;
|
|
|
|
return $updateData;
|
|
}
|
|
|
|
?>
|