Skip to content

Commit

Permalink
Merge e0ae927 into 5bd582e
Browse files Browse the repository at this point in the history
  • Loading branch information
pyvovarov-s committed Feb 20, 2020
2 parents 5bd582e + e0ae927 commit 5ef6a80
Show file tree
Hide file tree
Showing 18 changed files with 675 additions and 236 deletions.
10 changes: 5 additions & 5 deletions .travis.yml
Expand Up @@ -9,15 +9,15 @@ sudo: required
matrix:
fast_finish: true
include:
- php: 7.1
- php: 7.2
env:
- PRODUCT_NAME=suite
- php: 7.1

- php: 7.2
env:
- PRODUCT_NAME=b2c-demo-shop
- php: 7.1

- php: 7.2
env:
- PRODUCT_NAME=b2b-demo-shop

Expand Down
11 changes: 8 additions & 3 deletions composer.json
Expand Up @@ -7,6 +7,7 @@
}
},
"require": {
"php": ">=7.2",
"amzn/amazon-pay-sdk-php": "^3.0.0",
"spryker/calculation": "^4.0.0",
"spryker/cart": "^5.0.0 || ^7.0.0",
Expand All @@ -19,12 +20,12 @@
"spryker/log": "^3.0.0",
"spryker/messenger": "^3.0.0",
"spryker/money": "^2.0.1",
"spryker/oms": "^7.0.0 || ^8.0.0 || ^10.0.0",
"spryker/oms": "^7.0.0 || ^8.0.0 || ^10.0.0 || ^11.0.0",
"spryker/propel-orm": "^1.0.0",
"spryker/quote": "^1.0.0 || ^2.0.0",
"spryker/refund": "^5.0.0",
"spryker/sales": "^8.0.0 || ^10.0.0 || ^11.0.0",
"spryker/shipment": "^6.0.0 || ^7.0.0",
"spryker/shipment": "^6.0.0 || ^7.0.0 || ^8.0.0",
"spryker/symfony": "^3.0.0",
"spryker/util-encoding": "^2.0.1",
"spryker/zed-request": "^3.0.0"
Expand All @@ -35,12 +36,16 @@
"prefer-stable": true,
"extra": {
"branch-alias": {
"dev-master": "1.0.x-dev"
"dev-master": "3.0.x-dev"
}
},
"config": {
"sort-packages": true
},
"scripts": {
"cs-check": "phpcs --standard=vendor/spryker/code-sniffer/SprykerStrict/ruleset.xml -p src/ tests/",
"cs-fix": "phpcbf --standard=vendor/spryker/code-sniffer/SprykerStrict/ruleset.xml -p src/ tests/"
},
"require-dev": {
"spryker-shop/checkout-page": "*",
"spryker-shop/checkout-widget": "*",
Expand Down
3 changes: 3 additions & 0 deletions phpstan.json
@@ -0,0 +1,3 @@
{
"defaultLevel": 2
}
6 changes: 6 additions & 0 deletions phpstan.neon
@@ -0,0 +1,6 @@
parameters:
bootstrap: %rootDir%/../../../phpstan-bootstrap.php
ignoreErrors:
- '#Call to an undefined method Spryker\\Service\\Container\\ContainerInterface::url\(\).#'
- '#Call to an undefined method Spryker\\Service\\Container\\ContainerInterface::path\(\).#'

117 changes: 62 additions & 55 deletions src/SprykerEco/Shared/AmazonPay/Transfer/amazonpay.transfer.xml
Expand Up @@ -8,8 +8,8 @@
</transfer>

<transfer name="Order">
<property name="idSalesOrder" type="int" />
<property name="AmazonpayOrderInfo" type="AmazonpayOrderInfo" />
<property name="idSalesOrder" type="int"/>
<property name="AmazonpayOrderInfo" type="AmazonpayOrderInfo"/>
</transfer>

<transfer name="AmazonpayOrderInfo">
Expand All @@ -18,7 +18,7 @@
</transfer>

<transfer name="AmazonpayPayment">
<property name="fkSalesOrder" type="int" />
<property name="fkSalesOrder" type="int"/>
<property name="orderReferenceId" type="string"/>
<property name="sellerOrderId" type="string"/>
<property name="addressConsentToken" type="string"/>
Expand All @@ -36,7 +36,6 @@
</transfer>

<transfer name="AmazonpayResponse">
<property name="shippingAddress" type="Address"/>
<property name="shippingAddress" type="Address"/>
<property name="billingAddress" type="Address"/>
<property name="customer" type="Customer"/>
Expand All @@ -45,7 +44,7 @@
<property name="responseHeader" type="AmazonpayResponseHeader"/>
<property name="orderReferenceStatus" type="AmazonpayStatus"/>
<property name="authorizationDetails" type="AmazonpayAuthorizationDetails"/>
<property name="captureDetails" type="AmazonpayCaptureDetails" />
<property name="captureDetails" type="AmazonpayCaptureDetails"/>
<property name="refundDetails" type="AmazonpayRefundDetails"/>
</transfer>

Expand All @@ -55,13 +54,13 @@
</transfer>

<transfer name="AmazonpayResponseHeader">
<property name="statusCode" type="int" />
<property name="isSuccess" type="bool" />
<property name="isInvalidPaymentMethod" type="bool" />
<property name="requestId" type="string" />
<property name="constraints" type="AmazonpayResponseConstraint[]" singular="constraint" />
<property name="errorCode" type="string" />
<property name="errorMessage" type="string" />
<property name="statusCode" type="int"/>
<property name="isSuccess" type="bool"/>
<property name="isInvalidPaymentMethod" type="bool"/>
<property name="requestId" type="string"/>
<property name="constraints" type="AmazonpayResponseConstraint[]" singular="constraint"/>
<property name="errorCode" type="string"/>
<property name="errorMessage" type="string"/>
</transfer>

<transfer name="AmazonpayPrice">
Expand Down Expand Up @@ -92,78 +91,86 @@
</transfer>

<transfer name="AmazonpayAuthorizationDetails">
<property name="authorizationBillingAddress" type="Address" />
<property name="amazonAuthorizationId" type="string" />
<property name="authorizationReferenceId" type="string" />
<property name="sellerAuthorizationNote" type="string" />
<property name="authorizationAmount" type="AmazonpayPrice" />
<property name="capturedAmount" type="AmazonpayPrice" />
<property name="authorizationFee" type="AmazonpayPrice" />
<property name="idList" type="string" />
<property name="authorizationBillingAddress" type="Address"/>
<property name="amazonAuthorizationId" type="string"/>
<property name="authorizationReferenceId" type="string"/>
<property name="sellerAuthorizationNote" type="string"/>
<property name="authorizationAmount" type="AmazonpayPrice"/>
<property name="capturedAmount" type="AmazonpayPrice"/>
<property name="authorizationFee" type="AmazonpayPrice"/>
<property name="idList" type="string"/>
<property name="creationTimestamp" type="string"/>
<property name="expirationTimestamp" type="string"/>
<property name="authorizationStatus" type="AmazonpayStatus" />
<property name="softDecline" type="bool" />
<property name="captureNow" type="bool" />
<property name="softDescriptor" type="string" />
<property name="releaseEnvironment" type="string" />
<property name="authorizationStatus" type="AmazonpayStatus"/>
<property name="softDecline" type="bool"/>
<property name="captureNow" type="bool"/>
<property name="softDescriptor" type="string"/>
<property name="releaseEnvironment" type="string"/>
</transfer>

<transfer name="AmazonpayCaptureDetails">
<property name="amazonCaptureId" type="string" />
<property name="captureReferenceId" type="string" />
<property name="sellerCaptureNote" type="string" />
<property name="captureAmount" type="AmazonpayPrice" />
<property name="refundedAmount" type="AmazonpayPrice" />
<property name="captureFee" type="AmazonpayPrice" />
<property name="idList" type="string" />
<property name="amazonCaptureId" type="string"/>
<property name="captureReferenceId" type="string"/>
<property name="sellerCaptureNote" type="string"/>
<property name="captureAmount" type="AmazonpayPrice"/>
<property name="refundedAmount" type="AmazonpayPrice"/>
<property name="captureFee" type="AmazonpayPrice"/>
<property name="idList" type="string"/>
<property name="creationTimestamp" type="string"/>
<property name="captureStatus" type="AmazonpayStatus" />
<property name="softDescriptor" type="string" />
<property name="captureStatus" type="AmazonpayStatus"/>
<property name="softDescriptor" type="string"/>
</transfer>

<transfer name="AmazonpayRefundDetails">
<property name="AmazonRefundId" type="string"/>
<property name="RefundReferenceId" type="string"/>
<property name="RefundAmount" type="AmazonpayPrice"/>
<property name="SellerRefundNote" type="string"/>
<property name="refundStatus" type="AmazonpayStatus" />
<property name="refundStatus" type="AmazonpayStatus"/>
</transfer>

<transfer name="AmazonpayIpnRequestMessage">
<property name="NotificationReferenceId" type="string"/>
<property name="NotificationType" type="string"/>
<property name="SellerId" type="string" />
<property name="ReleaseEnvironment" type="string" />
<property name="Type" type="string" />
<property name="MessageId" type="string" />
<property name="TopicArn" type="string" />
<property name="SellerId" type="string"/>
<property name="ReleaseEnvironment" type="string"/>
<property name="Type" type="string"/>
<property name="MessageId" type="string"/>
<property name="TopicArn" type="string"/>
</transfer>

<transfer name="AmazonpayIpnPaymentRequest">
<property name="message" type="AmazonpayIpnRequestMessage" />
<property name="rawMessage" type="string" />
<property name="amazonOrderReferenceId" type="string" />
<property name="orderReferenceStatus" type="AmazonpayStatus" />
<property name="authorizationDetails" type="AmazonpayAuthorizationDetails" />
<property name="captureDetails" type="AmazonpayCaptureDetails" />
<property name="refundDetails" type="AmazonpayRefundDetails" />
<property name="message" type="AmazonpayIpnRequestMessage"/>
<property name="rawMessage" type="string"/>
<property name="amazonOrderReferenceId" type="string"/>
<property name="orderReferenceStatus" type="AmazonpayStatus"/>
<property name="authorizationDetails" type="AmazonpayAuthorizationDetails"/>
<property name="captureDetails" type="AmazonpayCaptureDetails"/>
<property name="refundDetails" type="AmazonpayRefundDetails"/>
</transfer>

<transfer name="AmazonpayCall">
<property name="AmazonpayPayment" type="AmazonpayPayment" />
<property name="RequestedAmount" type="int" />
<property name="ShippingAddress" type="Address" />
<property name="BillingAddress" type="Address" />
<property name="BillingSameAsShipping" type="bool" />
<property name="OrderReference" type="string" />
<property name="Email" type="string" />
<property name="AmazonpayPayment" type="AmazonpayPayment"/>
<property name="RequestedAmount" type="int"/>
<property name="ShippingAddress" type="Address"/>
<property name="BillingAddress" type="Address"/>
<property name="BillingSameAsShipping" type="bool"/>
<property name="OrderReference" type="string"/>
<property name="Email" type="string"/>
<property name="Items" type="Item[]" singular="Item"/>
</transfer>

<transfer name="AmazonpaySalesOrderItemGroup">
<property name="AmazonpayPayment" type="AmazonpayPayment" />
<property name="AmazonpayPayment" type="AmazonpayPayment"/>
<property name="Items" type="Item[]" singular="Item"/>
</transfer>

<transfer name="Item">
<property name="shipment" type="Shipment"/>
</transfer>

<transfer name="Shipment">
<property name="method" type="ShipmentMethod"/>
</transfer>

</transfers>
Expand Up @@ -200,6 +200,12 @@ protected function executeShipmentMethodsAction(Request $request)

$quoteTransfer = $this->getClient()
->addSelectedAddressToQuote($quoteTransfer);

foreach ($quoteTransfer->getItems() as $item)
{
$item->setShipment($quoteTransfer->getShipment());
}

$this->saveQuote($quoteTransfer);
$shipmentMethods = $this->getFactory()
->getShipmentClient()
Expand Down
Expand Up @@ -31,6 +31,20 @@ public function __construct($shipmentClient)
*/
public function getAvailableMethods(QuoteTransfer $quoteTransfer)
{
if (method_exists($this->shipmentClient, 'getAvailableMethodsByShipment') === true) {

$shipmentMethodsCollectionTransfer = $this->shipmentClient->getAvailableMethodsByShipment($quoteTransfer);

if ($shipmentMethodsCollectionTransfer->getShipmentMethods()->count() > 1) {
throw new \RuntimeException('Split shipping is not supported');
}

$shipmentMethodsTransfer = $shipmentMethodsCollectionTransfer->getShipmentMethods()->getIterator()
->current();

return $shipmentMethodsTransfer;
}

return $this->shipmentClient->getAvailableMethods($quoteTransfer);
}
}

0 comments on commit 5ef6a80

Please sign in to comment.