Files
WMS/Modules/M3/Http/Controllers/FillBOL2Controller.php
2026-09-22 11:21:09 +01:00

246 lines
8.6 KiB
PHP
Executable File

<?php
namespace Modules\M3\Http\Controllers;
use Illuminate\Http\Request;
use Modules\M3\Services\BillOfLadingService;
class FillBOL2Controller extends Controller
{
protected $bolService;
public function __construct(BillOfLadingService $bolService)
{
$this->bolService = $bolService;
}
public static function index(Request $request)
{
return view('m3::liberty-theme.pages.fillBOL2');
}
public function fillBOL(Request $request)
{
// # $bOL = BOL::findOrFail($request);
$bOL = $request;
$data = $this->bolData($request, $bOL);
try {
$filledPdf = $this->bolService->fillBillOfLading($data);
return response()->download($filledPdf)->deleteFileAfterSend(true);
} catch (\Exception $e) {
return response()->json(['error' => $e->getMessage()], 500);
}
}
private function bolData(Request $request, Request $bOL): array
{
return array_merge(
$this->bolPrimaryData($request, $bOL),
$this->bolRemainingData()
);
}
private function bolPrimaryData(Request $request, Request $bOL): array
{
return [
'bol_number' => $request->input('BOL_number') ?? '1234567890',
'shipper_no' => $request->input('shipper_no') ?? '1234567890',
'date' => now()->format('m/d/Y') ?? '01/01/2000',
'master_bill_no' => 'X',
'master_bill_yes' => $request->input('master_bill_yes') ? 'X' : '',
'master_bill_drops' => $request->input('master_bill_drops') ?? '',
'consignor_name' => $request->input('consignor_name') ?? 'ERICO INTERNATIONAL CORP',
'consignor_address1' => $request->input('consignor_address1') ?? '6800 ARNOLD MILLER PARKWAY',
'consignor_address2' => $request->input('consignor_address2') ?? 'SOLON, OH 44139',
'consignor_address3' => $request->input('consignor_address3') ?? 'USA',
'consignee_name' => $request->input('consignee_name') ?? 'ERICO EUROPE BV',
'consignee_address1' => $request->input('consignee_address1') ?? 'JULES VERNEWEG 75',
'consignee_address2' => $request->input('consignee_address2') ?? '',
'consignee_address3' => $request->input('consignee_address3') ?? 'TILBURG . 5015 BG',
'freight_collect' => 'X',
'carrier_name' => $request->input('carrier_name') ?? 'ICL / Expeditors',
'pieces' => $request->input('pieces') ?? '20',
'line_class' => $request->input('line_class') ?? '50',
'line_weight' => $request->input('line_weight') ?? '8320',
'total_pieces' => $request->input('total_pieces') ?? '20',
'total_line_weight' => $request->input('total_line_weight') ?? '8320',
'description' => $request->input('description') ?? 'Package Description sfdfsdfasdfas dfasdfasdfcasdfvasfa clsdalcdfl
Line 2
Line 3
Line 4
Line 5',
'DTESHIPED.1' => date('d/m/Y'),
'invoice_number' => $bOL['BOL_number'],
'amount_due' => number_format($bOL['amount'], 2),
'TYPEANDESCPTN.1' => 'TOTAL: 20 SKIDS 8320 #',
'TYPEANDESCPTN.10' => 'ROTTERDAM ETA: 11/22',
'TYPEANDESCPTN.13' => 'CONTAINER:',
'TYPEANDESCPTN.2' => 'MECHANICAL / CADDY/ ELECTRICAL',
'TYPEANDESCPTN.4' => 'BOOKING: 150744100',
'TYPEANDESCPTN.5' => 'REFERENCE: 3140028046',
'TYPEANDESCPTN.6' => 'VESSEL: INDEPENDENT HORIZON V. 1023E',
'TYPEANDESCPTN.7' => 'SEAL: 637053',
'TYPEANDESCPTN.9' => 'CHESTER, PA ETD: 11/05',
'BOFLADNGAGYCD' => $bOL['BOL_number'],
'CLASSORATE1' => '50',
'CNMETRKLICNSE' => 'ICL / Expeditors',
'CONSIGTONMADDR' => 'ERICO EUROPE BV JULES VERNEWEG 75 TILBURG . 5015 BG',
'DATE' => date('d/m/Y'),
'FRMNMADDR' => 'ERICO INTERNATIONAL CORP 6800 ARNOLD MILLER PARKWAY SOLON, OH 44139 USA',
'LNITEMWT1' => '8320',
'PARTOFMSTRBILL' => 'No',
'PKGTYPECOUNT1' => '20',
'SHPRNMBR' => '3140028046',
'TOTALWT' => '8320',
'TOTPIECES' => '20',
'ckFREIGHTCOLECT' => 'Yes',
'ckPREPAY' => 'Off',
'DTESHIPED.2' => '',
'LNITEMWT24' => '',
'CLASSORATE24' => '',
'LNITEMCLAS24' => '',
'TYPEANDESCPTN.24' => '',
'PKGTYPECOUNT24' => '',
'LNITEMWT23' => '',
'CLASSORATE23' => '',
'LNITEMCLAS23' => '',
'TYPEANDESCPTN.23' => '',
'PKGTYPECOUNT23' => '',
'LNITEMWT22' => '',
'CLASSORATE22' => '',
'LNITEMCLAS22' => '',
'TYPEANDESCPTN.22' => '',
'PKGTYPECOUNT22' => '',
'LNITEMWT21' => '',
'CLASSORATE21' => '',
'LNITEMCLAS21' => '',
'TYPEANDESCPTN.21' => '',
'PKGTYPECOUNT21' => '',
'LNITEMWT20' => '',
'CLASSORATE20' => '',
'LNITEMCLAS20' => '',
'TYPEANDESCPTN.20' => '',
'PKGTYPECOUNT20' => '',
'LNITEMWT19' => '',
'CLASSORATE19' => '',
'LNITEMCLAS19' => '',
'TYPEANDESCPTN.19' => '',
'PKGTYPECOUNT19' => '',
'LNITEMWT18' => '',
'CLASSORATE18' => '',
'LNITEMCLAS18' => '',
'TYPEANDESCPTN.18' => '',
'PKGTYPECOUNT18' => '',
'LNITEMWT17' => '',
'CLASSORATE17' => '',
'LNITEMCLAS17' => '',
'TYPEANDESCPTN.17' => '',
'PKGTYPECOUNT17' => '',
];
}
private function bolRemainingData(): array
{
return [
'LNITEMWT16' => '',
'CLASSORATE16' => '',
'LNITEMCLAS16' => '',
'TYPEANDESCPTN.16' => '',
'PKGTYPECOUNT16' => '',
'LNITEMWT15' => '',
'CLASSORATE15' => '',
'LNITEMCLAS15' => '',
'TYPEANDESCPTN.15' => '',
'PKGTYPECOUNT15' => '',
'LNITEMWT14' => '',
'CLASSORAT14' => '',
'LNITEMCLAS14' => '',
'TYPEANDESCPTN.14' => '',
'PKGTYPECOUNT14' => '',
'LNITEMWT13' => '',
'CLASSORATE13' => '',
'LNITEMCLAS13' => '',
'PKGTYPECOUNT13' => '',
'LNITEMWT12' => '',
'CLASSORATE12' => '',
'LNITEMCLAS12' => '',
'TYPEANDESCPTN.12' => '',
'PKGTYPECOUNT12' => '',
'LNITEMWT11' => '',
'CLASSORATE11' => '',
'LNITEMCLAS11' => '',
'TYPEANDESCPTN.11' => '',
'PKGTYPECOUNT11' => '',
'LNITEMWT10' => '',
'CLASSORATE10' => '',
'LNITEMCLAS10' => '',
'PKGTYPECOUNT10' => '',
'LNITEMWT9' => '',
'CLASSORATE9' => '',
'LNITEMCLAS8' => '',
'PKGTYPECOUNT9' => '',
'LNITEMWT8' => '',
'CLASSORATE8' => '',
'TYPEANDESCPTN.8' => '',
'PKGTYPECOUNT8' => '',
'LNITEMWT7' => '',
'CLASSORATE7' => '',
'LNITEMCLAS7' => '',
'PKGTYPECOUNT7' => '',
'LNITEMWT6' => '',
'CLASSORATE6' => '',
'LNITEMCLAS6' => '',
'PKGTYPECOUNT6' => '',
'LNITEMWT5' => '',
'CLASSORATE5' => '',
'LNITEMCLAS5' => '',
'PKGTYPECOUNT5' => '',
'LNITEMWT4' => '',
'CLASSORATE4' => '',
'LNITEMCLAS4' => '',
'PKGTYPECOUNT4' => '',
'LNITEMWT3' => '',
'CLASSORATE3' => '',
'LNITEMCLAS3' => '',
'TYPEANDESCPTN.3' => '',
'PKGTYPECOUNT3' => '',
'LNITEMWT2' => '',
'CLASSORATE2' => '',
'LNITEMCLAS2' => '',
'PKGTYPECOUNT2' => '',
'LNITEMCLAS1' => '',
'HAZLNITEMWT3' => '',
'HAZCLASSORATE3' => '',
'HAZLNITEMCLAS3' => '',
'HAZMATERDESL3' => '',
'HAZMATERL3' => '',
'HAZLNITEMWT2' => '',
'HAZCLASSORATE2' => '',
'HAZLNITEMCLAS2' => '',
'HAZMATERDESL2' => '',
'HAZMATERL2' => '',
'HAZLNITEMWT1' => '',
'HAZCLASSORATE1' => '',
'HAZLNITEMCLAS1' => '',
'HAZMATERDESL1' => '',
'HAZMATERL1' => '',
'24HREMGCYRSPNS' => '',
'CARIERFEDEMPID' => '',
'BILLTOADDR' => '',
'NUMDROPS' => '',
];
}
}