json);
$prefix = "CLR";
$counter = get_counter("CLEARANCE");
$clearance_no = "$prefix-" . $counter;
$folderName = $counter;
$fileName = $clearance_no;
$data = j(post("data"));
$weldLogs = apply_welded_filter(
db("weld_logs")->whereIn("id", array_column($data, 'id'))
)->get();
$totalSpoolJoint = [];
$totalJoint = [];
foreach($weldLogs AS $weldLog) {
if(!isset($totalSpoolJoint[$weldLog->iso_number][$weldLog->spool_number]))
$totalSpoolJoint[$weldLog->iso_number][$weldLog->spool_number] = 0;
if(!isset($totalJoint[$weldLog->iso_number]))
$totalJoint[$weldLog->iso_number]= 0;
if($weldLog->type_of_joint == "S") {
$totalSpoolJoint[$weldLog->iso_number][$weldLog->spool_number]++;
$totalJoint[$weldLog->iso_number]++;
}
apply_welded_filter(
db("weld_logs")
->where("iso_number", $weldLog->iso_number)
->where("spool_number", $weldLog->spool_number)
)->update([
"clearance_no" => $clearance_no,
"clearance_date" => simdi(),
]);
}
$k = 1;
$rows = "";
$isometrics = [];
$ste_subcontractor = "";
$contractor = "";
$general_contractor = "";
foreach($weldLogs AS $weldLog) {
if(!in_array($weldLog->iso_number, $isometrics)) {
$isometrics[] = $weldLog->iso_number;
}
$ste_subcontractor = $weldLog->ste_subcontractor;
$general_contractor =$weldLog->general_contractor;
$contractor =$weldLog->contractor;
$weldLog->welding_date = df($weldLog->welding_date);
$row = "
| $k |
{$weldLog->iso_number} |
{$weldLog->spool_number} |
{$weldLog->no_of_the_joint_as_per_as_built_survey} |
{$weldLog->wps_no} |
{$weldLog->welding_date} |
{$weldLog->welder_1} |
{$weldLog->welder_2} |
{$weldLog->outside_diameter_1} |
{$weldLog->wall_thickness_1} |
{$weldLog->ndt_percent} |
{$totalJoint[$weldLog->iso_number]} |
{$totalSpoolJoint[$weldLog->iso_number][$weldLog->spool_number]} |
{$weldLog->vt_report} |
{$weldLog->rt_report} / {$weldLog->ut_report} |
{$weldLog->rt_result} / {$weldLog->ut_result} |
{$weldLog->mt_report} / {$weldLog->pt_report} |
{$weldLog->no_of_pwht_report} |
{$weldLog->pwht_date} |
{$weldLog->ht_report} |
{$weldLog->pmi_report} |
{$weldLog->ferrite_result} |
{$weldLog->remarks} |
";
$rows .= $row;
$k++;
}
$table = "
| No |
Drawing |
Spool No |
Joint no |
WPS no |
Weld Date |
Welder 1 |
Welder 2 |
OD1(mm) |
Thck1(mm) |
%NDT |
Workshop joint quantity
(Line-based) |
Workshop joint quantity
(Spool-based) |
VT Report no |
RT/ UT ReportNo |
RT/ UT Status |
MT/PT Report NO |
PWHT Chart No |
PWHT Date |
HT Report No |
Pmi report |
Ferrite Report |
Remarks |
$rows
";
$document = pdf_html_content($documentInfo->html);
$document = str_replace("{table_content}", $table, $document);
$document = str_replace("{subcontractor}", $ste_subcontractor, $document);
$document = str_replace("{contractor}", $contractor, $document);
$document = str_replace("{third_party}", $ste_subcontractor, $document);
$document = str_replace("{engineering_company}", $general_contractor, $document);
$path = "004_QA/0010_Spool_NDT_Release_Check_List";
$path = "$path/$fileName";
$path2 = "004_QA/0014_Spool_Release_for_Client/$folderName/$fileName";
html_create($path, $document, $j['paper']);
html_create($path2, $document, $j['paper']);
echo url("storage/documents/$path.pdf?" . rand());
$QABasePath = "storage/documents/004_QA";
$clientBasePath = "$QABasePath/0014_Spool_Release_for_Client";
if(postesit("drawing_document", "true")) {
foreach($isometrics AS $isometric) {
$search = glob("storage/documents/001_Drawings/002_Iso/*$isometric*.pdf");
if(isset($search[0])) {
copy($search[0], "$clientBasePath/$folderName/$isometric.pdf");
}
}
}
if(postesit("log_report", "true")) {
foreach($weldLogs AS $weldLog) {
$search = glob("$QABasePath/0000_VT/{$weldLog->vt_report}.pdf");
if(isset($search[0])) {
copy($search[0], "$clientBasePath/$folderName/{$weldLog->vt_report}.pdf");
}
$search = glob("$QABasePath/0001_RT/{$weldLog->rt_report}.pdf");
if(isset($search[0])) {
copy($search[0], "$clientBasePath/$folderName/{$weldLog->rt_report}.pdf");
}
$search = glob("$QABasePath/0002_UT/{$weldLog->ut_report}.pdf");
if(isset($search[0])) {
copy($search[0], "$clientBasePath/$folderName/{$weldLog->ut_report}.pdf");
}
$search = glob("$QABasePath/0003_MT/{$weldLog->mt_report}.pdf");
if(isset($search[0])) {
copy($search[0], "$clientBasePath/$folderName/{$weldLog->mt_report}.pdf");
}
$search = glob("$QABasePath/0004_PT/{$weldLog->pt_report}.pdf");
if(isset($search[0])) {
copy($search[0], "$clientBasePath/$folderName/{$weldLog->pt_report}.pdf");
}
$search = glob("$QABasePath/0005_PMI/{$weldLog->pmi_report}.pdf");
if(isset($search[0])) {
copy($search[0], "$clientBasePath/$folderName/{$weldLog->pmi_report}.pdf");
}
$search = glob("$QABasePath/0006_Ferrite/{$weldLog->ferrite_report}.pdf");
if(isset($search[0])) {
copy($search[0], "$clientBasePath/$folderName/{$weldLog->ferrite_report}.pdf");
}
$search = glob("$QABasePath/0007_PWHT/{$weldLog->no_of_pwht_report}.pdf");
if(isset($search[0])) {
copy($search[0], "$clientBasePath/$folderName/{$weldLog->no_of_pwht_report}.pdf");
}
}
}
?>
@include("admin-ajax.generate-isometric-drawing-list")