Skip to content
GitLab
Erkunden
Anmelden
Registrieren
Primärnavigation
Suchen oder aufrufen …
Projekt
shipping
Verwalten
Aktivität
Mitglieder
Labels
Planen
Tickets
10
Ticketübersichten
Meilensteine
Wiki
Code
Merge Requests
0
Repository
Branch
Commits
Tags
Repository-Diagramm
Revisionen vergleichen
Code-Schnipsel
Build
Pipelines
Aufgaben
Pipeline-Zeitpläne
Artefakte
Bereitstellung
Releases
Betreiben
Umgebungen
Überwachen
Vorfälle
Service-Desk
Analysieren
Wertschöpfungskettenanalyse
Mitwirkenden-Analyse
CI/CD-Analyse
Repository-Analysen
Hilfe
Hilfe
Support
GitLab-Dokumentation
GitLab-Pläne vergleichen
Community-Forum
Zu GitLab beitragen
Feedback geben
Tastenkürzel
?
Code-Schnipsel
Gruppen
Projekte
Show more breadcrumbs
QUIQQER
shipping
Commits
276d2862
Bestätigt
Commit
276d2862
erstellt
vor 2 Jahren
von
Henning Leutz
Dateien durchsuchen
Optionen
Downloads
Patches
Einfaches Diff
fix: consider user default delivery address
Übergeordneter
7c5ab370
No related branches found
Branches enthält Commit
No related tags found
Tags enthält Commit
Keine zugehörigen Merge Requests gefunden
Änderungen
3
Leerzeichenänderungen ausblenden
Inline
Nebeneinander
3 geänderte Dateien
events.xml
+3
-0
3 Ergänzungen, 0 Löschungen
events.xml
src/QUI/ERP/Shipping/EventHandler.php
+55
-12
55 Ergänzungen, 12 Löschungen
src/QUI/ERP/Shipping/EventHandler.php
src/QUI/ERP/Shipping/Order/Shipping.php
+7
-5
7 Ergänzungen, 5 Löschungen
src/QUI/ERP/Shipping/Order/Shipping.php
werden angezeigt
mit
65 Ergänzungen
und
17 Löschungen
events.xml
+
3
−
0
Zeige Datei @
276d2862
...
...
@@ -15,6 +15,9 @@
<event
on=
"onQuiqqerOrderOrderProcessCheckoutOutput"
fire=
"\QUI\ERP\Shipping\EventHandler::onQuiqqerOrderOrderProcessCheckoutOutput"
/>
<event
on=
"onQuiqqerOrderOrderProcessCheckoutOutputBefore"
fire=
"\QUI\ERP\Shipping\EventHandler::onQuiqqerOrderOrderProcessCheckoutOutputBefore"
/>
<event
on=
"onUserSaveBegin"
fire=
"\QUI\ERP\Shipping\EventHandler::onUserSaveBegin"
/>
...
...
This diff is collapsed.
Zum Erweitern klicken.
src/QUI/ERP/Shipping/EventHandler.php
+
55
−
12
Zeige Datei @
276d2862
...
...
@@ -7,10 +7,14 @@
namespace
QUI\ERP\Shipping
;
use
QUI
;
use
QUI\ERP\Products\Handler\Fields
as
ProductFields
;
use
QUI\ERP\Order\Controls\OrderProcess\Checkout
as
OrderCheckoutStepControl
;
use
QUI\Template
;
use
\Quiqqer\Engine\Collector
;
use
QUI\ERP\Products\Handler\Fields
as
ProductFields
;
use
Quiqqer\Engine\Collector
;
use
function
array_merge
;
use
function
explode
;
use
function
json_decode
;
use
function
method_exists
;
/**
* Class EventHandler
...
...
@@ -137,7 +141,7 @@ public static function onQuiqqerOrderBasketToOrderEnd(
$Order
->
getArticles
()
->
calc
();
if
(
\
method_exists
(
$Order
,
'save'
))
{
if
(
method_exists
(
$Order
,
'save'
))
{
$Order
->
save
();
}
}
...
...
@@ -168,7 +172,7 @@ public static function onQuiqqerPaymentCanUsedInOrder(
return
;
}
$payments
=
\
explode
(
','
,
$payments
);
$payments
=
explode
(
','
,
$payments
);
$Payments
=
QUI\ERP\Accounting\Payments\Payments
::
getInstance
();
foreach
(
$payments
as
$paymentId
)
{
...
...
@@ -211,6 +215,42 @@ public static function onOrderProcessCustomerDataEnd(
$Collector
->
append
(
$Control
->
create
());
}
public
static
function
onQuiqqerOrderOrderProcessCheckoutOutputBefore
(
OrderCheckoutStepControl
$Checkout
)
{
if
(
Shipping
::
getInstance
()
->
shippingDisabled
())
{
return
;
}
$Order
=
$Checkout
->
getOrder
();
if
(
!
$Order
)
{
return
;
}
if
(
$Order
->
hasDeliveryAddress
())
{
return
;
}
$SessionUser
=
QUI
::
getUserBySession
();
$Customer
=
$Order
->
getCustomer
();
if
(
$SessionUser
->
getId
()
!==
$Customer
->
getId
())
{
return
;
}
$addressId
=
$SessionUser
->
getAttribute
(
'quiqqer.delivery.address'
);
if
(
$addressId
)
{
try
{
$DeliveryAddress
=
$Customer
->
getAddress
(
$addressId
);
$Order
->
setDeliveryAddress
(
$DeliveryAddress
);
$Order
->
save
(
QUI
::
getUsers
()
->
getSystemUser
());
}
catch
(
\Exception
$Exception
)
{
}
}
}
/**
* quiqqer/order: onQuiqqerOrderOrderProcessCheckoutOutput
*
...
...
@@ -240,13 +280,13 @@ public static function onQuiqqerOrderOrderProcessCheckoutOutput(OrderCheckoutSte
if
(
!
empty
(
$deliveryAddressId
))
{
try
{
$DeliveryAddress
=
$Customer
->
getAddress
(
$deliveryAddressId
);
$ErpDeliveryAddres
=
new
QUI\ERP\Address
(
\
json_decode
(
$DeliveryAddress
->
toJSON
(),
true
),
$DeliveryAddress
=
$Customer
->
getAddress
(
$deliveryAddressId
);
$ErpDeliveryAddres
s
=
new
QUI\ERP\Address
(
json_decode
(
$DeliveryAddress
->
toJSON
(),
true
),
$Order
->
getCustomer
()
);
$Order
->
setDeliveryAddress
(
$ErpDeliveryAddres
);
$Order
->
setDeliveryAddress
(
$ErpDeliveryAddres
s
);
$Order
->
save
(
QUI
::
getUsers
()
->
getSystemUser
());
}
catch
(
\Exception
$Exception
)
{
QUI\System\Log
::
writeException
(
$Exception
);
...
...
@@ -292,7 +332,7 @@ public static function onQuiqqerOrderCustomerDataSave(
}
$ErpAddress
=
new
QUI\ERP\Address
(
\
array_merge
(
$Address
->
getAttributes
(),
[
'id'
=>
$Address
->
getId
()])
array_merge
(
$Address
->
getAttributes
(),
[
'id'
=>
$Address
->
getId
()])
);
$Order
->
setDeliveryAddress
(
$ErpAddress
);
...
...
@@ -345,11 +385,14 @@ public static function onUserSaveBegin(QUI\Users\User $User)
try
{
$Address
=
$User
->
getAddress
(
$address
);
$User
->
setAttribute
(
'quiqqer.delivery.address'
,
$Address
->
getId
());
}
catch
(
QUI\Exception
$Exception
)
{
QUI\System\Log
::
writeDebugException
(
$Exception
);
}
if
(
isset
(
$Address
))
{
QUI\ERP\Utils\User
::
setUserCurrentAddress
(
$User
,
$Address
);
}
}
/**
...
...
@@ -445,7 +488,7 @@ public static function onQuiqqerProductsPriceEnd(Collector $Collector, QUI\ERP\P
}
$Engine
=
QUI
::
getTemplateManager
()
->
getEngine
();
$html
=
$Engine
->
fetch
(
dirname
(
__FILE__
)
.
'/templates/shippingInformation.html'
);
$html
=
$Engine
->
fetch
(
dirname
(
__FILE__
)
.
'/templates/shippingInformation.html'
);
$Collector
->
append
(
$html
);
}
...
...
This diff is collapsed.
Zum Erweitern klicken.
src/QUI/ERP/Shipping/Order/Shipping.php
+
7
−
5
Zeige Datei @
276d2862
...
...
@@ -9,6 +9,8 @@
use
QUI
;
use
QUI\ERP\Shipping\Shipping
as
ShippingHandler
;
use
function
count
;
/**
* Class Shipping
*
...
...
@@ -25,7 +27,7 @@ public function __construct($attributes = [])
{
parent
::
__construct
(
$attributes
);
$this
->
addCSSFile
(
\dirname
(
__FILE__
)
.
'/Shipping.css'
);
$this
->
addCSSFile
(
\dirname
(
__FILE__
)
.
'/Shipping.css'
);
}
/**
...
...
@@ -76,7 +78,7 @@ public function getBody()
$DebugShippingEntry
->
setOrder
(
$Order
);
QUI\ERP\Shipping\Debug
::
enable
();
QUI\ERP\Shipping\Debug
::
addLog
(
'# '
.
$DebugShippingEntry
->
getTitle
());
QUI\ERP\Shipping\Debug
::
addLog
(
'# '
.
$DebugShippingEntry
->
getTitle
());
if
(
$DebugShippingEntry
->
canUsedBy
(
$User
,
$Order
))
{
$DebugShippingEntry
->
isValid
();
...
...
@@ -92,7 +94,7 @@ public function getBody()
QUI\ERP\Shipping\Debug
::
disable
();
$Logger
->
info
(
"
\n\n
"
.
\implode
(
"
\n
"
,
$debugStack
));
$Logger
->
info
(
"
\n\n
"
.
\implode
(
"
\n
"
,
$debugStack
));
$Engine
->
assign
(
'debug'
,
\implode
(
"
\n
"
,
$debugStack
));
}
...
...
@@ -128,7 +130,7 @@ public function getBody()
'shippingList'
=>
$shippingList
]);
return
$Engine
->
fetch
(
\dirname
(
__FILE__
)
.
'/Shipping.html'
);
return
$Engine
->
fetch
(
\dirname
(
__FILE__
)
.
'/Shipping.html'
);
}
/**
...
...
@@ -157,7 +159,7 @@ public function validate()
// if shipping are selectable and no shipping is selected
$shippingList
=
$this
->
getValidShipping
();
if
(
$Shipping
===
null
&&
\
count
(
$shippingList
)
===
1
)
{
if
(
$Shipping
===
null
&&
count
(
$shippingList
)
===
1
)
{
try
{
$Order
->
setShipping
(
$shippingList
[
0
]);
$Order
->
save
();
...
...
This diff is collapsed.
Zum Erweitern klicken.
Vorschau
0%
Wiederholen
oder
Neue Datei anhängen
.
Abbrechen
You are about to add
0
people
to the discussion. Proceed with caution.
Bearbeitung dieser Nachricht zuerst beenden!
Kommentar speichern
Abbrechen
Bitte
registrieren
oder
Anmelden
zum Kommentieren