Files
2026-04-28 21:14:25 +03:00

194 lines
4.9 KiB
PHP

<?php
$data = db($tableName)->where($request['key'])->first();
$whereData = [
'no_of_the_joint_as_per_as_built_survey' => $data->new_joint_no,
'iso_number' => $data->iso_number,
];
$acceptColumns = [
'new_joint_no',
'general_contractor',
'contractor',
'ste_subcontractor',
'project',
'design_area',
'line_specification',
'line_number',
'main_material',
'main_nps',
'fluid_code',
'service_category',
'fluid_group',
'piping_type',
'piping_class',
'design_temperature_s',
'design_pressure_mpa',
'operating_temperature_s',
'operating_pressure_mpa',
'painting_cycle',
'external_finish_type',
'iso_number',
'quantity_of_iso',
'iso_rev',
'spool_number',
'spool_release_date',
'type_of_joint',
'type_of_welds',
'pose_no_1',
'element_code_1',
'member_no_1',
'material_no_1',
'product_standart_1',
'ru_material_group_1',
'certificate_number_of_1',
'heat_number_1',
'nps_1',
'thickness_by_asme_1',
'outside_diameter_1',
'wall_thickness_1',
'pose_no_2',
'element_code_2',
'member_no_2',
'material_no_2',
'product_standart_2',
'ru_material_group_2',
'certificate_number_of_2',
'heat_number_2',
'nps_2',
'thickness_by_asme_2',
'outside_diameter_2',
'wall_thickness_2',
'ndt_percent',
'vt_scope',
'rt_scope',
'ut_scope',
'pt_scope',
'mt_scope',
'pmi_scope',
'pwht',
'ht_scope',
'ferrite_scope',
'test_package_no',
'test_pressure',
'type_of_test',
'ste_subcontructer',
];
$insertData = [];
foreach($data AS $column => $value) {
if(in_array($column, $acceptColumns)) {
if($column == "new_joint_no") $column = 'no_of_the_joint_as_per_as_built_survey';
if($value == "") $value = null;
$insertData[$column] = $value;
}
}
dump($insertData);
db("weld_logs")->updateOrInsert($whereData, $insertData);
$repairLogs = db("repair_logs")
->where("test_package_no", $data->test_package_no)
->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;
if($repairLog->repair_status == "Not Done") {
$repairLogsSummary[$repairLog->iso_number][$repairLog->test_package_no]++;
$repairLogsSummary2[$repairLog->test_package_no]++;
}
if(!rejected_date($repairLog->repair_date) && $repairLog->repair_status == "Done")
{
$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]++;
}
}
$tpNo = $data->test_package_no;
$isoNumber = $data->iso_number;
$updateData = [
'repair_qty' => $repairLogsSummary[$isoNumber][$tpNo],
'repair_completed' => $repairLogsSummaryCompleted[$isoNumber][$tpNo],
'repair_remaining' => $repairLogsSummaryRemaining[$isoNumber][$tpNo],
];
dump($updateData);
db("test_pack_base_statuses")
->where("drawing_no", $data->iso_number)
->where("test_package_no", $data->test_package_no)
->update(
$updateData
);
$updateData = [
'repair_qty' => $repairLogsSummary2[$tpNo],
'repair_completed' => $repairLogsSummaryCompleted2[$tpNo],
'repair_remaining' => $repairLogsSummaryRemaining2[$tpNo],
];
dump($updateData);
db("test_packages")
->where("test_package_number", $data->test_package_no)
->update(
$updateData
);
// Update Cache for NDT Calculation
if (function_exists('dispatchCacheBladeViews')) {
dispatchCacheBladeViews([
[
'view' => 'admin-ajax.ndt-order.order-list-no-cache',
'cache' => 'ndt-order-list'
],
[
'view' => 'admin-ajax.ndt-calculation-no-cache',
'cache' => 'ndt-calculation'
],
[
'view' => 'admin-ajax.repair-log-no-cache',
'cache' => 'repair-log'
]
]);
}
?>