V1.6.0: Shipping hinzugefügt, Erlaube Pachscheintermine als Packtermine, Feature: Shipping abgeschlossen kann nun als CheckOut Bedingung genommen werden (vorher: Fertig gepackt)
This commit is contained in:
@@ -62,9 +62,13 @@ foreach ($data_output as $aufgabe) {
|
||||
}
|
||||
echo "<td>";
|
||||
|
||||
|
||||
$i=0;
|
||||
foreach($AufgabeDetail->Responsibles as $bearbeiter){
|
||||
echo $bearbeiter->Name;
|
||||
if($i>0){
|
||||
echo ", ";
|
||||
}
|
||||
$i++;
|
||||
}
|
||||
echo "</td>";
|
||||
echo "<td>" . $aufgabe->Titel . "</td>";
|
||||
|
||||
@@ -68,13 +68,32 @@ foreach ($data_output as $packingjob) {
|
||||
|
||||
$orderdetail_output = json_decode($result)->payload[0];
|
||||
|
||||
// get PackingNote Details
|
||||
$PackingNoteDetailResult = $Epi->requestEpiApi('/v1/packingnote/' . $packingjob->primary_key . '?cl=' . Epirent_Mandant);
|
||||
$PackingNote_data_output = json_decode($PackingNoteDetailResult)->payload[0];
|
||||
|
||||
|
||||
$NachbereitungsTimeDetail;
|
||||
|
||||
foreach ($orderdetail_output->order_schedule as $scheduledetail) {
|
||||
|
||||
if ($scheduledetail->name == Rueckpacken_Zeitvariable) {
|
||||
|
||||
if (UsePackingNoteDateForCheckin) {
|
||||
|
||||
$tempTimeObject = new stdClass();
|
||||
$tempTimeObject->date_end = $PackingNote_data_output->date_redelivery;
|
||||
$tempTimeObject->time_end = $PackingNote_data_output->time_redelivery;
|
||||
print($PackingNote_data_output->time_redelivery);
|
||||
$NachbereitungsTimeDetail = $tempTimeObject;
|
||||
|
||||
} else {
|
||||
if ($scheduledetail->name == Rueckpacken_Zeitvariable) {
|
||||
$NachbereitungsTimeDetail = $scheduledetail;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -112,14 +131,25 @@ foreach ($data_output as $packingjob) {
|
||||
echo "<td>" . $packingjob->event . "</td>";
|
||||
if(!HideCheckOutTimeOnCheckin){
|
||||
if ($NachbereitungsTimeDetail->date_start != null) {
|
||||
echo "<td><small>" . date_format(new \DateTime($packingjob->date_start), 'd.m.Y') . " " . getTimeFromSeconds($packingjob->time_start) . "</small><br><i>" . date_format(new \DateTime($NachbereitungsTimeDetail->date_start), 'd.m.Y') . " " . getTimeFromSeconds($NachbereitungsTimeDetail->time_start) . "</i></td>";
|
||||
} else {
|
||||
echo "<td>";
|
||||
if(!HideDispoTimes){
|
||||
echo "<small>" . date_format(new \DateTime($packingjob->date_start), 'd.m.Y') . " " . getTimeFromSeconds($packingjob->time_start) . "</small><br>";
|
||||
}
|
||||
echo "<i>" . date_format(new \DateTime($NachbereitungsTimeDetail->date_start), 'd.m.Y') . " " . getTimeFromSeconds($NachbereitungsTimeDetail->time_start) . "</i></td>";
|
||||
|
||||
} else if(!HideDispoTimes){
|
||||
echo "<td>" . date_format(new \DateTime($packingjob->date_start), 'd.m.Y') . " " . getTimeFromSeconds($packingjob->time_start) . "</td>";
|
||||
}
|
||||
}
|
||||
if ($NachbereitungsTimeDetail->date_end != null) {
|
||||
echo "<td><small>" . date_format(new \DateTime($packingjob->date_end), 'd.m.Y') . " " . getTimeFromSeconds($packingjob->time_end) . "</small><br><i>" . date_format(new \DateTime($NachbereitungsTimeDetail->date_end), 'd.m.Y') . " " . getTimeFromSeconds($NachbereitungsTimeDetail->time_end) . "</i></td>";
|
||||
} else {
|
||||
echo "<td>";
|
||||
if(!HideDispoTimes){
|
||||
echo "<small>" . date_format(new \DateTime($packingjob->date_end), 'd.m.Y') . " " . getTimeFromSeconds($packingjob->time_end) . "</small><br>";
|
||||
}
|
||||
echo "<i>" . date_format(new \DateTime($NachbereitungsTimeDetail->date_end), 'd.m.Y') . " " . getTimeFromSeconds($NachbereitungsTimeDetail->time_end) . "</i></td>";
|
||||
|
||||
|
||||
} else if(!HideDispoTimes){
|
||||
echo "<td>" . date_format(new \DateTime($packingjob->date_end), 'd.m.Y') . " " . getTimeFromSeconds($packingjob->time_end) . "</td>";
|
||||
}
|
||||
echo "<td>";
|
||||
@@ -136,10 +166,48 @@ foreach ($data_output as $packingjob) {
|
||||
}
|
||||
|
||||
echo ( $packingjob->pieces_sum_total - abs($packingjob->is_all_out) - abs($packingjob->is_all_in)) . "/" . ($packingjob->pieces_sum_total - $packingjob ->is_all_out) . " (" . $packingjob->pieces_sum_total.")";
|
||||
echo "</span><td>";
|
||||
echo "</span></td>";
|
||||
|
||||
if(ShowShippingIcons){
|
||||
|
||||
if(UseShippingStatus){
|
||||
if(($PackingNote_data_output->status==ShippingInOrganizedStatus)||($PackingNote_data_output->status==ShippingOrganizedStatus)){
|
||||
echo "<td style='color:#66FF00; text-align:center;'>";
|
||||
}else{
|
||||
echo "<td style='text-align:center;'>";
|
||||
|
||||
}
|
||||
|
||||
if($PackingNote_data_output->is_self_redeliver){
|
||||
echo '<i class="fa-solid fa-person-walking fa-lg"></i>';
|
||||
} else{
|
||||
if(preg_match('/'.KurierContainsText.'/i',$PackingNote_data_output->shipping_in)){
|
||||
echo '<i class="fa-solid fa-hand-holding-dollar fa-lg"></i>';
|
||||
}
|
||||
if(preg_match('/'.SpeditionContainsText.'/i',$PackingNote_data_output->shipping_in)){
|
||||
echo '<i class="fa-solid fa-truck fa-lg"></i>';
|
||||
}
|
||||
if(preg_match('/'.DHLContainsText.'/i',$PackingNote_data_output->shipping_in)){
|
||||
echo '<i class="fa-brands fa-dhl fa-2xl"></i>';
|
||||
}
|
||||
if(preg_match('/'.LKWContainsText.'/i',$PackingNote_data_output->shipping_in)){
|
||||
echo '<i class="fa-solid fa-industry fa-lg"></i><i class="fa-solid fa-truck fa-lg"></i>';
|
||||
}
|
||||
if(preg_match('/'.TransporterContainsText.'/i',$PackingNote_data_output->shipping_in)){
|
||||
echo '<i class="fa-solid fa-industry fa-lg"></i><i class="fa-solid fa-van-shuttle fa-lg"></i>';
|
||||
}
|
||||
if(preg_match('/'.PKWContainsText.'/i',$PackingNote_data_output->shipping_in)){
|
||||
echo '<i class="fa-solid fa-industry fa-lg"></i><i class="fa-solid fa-car fa-lg"></i>';
|
||||
}
|
||||
}
|
||||
echo "</td>";
|
||||
|
||||
}
|
||||
|
||||
echo "</tr>";
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -154,4 +222,3 @@ function getTimeFromSeconds(string $timestring) {
|
||||
return $timeFormat;
|
||||
}
|
||||
|
||||
?>
|
||||
@@ -22,9 +22,12 @@ $options = new QROptions([
|
||||
|
||||
$Epi = new Epirent();
|
||||
|
||||
if(UseDeliveredForCheckOutCompleted){
|
||||
$result = $Epi->requestEpiApi('/v1/packingnote/open?isco=False&cl=' . Epirent_Mandant);
|
||||
|
||||
}else{
|
||||
$result = $Epi->requestEpiApi('/v1/packingnote/open?isci=False&cl=' . Epirent_Mandant);
|
||||
|
||||
}
|
||||
$data_output = json_decode($result)->payload;
|
||||
|
||||
|
||||
@@ -58,28 +61,53 @@ if (SortCheckOut == 2) {
|
||||
foreach ($data_output as $packingjob) {
|
||||
|
||||
|
||||
$PackingNote_data_output;
|
||||
|
||||
if($packingjob->is_archived != true && UseDeliveredForCheckOutCompleted){
|
||||
$PackingNoteDetailResult = $Epi->requestEpiApi('/v1/packingnote/' . $packingjob->primary_key . '?cl=' . Epirent_Mandant);
|
||||
$PackingNote_data_output = json_decode($PackingNoteDetailResult)->payload[0];
|
||||
}
|
||||
|
||||
if ($packingjob->is_archived != true) {
|
||||
if ($packingjob->is_archived != true && (!UseDeliveredForCheckOutCompleted || ($PackingNote_data_output->date_delivered == "0000-00-00" && $PackingNote_data_output->time_delivered == 0))) {
|
||||
|
||||
//get OrderDetails
|
||||
$result = $Epi->requestEpiApi('/v1/order/' . $packingjob->order_pk . '?cl=' . Epirent_Mandant);
|
||||
|
||||
$orderdetail_output = json_decode($result)->payload[0];
|
||||
|
||||
// get PackingNote Details
|
||||
if(!UseDeliveredForCheckOutCompleted){
|
||||
$PackingNoteDetailResult = $Epi->requestEpiApi('/v1/packingnote/' . $packingjob->primary_key . '?cl=' . Epirent_Mandant);
|
||||
$PackingNote_data_output = json_decode($PackingNoteDetailResult)->payload[0];
|
||||
}
|
||||
$VorbereitungsTimeDetail;
|
||||
|
||||
foreach ($orderdetail_output->order_schedule as $scheduledetail) {
|
||||
|
||||
if ($scheduledetail->name == Vorbereitungs_Zeitvariable) {
|
||||
$VorbereitungsTimeDetail = $scheduledetail;
|
||||
|
||||
if (UsePackingNoteDateForCheckout) {
|
||||
|
||||
$tempTimeObject = new stdClass();
|
||||
$tempTimeObject->date_start = $PackingNote_data_output->date_packing;
|
||||
$tempTimeObject->time_start = $PackingNote_data_output->time_packing;
|
||||
|
||||
$VorbereitungsTimeDetail = $tempTimeObject;
|
||||
} else {
|
||||
if ($scheduledetail->name == Vorbereitungs_Zeitvariable) {
|
||||
$VorbereitungsTimeDetail = $scheduledetail;
|
||||
}
|
||||
}
|
||||
}
|
||||
//End Of get Order Details
|
||||
|
||||
if (CheckOut_UseDispoStartForRowMarking || ($VorbereitungsTimeDetail->date_start == null)) {
|
||||
$date = new DateTime($packingjob->date_start);
|
||||
} else {
|
||||
} else if(UseDeliveredForCheckOutCompleted ){
|
||||
{
|
||||
$date = new DateTime($PackingNote_data_output->date_delivery);
|
||||
|
||||
}
|
||||
}else{
|
||||
$date = new DateTime($VorbereitungsTimeDetail->date_start);
|
||||
}
|
||||
|
||||
@@ -107,17 +135,59 @@ foreach ($data_output as $packingjob) {
|
||||
}
|
||||
echo "<td>" . $packingjob->contact->name . "</td>";
|
||||
echo "<td>" . $packingjob->event . "</td>";
|
||||
|
||||
|
||||
|
||||
if(UseDeliveredForCheckOutCompleted){
|
||||
|
||||
if (CheckOut_UseDispoStartForRowMarking || ($VorbereitungsTimeDetail->date_start == null)) {
|
||||
$date = new DateTime($packingjob->date_start);
|
||||
} else {
|
||||
$date = new DateTime($VorbereitungsTimeDetail->date_start);
|
||||
}
|
||||
|
||||
if ($date == $today) {
|
||||
|
||||
echo "<td class='text-dark bg-warning'>";
|
||||
} else if ($date < $today) {
|
||||
echo "<td class=' bg-danger'>";
|
||||
} else {
|
||||
echo "<td>";
|
||||
}
|
||||
|
||||
}else{
|
||||
|
||||
echo "<td>";
|
||||
|
||||
}
|
||||
|
||||
if ($VorbereitungsTimeDetail->date_start != null) {
|
||||
echo "<td><small>" . date_format(new \DateTime($packingjob->date_start), 'd.m.Y') . " " . getTimeFromSeconds($packingjob->time_start) . "</small><br><i>" . date_format(new \DateTime($VorbereitungsTimeDetail->date_start), 'd.m.Y') . " " . getTimeFromSeconds($VorbereitungsTimeDetail->time_start) . "</i></td>";
|
||||
} else {
|
||||
echo "<td>" . date_format(new \DateTime($packingjob->date_start), 'd.m.Y') . " " . getTimeFromSeconds($packingjob->time_start) . "</td>";
|
||||
}
|
||||
if(!HideCheckInTimeOnCheckout){
|
||||
if (($VorbereitungsTimeDetail->date_end != null)) {
|
||||
echo "<td><small>" . date_format(new \DateTime($packingjob->date_end), 'd.m.Y') . " " . getTimeFromSeconds($packingjob->time_end) . "</small><br><i>" . date_format(new \DateTime($VorbereitungsTimeDetail->date_end), 'd.m.Y') . " " . getTimeFromSeconds($VorbereitungsTimeDetail->time_end) . "</i></td>";
|
||||
} else {
|
||||
echo "<td>" . date_format(new \DateTime($packingjob->date_end), 'd.m.Y') . " " . getTimeFromSeconds($packingjob->time_end) . "</td>";
|
||||
|
||||
if(!HideDispoTimes){
|
||||
echo "<small>".date_format(new \DateTime($packingjob->date_start), 'd.m.Y') . " " . getTimeFromSeconds($packingjob->time_start) . "</small><br>";
|
||||
}
|
||||
echo "<i>" . date_format(new \DateTime($VorbereitungsTimeDetail->date_start), 'd.m.Y') . " " . getTimeFromSeconds($VorbereitungsTimeDetail->time_start) . "</i></td>";
|
||||
|
||||
|
||||
|
||||
} else if(!HideDispoTimes){
|
||||
date_format(new \DateTime($packingjob->date_start), 'd.m.Y') . " " . getTimeFromSeconds($packingjob->time_start) . "</td>";
|
||||
}
|
||||
|
||||
|
||||
|
||||
if (!HideCheckInTimeOnCheckout) {
|
||||
if (($VorbereitungsTimeDetail->date_end != null)) {
|
||||
|
||||
if(!HideDispoTimes){
|
||||
|
||||
echo "<small>" . date_format(new \DateTime($packingjob->date_end), 'd.m.Y') . " " . getTimeFromSeconds($packingjob->time_end) . "</small><br>";
|
||||
}
|
||||
echo "<i>" . date_format(new \DateTime($VorbereitungsTimeDetail->date_end), 'd.m.Y') . " " . getTimeFromSeconds($VorbereitungsTimeDetail->time_end) . "</i></td>";
|
||||
|
||||
} else if(!HideDispoTimes){
|
||||
echo date_format(new \DateTime($packingjob->date_end), 'd.m.Y') . " " . getTimeFromSeconds($packingjob->time_end) . "</td>";
|
||||
}
|
||||
}
|
||||
echo "<td>";
|
||||
|
||||
@@ -132,7 +202,48 @@ foreach ($data_output as $packingjob) {
|
||||
}
|
||||
|
||||
echo ($packingjob->pieces_sum_total - abs($packingjob->is_all_out)) . "/" . $packingjob->pieces_sum_total;
|
||||
echo "</span><td>";
|
||||
echo "</span></td>";
|
||||
|
||||
if(ShowShippingIcons){
|
||||
|
||||
if(UseShippingStatus){
|
||||
if(($PackingNote_data_output->status==ShippingOutOrganizedStatus)||($PackingNote_data_output->status==ShippingOrganizedStatus)){
|
||||
echo "<td style='color:#66FF00; text-align:center;'>";
|
||||
}else{
|
||||
echo "<td style='text-align:center;'>";
|
||||
|
||||
}
|
||||
|
||||
if($PackingNote_data_output->is_self_pickup){
|
||||
echo '<i class="fa-solid fa-person-walking fa-lg"></i>';
|
||||
} else{
|
||||
if(preg_match('/'.KurierContainsText.'/i',$PackingNote_data_output->shipping_out)){
|
||||
echo '<i class="fa-solid fa-hand-holding-dollar fa-lg"></i>';
|
||||
}
|
||||
if(preg_match('/'.SpeditionContainsText.'/i',$PackingNote_data_output->shipping_out)){
|
||||
echo '<i class="fa-solid fa-truck fa-lg"></i>';
|
||||
}
|
||||
if(preg_match('/'.DHLContainsText.'/i',$PackingNote_data_output->shipping_out)){
|
||||
echo '<i class="fa-brands fa-dhl fa-2xl"></i>';
|
||||
}
|
||||
if(preg_match('/'.LKWContainsText.'/i',$PackingNote_data_output->shipping_out)){
|
||||
echo '<i class="fa-solid fa-industry fa-lg"></i><i class="fa-solid fa-truck fa-lg"></i>';
|
||||
}
|
||||
if(preg_match('/'.TransporterContainsText.'/i',$PackingNote_data_output->shipping_out)){
|
||||
echo '<i class="fa-solid fa-industry fa-lg"></i><i class="fa-solid fa-van-shuttle fa-lg"></i>';
|
||||
}
|
||||
if(preg_match('/'.PKWContainsText.'/i',$PackingNote_data_output->shipping_out)){
|
||||
echo '<i class="fa-solid fa-industry fa-lg"></i><i class="fa-solid fa-car fa-lg"></i>';
|
||||
}
|
||||
}
|
||||
echo "</td>";
|
||||
|
||||
}
|
||||
|
||||
echo "</tr>";
|
||||
}
|
||||
|
||||
|
||||
echo "</tr>";
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user