2929use RetailCrm \Response \ApiResponse ;
3030use Intaro \RetailCrm \Component \ConfigProvider ;
3131use Intaro \RetailCrm \Model \Api \Response \OrdersCreateResponse ;
32+ use Intaro \RetailCrm \Model \Api \Response \OrdersEditResponse ;
3233
3334IncludeModuleLangFile (__FILE__ );
3435
@@ -474,9 +475,9 @@ public static function orderSend(
474475 Logger::getInstance ()->write ($ order , 'orderCreate ' );
475476
476477 $ crmBasket = RCrmActions::apiMethod ($ api , 'cartGet ' , __METHOD__ , $ externalId , $ site );
477- $ orderResponse = $ client ->createOrder ($ order , $ site );
478+ $ orderCreateResponse = $ client ->createOrder ($ order , $ site );
478479
479- if ($ orderResponse instanceof OrdersCreateResponse && !$ orderResponse ->success ) {
480+ if ($ orderCreateResponse instanceof OrdersCreateResponse && !$ orderCreateResponse ->success ) {
480481
481482 Logger::getInstance ()->write ([
482483 'methodApi ' => 'orderCreate ' ,
@@ -487,7 +488,7 @@ public static function orderSend(
487488
488489 }
489490
490- if (!empty ($ crmBasket ['cart ' ]) && $ orderResponse instanceof OrdersCreateResponse && !empty ($ orderResponse ->id ) ) {
491+ if (!empty ($ crmBasket ['cart ' ]) && $ orderCreateResponse instanceof OrdersCreateResponse && !empty ($ orderResponse ->id ) ) {
491492 RCrmActions::apiMethod (
492493 $ api ,
493494 'cartClear ' ,
@@ -498,20 +499,31 @@ public static function orderSend(
498499 'externalId ' => $ externalId
499500 ],
500501 'order ' => [
501- 'id ' => $ orderResponse ->id
502+ 'id ' => $ orderCreateResponse ->id
502503 ]
503504 ],
504505 $ site
505506 );
506507 }
507508
508- return $ orderResponse ;
509+ return $ orderCreateResponse ;
509510 }
510511
511512 if ($ methodApi === 'ordersEdit ' ) {
512513 Logger::getInstance ()->write ($ order , 'orderEdit ' );
513514
514- return $ client ->editOrder ($ order , $ site );
515+ $ orderEditResponse = $ client ->editOrder ($ order , $ site );
516+
517+ if ($ orderEditResponse instanceof OrdersEditResponse && !$ orderEditResponse ->success ) {
518+ Logger::getInstance ()->write ([
519+ 'methodApi ' => 'orderEdit ' ,
520+ 'errorMsg ' => $ orderEditResponse ->errorMsg ?? '' ,
521+ 'errors ' => $ orderEditResponse ->errors ?? '' ,
522+ 'params ' => ['number ' => $ order ['number ' ], 'externalId ' => $ order ['externalId ' ]]
523+ ], 'apiErrors ' );
524+ }
525+
526+ return $ orderEditResponse ;
515527 }
516528 }
517529
0 commit comments