İlk temizlik tamamlandı bir önceki projeden

This commit is contained in:
Ümit Tunç
2026-04-28 21:14:25 +03:00
commit f80443aec0
10000 changed files with 959965 additions and 0 deletions
@@ -0,0 +1,235 @@
<?php
$data = db("supports")->where("id", $request['key'])->first();
$uniqueFields = [
'line' => $data->drawing_no,
'component_code_id' => $data->support_code,
];
$dataToUpdate = [
'project' => $data->zone,
'line' => $data->line_number,
'rev' => $data->rev,
'discipline' => 'Piping Support',
'component_code_id' => $data->support_code,
// 'longdescription' => $data->line_number,
// 'description_en' => $data->line_number,
'description_ru' => $data->erection_materials_name,
'manufacturing_standard' => $data->standart,
'material' => $data->materials,
// 'material_quality_standard' => $data->line_number,
'quantity' => $data->quantity,
'dia_inch_1' => $data->pipe_dia,
'dn_1' => $data->pipe_dia,
'odmm_1' => $data->welded_pad_measure,
// 'schedule_1' => $data->line_number,
'thicknessmm_1' => $data->thickness,
// 'diainch_2' => $data->line_number,
// 'dn_2' => $data->line_number,
// 'odmm_2' => $data->line_number,
// 'schedule_2' => $data->line_number,
// 'thicknessmm_2' => $data->line_number,
// 'pn_mpa' => $data->line_number,
'weight' => $data->unit_weight,
'total_weight' => $data->total_weight,
// 'total_weight' => $data->line_number,
'designer' => $data->designer,
];
echo db('m_t_o_s')->updateOrInsert($uniqueFields, $dataToUpdate);
//dump("save trigger");
dump($dataToUpdate);
// Update or insert into weld_logs table
db("weld_logs")
->where([
'iso_number' => $data->drawing_no,
'element_code_1' => $data->support_code,
])
->update([
'product_standart_1' => $data->standart
]);
db("weld_logs")
->where([
'iso_number' => $data->drawing_no,
'element_code_2' => $data->support_code,
])
->update([
'product_standart_2' => $data->standart
]);
$isoToTP = db("weld_logs")
->where("line_number", $data->line_number)
->select('test_package_no', 'line_number')->pluck('test_package_no', 'line_number');
$supports = db("supports")->where("line_number", $data->line_number)->get();
$supportStats = [];
$supportStatsTP = [];
foreach($supports AS $support)
{
$tpNo = @$isoToTP[$support->line_number];
if(!isset($supportStatsTP[$tpNo]['support_remaining']))
{
$supportStatsTP[$tpNo]['support_remaining'] = 0;
$supportStatsTP[$tpNo]['welded_support_quantity'] = 0;
$supportStatsTP[$tpNo]['support_progress'] = 0;
}
if(!isset($supportStats[$support->line_number]['support_remaining']))
$supportStats[$support->line_number]['support_remaining'] = 0;
if(!isset($supportStats[$support->line_number]['welded_support_quantity']))
$supportStats[$support->line_number]['welded_support_quantity'] = 0;
if(!isset($supportStats[$support->line_number]['support_progress']))
$supportStats[$support->line_number]['support_progress'] = 0;
if($support->erection_type == "Weld")
{
$thisQty = $support->quantity - $support->assembled_su_rt_quanti;
if(!rejected_date($support->weld_or_assembled_date))
{
$supportStats[$support->line_number]['welded_support_quantity']+= $thisQty;
$supportStatsTP[$tpNo]['welded_support_quantity']+= $thisQty;
$supportStats[$support->line_number]['support_remaining']+= $support->assembled_su_rt_quanti;
$supportStatsTP[$tpNo]['support_remaining']+= $support->assembled_su_rt_quanti;
} else {
$supportStats[$support->line_number]['support_remaining']+= $thisQty;
$supportStatsTP[$tpNo]['support_remaining']+= $thisQty;
}
}
if($supportStats[$support->line_number]['welded_support_quantity'] > 0) {
$supportStats[$support->line_number]['support_progress'] =
100 - ($supportStats[$support->line_number]['support_remaining'] * 100) /
($supportStats[$support->line_number]['welded_support_quantity'] + $supportStats[$support->line_number]['support_remaining']);
} else {
$supportStats[$support->line_number]['support_progress'] = 0; // Eğer welded_support_quantity sıfırsa
}
if($supportStatsTP[$tpNo]['welded_support_quantity'] > 0) {
$supportStatsTP[$tpNo]['support_progress'] =
100 - ($supportStatsTP[$tpNo]['support_remaining'] * 100) /
($supportStatsTP[$tpNo]['welded_support_quantity'] + $supportStatsTP[$tpNo]['support_remaining']);
} else {
$supportStatsTP[$tpNo]['support_progress'] = 0; // Eğer welded_support_quantity sıfırsa
}
}
dump($supportStatsTP);
dump($supportStats);
// Repair logs calculation - similar to repair_logs.php
$repairLogs = db("repair_logs")
->whereIn("iso_number", array_keys($supportStats))
->get();
$repairLogsSummary = [];
$repairLogsSummary2 = [];
$repairLogsSummaryCompleted = [];
$repairLogsSummaryCompleted2 = [];
$repairLogsSummaryRemaining = [];
$repairLogsSummaryRemaining2 = [];
foreach($repairLogs AS $repairLog) {
if(!isset($repairLogsSummary[$repairLog->iso_number][$repairLog->test_package_no]))
$repairLogsSummary[$repairLog->iso_number][$repairLog->test_package_no] = 0;
if(!isset($repairLogsSummary2[$repairLog->test_package_no]))
$repairLogsSummary2[$repairLog->test_package_no] = 0;
if(!isset($repairLogsSummaryCompleted[$repairLog->iso_number][$repairLog->test_package_no]))
$repairLogsSummaryCompleted[$repairLog->iso_number][$repairLog->test_package_no] = 0;
if(!isset($repairLogsSummaryRemaining[$repairLog->iso_number][$repairLog->test_package_no]))
$repairLogsSummaryRemaining[$repairLog->iso_number][$repairLog->test_package_no] = 0;
if(!isset($repairLogsSummaryCompleted2[$repairLog->test_package_no]))
$repairLogsSummaryCompleted2[$repairLog->test_package_no] = 0;
if(!isset($repairLogsSummaryRemaining2[$repairLog->test_package_no]))
$repairLogsSummaryRemaining2[$repairLog->test_package_no] = 0;
$repairLogsSummary[$repairLog->iso_number][$repairLog->test_package_no]++;
$repairLogsSummary2[$repairLog->test_package_no]++;
if(!rejected_date($repairLog->repair_date))
{
$repairLogsSummaryCompleted[$repairLog->iso_number][$repairLog->test_package_no]++;
$repairLogsSummaryCompleted2[$repairLog->test_package_no]++;
} else {
$repairLogsSummaryRemaining[$repairLog->iso_number][$repairLog->test_package_no]++;
$repairLogsSummaryRemaining2[$repairLog->test_package_no]++;
}
}
dump("Repair Logs Summary:");
dump($repairLogsSummary);
dump($repairLogsSummaryCompleted);
dump($repairLogsSummaryRemaining);
foreach($supportStats AS $isoNumber => $thisSupportStats)
{
if($isoNumber != "")
{
// Get test package number for this ISO
$tpNo = @$isoToTP[$isoNumber];
// Prepare update data with repair information
$updateData = [
'welded_support_quantity' => $thisSupportStats['welded_support_quantity'],
'support_remaining' => $thisSupportStats['support_remaining'],
'support_progress' => $thisSupportStats['support_progress'],
];
// Add repair data if available
if($tpNo && isset($repairLogsSummary[$isoNumber][$tpNo])) {
$updateData['repair_qty'] = $repairLogsSummary[$isoNumber][$tpNo];
$updateData['repair_completed'] = $repairLogsSummaryCompleted[$isoNumber][$tpNo];
$updateData['repair_remaining'] = $repairLogsSummaryRemaining[$isoNumber][$tpNo];
}
db("test_pack_base_statuses")
->where("drawing_no", $isoNumber)
->update($updateData);
}
}
// Update test packages with repair data as well
foreach($supportStatsTP AS $tpNo => $thisSupportStats)
{
if($tpNo != "")
{
// Prepare update data with repair information
$updateData = [
'welded_support_quantity' => $thisSupportStats['welded_support_quantity'],
'support_remaining' => $thisSupportStats['support_remaining'],
'support_progress' => $thisSupportStats['support_progress'],
];
// Add repair data if available
if(isset($repairLogsSummary2[$tpNo])) {
$updateData['repair_qty'] = $repairLogsSummary2[$tpNo];
$updateData['repair_completed'] = $repairLogsSummaryCompleted2[$tpNo];
$updateData['repair_remaining'] = $repairLogsSummaryRemaining2[$tpNo];
}
db("test_packages")
->where("test_package_number", $tpNo)
->update($updateData);
}
}
?>