You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
# Init filesystem, used to sync between coop and DBShenker Agency$filesystem = new \League\Flysystem\Filesystem(
new \League\Flysystem\Local\LocalFilesystemAdapter('/tmp')
);
# Init DBShenker options$options = new \Transporter\TransporterOptions(
"CoopX", "362521879",
"DBShenker Agency X", "347569895",
$filesystem, 'coopx'
);
# Generate a sucessfull delivery with 2 POD$reportA = (new \Transporter\Transporters\DBSchenker\Generator\DBSchenkerReportGenerator($options))
->setReference('AABBCC')
->setReceipt('123')
->setSituation(\Transporter\Enum\ReportSituation::POD)
->setReason(\Transporter\Enum\ReportReason::CFM)
->setPod(['https://foo.com/file.png', 'https://foo.com/file2.png']);
# Generate new appoitement for a failed delivery $reportB = (new \Transporter\Transporters\DBSchenker\Generator\DBSchenkerReportGenerator($options))
->setReference('ZZYYXX')
->setReceipt('123')
->setSituation(\Transporter\Enum\ReportSituation::ENE)
->setReason(\Transporter\Enum\ReportReason::NRV)
->setAppointment(newDateTime("05-12-2023 11:30"));
# Generate EDIFACT content$message = (new \Transporter\Transporters\DBSchenker\Generator\DBSchenkerInterchange($options))
->addGenerator($reportA)
->addGenerator($reportB)
->generate();
echo$message;
Sync with DBShenker Agency
Pull from DBShenker
# Init filesystem, used to sync between coop and DBShenker Agency$filesystem = new \League\Flysystem\Filesystem(
new \League\Flysystem\Local\LocalFilesystemAdapter('/tmp')
);
# Init DBShenker options$options = new \Transporter\TransporterOptions(
"CoopX", "362521879",
"DBShenker Agency X", "347569895",
$filesystem, 'coopx'
);
# Init sync class$sync = new \Transporter\Transporters\DBSchenker\DBSchenkerSync($options);
# Pull then parse messages$messages = $sync->pull()
foreach ($messagesas$message) {
$tasks = \Transporter\DBSchenker::parse($message);
# ... do some stuff with $tasks
}
# If everything went fine, flush messages$sync->flush();
Push to DBShenker
# Init filesystem, used to sync between coop and DBShenker Agency$filesystem = new \League\Flysystem\Filesystem(
new \League\Flysystem\Local\LocalFilesystemAdapter('/tmp')
);
# Init DBShenker options$options = new \Transporter\TransporterOptions(
"CoopX", "362521879",
"DBShenker Agency X", "347569895",
$filesystem, 'coopx'
);
# Init sync class$sync = new \Transporter\Transporters\DBSchenker\DBSchenkerSync($options);
# Generate EDIFACT content$message = (new \Transporter\Transporters\DBSchenker\Generator\DBSchenkerInterchange($options))
->addGenerator($reportA)
->addGenerator($reportB)
->generate();
)
# Push message to DBShenker$sync->push($message);