M3 Security Fixes for scan command pass 33 major code smell fixes and style fixes

This commit is contained in:
Mark Gregory
2026-09-17 11:34:41 +01:00
parent 0a05f05843
commit 0c445f89af
69 changed files with 1786 additions and 1752 deletions
@@ -17,44 +17,44 @@ class M3GetPDFFromCacheController extends Controller
$parser = new Parser;
$aggno = $aggmsg = '';
$IC670M = $PDFArray = $carrier = $trackingno = $ICM688M1 = [];
$AYMACPKR = $WHDDA = $COMPANY = $PLANT = $WHS = '';
$iC670M = $pDFArray = $carrier = $trackingno = $iCM688M1 = [];
$aYMACPKR = $wHDDA = $cOMPANY = $pLANT = $wHS = '';
// PDF File PATH
$pdfFilePath = Config::get('arrays.PdfPath');
try {
// Initialise Vars
$PDFArray = $trackingno = $carrier = $ICM688M1 = [];
$pDFArray = $trackingno = $carrier = $iCM688M1 = [];
$SHUSER = m3_user() !== '' ? Str::upper(trim(m3_user())) : '';
$sHUSER = m3_user() !== '' ? Str::upper(trim(m3_user())) : '';
if ($SHUSER != '') {
if ($sHUSER != '') {
// Get User CO & WH
// Get user from ICM428M
$ICM428M = DB::connection(config('m3.connection', 'pgsql'))->table('icm428m')
$iCM428M = DB::connection(config('m3.connection', 'pgsql'))->table('icm428m')
->select('R428US', 'R428CO', 'R428WH', 'R428PL')
->where('R428US', '=', $SHUSER)
->where('R428US', '=', $sHUSER)
->first();
$R428US = isset($ICM428M->R428US) ? $ICM428M->R428US : '';
$COMPANY = isset($ICM428M->R428CO) ? $ICM428M->R428CO : ''; // Company
$PLANT = isset($ICM428M->R428PL) ? $ICM428M->R428PL : ''; // Plant
$WHS = isset($ICM428M->R428WH) ? $ICM428M->R428WH : ''; // WareHouse
$r428US = isset($iCM428M->R428US) ? $iCM428M->R428US : '';
$cOMPANY = isset($iCM428M->R428CO) ? $iCM428M->R428CO : ''; // Company
$pLANT = isset($iCM428M->R428PL) ? $iCM428M->R428PL : ''; // Plant
$wHS = isset($iCM428M->R428WH) ? $iCM428M->R428WH : ''; // WareHouse
}
// Warehouse Table
$IC670M = DB::connection(config('m3.connection', 'pgsql'))->table('ic670m')->get();
$iC670M = DB::connection(config('m3.connection', 'pgsql'))->table('ic670m')->get();
// ->where('WDCO',$userCO)->where('WDPL',$userPL)->where('WDWHS',$userWH)
// Get URL PARAMS
$urlParams = count($request->all()) > 0 ? $request->all() : '';
// dump($urlParams);
$AYMACPKR = isset($urlParams['MACPKR']) ? trim($urlParams['MACPKR']) : ''; // Delivery note number
$DOCTYPE = isset($urlParams['DOCTYPE']) ? trim($urlParams['DOCTYPE']) : ''; // Document type (PackingList, CarrierLabel, ContentLabel)
$WHDDA = $COMPANY . $PLANT . $WHS;
$aYMACPKR = isset($urlParams['MACPKR']) ? trim($urlParams['MACPKR']) : ''; // Delivery note number
$dOCTYPE = isset($urlParams['DOCTYPE']) ? trim($urlParams['DOCTYPE']) : ''; // Document type (PackingList, CarrierLabel, ContentLabel)
$wHDDA = $cOMPANY . $pLANT . $wHS;
// Check Doctype fisrt
$docTypes = $DOCTYPE != '' ? [$DOCTYPE] : ['PackingList', 'ContentLabel', 'CarrierLabel', 'GSLabel']; // document type (PackingList, CarrierLabel, ContentLabel)
$docTypes = $dOCTYPE != '' ? [$dOCTYPE] : ['PackingList', 'ContentLabel', 'CarrierLabel', 'GSLabel']; // document type (PackingList, CarrierLabel, ContentLabel)
if ($urlParams != '') {
// dump($urlParams);
@@ -63,108 +63,108 @@ class M3GetPDFFromCacheController extends Controller
// Document type (PackingList, CarrierLabel, ContentLabel)
// Get Aggregation Number if it exists
$ICM695M1Agg = DB::connection(config('m3.connection', 'pgsql'))->table('icm695m1')
$iCM695M1Agg = DB::connection(config('m3.connection', 'pgsql'))->table('icm695m1')
->select('AYTRUCK')
->where('AYCO', $COMPANY)
->where('AYWHS', $WHS)
->where('AYMACPKR', $AYMACPKR)
->where('AYCO', $cOMPANY)
->where('AYWHS', $wHS)
->where('AYMACPKR', $aYMACPKR)
->first();
$aggno = isset($ICM695M1Agg->AYTRUCK) ? trim($ICM695M1Agg->AYTRUCK) : '';
$aggno = isset($iCM695M1Agg->AYTRUCK) ? trim($iCM695M1Agg->AYTRUCK) : '';
if ($aggno != '' && $aggno != '0') {
$aggmsg = "This delivery note is part of aggregation $aggno ";
$ICM688M1 = DB::connection(config('m3.connection', 'pgsql'))->select("select A4MACPKR from ICM688M1 where A4SHPAGGCD='$aggno'");
// foreach($ICM688M1 as $key => $ICM688M1R) {
// $aggmsg.=' <a href="M3GetPDFFromCache?MACPKR='.$ICM688M1R->A4MACPKR.'&COMPANY='.$COMPANY.'&PLANT='.$PLANT.'&WHS='.$WHS.'">'.$ICM688M1R->A4MACPKR.'</a>';
$iCM688M1 = DB::connection(config('m3.connection', 'pgsql'))->select("select A4MACPKR from ICM688M1 where A4SHPAGGCD='$aggno'");
// foreach($iCM688M1 as $key => $ICM688M1R) {
// $aggmsg.=' <a href="M3GetPDFFromCache?MACPKR='.$ICM688M1R->A4MACPKR.'&COMPANY='.$cOMPANY.'&PLANT='.$pLANT.'&WHS='.$wHS.'">'.$ICM688M1R->A4MACPKR.'</a>';
// }
// $aggmsg.=" )";
// 654 add 'AYSPR15A01', 'AYSPR30A01', 'AYTRUCK' carrier and tracking# and agg#
$ICM695M1 = DB::connection(config('m3.connection', 'pgsql'))->table('icm695m1')
$iCM695M1 = DB::connection(config('m3.connection', 'pgsql'))->table('icm695m1')
->select('AYCO', 'AYWHS', 'AYMACPKR', 'AYINTBOX', 'AYSPR15A01', 'AYSPR30A01', 'AYTRUCK')
->distinct()
->where('AYCO', $COMPANY)
->where('AYWHS', $WHS)
// ->where('AYMACPKR',$AYMACPKR)
->where('AYCO', $cOMPANY)
->where('AYWHS', $wHS)
// ->where('AYMACPKR',$aYMACPKR)
->where('AYTRUCK', $aggno)
->orderBy('AYMACPKR')
->get();
} else {
// 654 add 'AYSPR15A01', 'AYSPR30A01', 'AYTRUCK' carrier and tracking# and agg#
$ICM695M1 = DB::connection(config('m3.connection', 'pgsql'))->table('icm695m1')
$iCM695M1 = DB::connection(config('m3.connection', 'pgsql'))->table('icm695m1')
->select('AYCO', 'AYWHS', 'AYMACPKR', 'AYINTBOX', 'AYSPR15A01', 'AYSPR30A01', 'AYTRUCK')
->distinct()
->where('AYCO', $COMPANY)
->where('AYWHS', $WHS)
->where('AYMACPKR', $AYMACPKR)
->where('AYCO', $cOMPANY)
->where('AYWHS', $wHS)
->where('AYMACPKR', $aYMACPKR)
->orderBy('AYMACPKR')
->get();
}
$allLabels = [];
if (count($ICM695M1) > 0) {
if (count($iCM695M1) > 0) {
$tmpCacheArr = $carrier = $trackingno = [];
// Loop the Results from $ICM595M1TMP
foreach ($ICM695M1 as $key => $ICM695M1R) {
$WHS = trim($ICM695M1R->AYWHS);
$COMPANY = trim($ICM695M1R->AYCO);
$AYMACPKR = trim($ICM695M1R->AYMACPKR);
$DOCNUM = trim($ICM695M1R->AYINTBOX);
foreach ($iCM695M1 as $key => $ICM695M1R) {
$wHS = trim($ICM695M1R->AYWHS);
$cOMPANY = trim($ICM695M1R->AYCO);
$aYMACPKR = trim($ICM695M1R->AYMACPKR);
$dOCNUM = trim($ICM695M1R->AYINTBOX);
// 654
$carrier[] = trim($ICM695M1R->AYSPR15A01);
$trackingno[] = trim($ICM695M1R->AYSPR30A01);
$aggno = trim($ICM695M1R->AYTRUCK);
// Make Key and Test Validity
if ($AYMACPKR != '' && $COMPANY != '' && $WHS != '') {
$CarrierLabel = '';
$ContentLabel = '';
$PackingList = '';
if ($aYMACPKR != '' && $cOMPANY != '' && $wHS != '') {
$carrierLabel = '';
$contentLabel = '';
$packingList = '';
$cacheKeyPackingList = $cacheKeyCarrierLabel = $cacheKeyContentLabel = '';
// Get Unique Keys
foreach ($docTypes as $key => $value) {
// Check Parcel vs LTL
if ($value == 'ContentLabel') {
$DOCNUMT = $DOCNUM;
$ContentLabel = ! is_numeric($DOCNUM) ? 'LTL' : '';
$dOCNUMT = $dOCNUM;
$contentLabel = ! is_numeric($dOCNUM) ? 'LTL' : '';
}
if ($value == 'CarrierLabel') {
$DOCNUMT = $DOCNUM;
$dOCNUMT = $dOCNUM;
// Keep Solon Logic to read LTL
$DOCNUMT2 = $ContentLabel == 'LTL' ? $AYMACPKR : $DOCNUM;
if ($DOCNUMT2 != $DOCNUMT) {
$PDFKey2 = $value . '/' . $value . '_' . $AYMACPKR . '_' . $DOCNUMT2 . '_' . $COMPANY . '_' . $WHS;
$tmpCacheArr[] = $PDFKey2;
$dOCNUMT2 = $contentLabel == 'LTL' ? $aYMACPKR : $dOCNUM;
if ($dOCNUMT2 != $dOCNUMT) {
$pDFKey2 = $value . '/' . $value . '_' . $aYMACPKR . '_' . $dOCNUMT2 . '_' . $cOMPANY . '_' . $wHS;
$tmpCacheArr[] = $pDFKey2;
}
}
if ($value == 'PackingList') {
$DOCNUMT = $AYMACPKR;
$dOCNUMT = $aYMACPKR;
}
// Get GS1 Labels
if ($value == 'GSLabel') {
$PDFKey = $value . '/' . $value . '_' . $AYMACPKR . '_' . $COMPANY . '_' . $WHS . '_' . $DOCNUM;
$pDFKey = $value . '/' . $value . '_' . $aYMACPKR . '_' . $cOMPANY . '_' . $wHS . '_' . $dOCNUM;
// $PDFKey = $value.'/'.$value.'_'.$AYMACPKR.'_'.$COMPANY.'_'.$WHS;
// $pDFKey = $value.'/'.$value.'_'.$aYMACPKR.'_'.$cOMPANY.'_'.$wHS;
// }
// else{
// $PDFKey = $value.'/'.$value.'_'.$AYMACPKR.'_'.$COMPANY.'_'.$WHS.'_'.$DOCNUM;
// $pDFKey = $value.'/'.$value.'_'.$aYMACPKR.'_'.$cOMPANY.'_'.$wHS.'_'.$dOCNUM;
// }
} else {
$PDFKey = $value . '/' . $value . '_' . $AYMACPKR . '_' . $DOCNUMT . '_' . $COMPANY . '_' . $WHS;
$pDFKey = $value . '/' . $value . '_' . $aYMACPKR . '_' . $dOCNUMT . '_' . $cOMPANY . '_' . $wHS;
}
$tmpCacheArr[] = $PDFKey;
$tmpCacheArr[] = $pDFKey;
}
}
}
// Get unique values from array $PDFArray
// Get unique values from array $pDFArray
$tmpCacheArr = collect($tmpCacheArr)->unique();
foreach ($tmpCacheArr as $key => $value) {
@@ -175,7 +175,7 @@ class M3GetPDFFromCacheController extends Controller
// Transform content to base64
// $base64PDF = $pdfFile;
$base64PDF = base64_encode($pdfFile);
$PDFArray[] = $base64PDF;
$pDFArray[] = $base64PDF;
}
}
} else {
@@ -184,9 +184,9 @@ class M3GetPDFFromCacheController extends Controller
}
} catch (\Throwable $th) {
}
// dump($AYMACPKR);
// dump($IC670M);
// dump($ICM695M1);
// dump($aYMACPKR);
// dump($iC670M);
// dump($iCM695M1);
return view('m3::liberty-theme.pages.M3GetPDF', compact('IC670M', 'PDFArray', 'AYMACPKR', 'WHDDA', 'aggmsg', 'carrier', 'trackingno', 'ICM688M1', 'COMPANY', 'PLANT', 'WHS'));
// compact('IC670M','ViewTitle')