91 lines
2.3 KiB
PHP
91 lines
2.3 KiB
PHP
<?php
|
|
use App\Models\PunchList;
|
|
use App\Models\TestPackage;
|
|
use App\Models\TestPackBaseStatus;
|
|
|
|
$id = $request['key'];
|
|
|
|
$punchListOne = PunchList::where("id", $id)->first();
|
|
$punchLists = PunchList::where("test_package", $punchListOne->test_package)->get();
|
|
|
|
$punchTotal = [];
|
|
$punchTotalTP = [];
|
|
|
|
|
|
foreach($punchLists AS $punchList) {
|
|
|
|
if(!isset($punchTotal[$punchList->line_isometric_no][$punchList->test_package][$punchList->category])) {
|
|
$punchTotal[$punchList->line_isometric_no][$punchList->test_package][$punchList->category] = 0;
|
|
}
|
|
if(!isset($punchTotalTP[$punchList->test_package][$punchList->category])) {
|
|
$punchTotalTP[$punchList->test_package][$punchList->category] = 0;
|
|
}
|
|
|
|
if($punchList->status == "Open") {
|
|
$punchTotal[$punchList->line_isometric_no][$punchList->test_package][$punchList->category]++;
|
|
}
|
|
|
|
if($punchList->status == "Open") {
|
|
$punchTotalTP[$punchList->test_package][$punchList->category]++;
|
|
}
|
|
|
|
|
|
}
|
|
|
|
$count = 0;
|
|
$count2 = 0;
|
|
|
|
|
|
|
|
foreach($punchTotalTP AS $testPackage => $subData)
|
|
{
|
|
$punchStatus = $punchList->status;
|
|
|
|
if(@$subData['A']>0) {
|
|
$punchStatus = "Open";
|
|
}
|
|
|
|
$updatedCount = TestPackage::where([
|
|
"test_package_number" => $testPackage,
|
|
])->update([
|
|
'a_punch_point_open' => @$subData['A'],
|
|
'b_punch_point_open' => @$subData['B'],
|
|
'c_punch_point_open' => @$subData['C'],
|
|
'punch_list' => $punchList->punch_list_no,
|
|
'punch_status' => $punchStatus,
|
|
'walkdown_date' => $punchList->found_date,
|
|
]);
|
|
|
|
$count2 += $updatedCount;
|
|
}
|
|
|
|
foreach($punchTotal AS $isoNumber => $subData) {
|
|
foreach($subData AS $testPackage => $data) {
|
|
|
|
$updatedCount = TestPackBaseStatus::where([
|
|
"test_package_no" => $testPackage,
|
|
"drawing_no" => $isoNumber,
|
|
])->update([
|
|
'punch_a_quantity' => @$data['A'],
|
|
'punch_status' => $punchList->status,
|
|
'punch_b_quantity' => @$data['B'],
|
|
'punch_c_quantity' => @$data['C'],
|
|
|
|
]);
|
|
|
|
$count += $updatedCount;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
dump("$count Calculated Punch List ==> Test Pack ISO Base Status");
|
|
dump("$count2 Calculated Punch List ==> Test Pack Base Status");
|
|
|
|
|
|
?>
|