浏览代码

API-下单-如果养老金单独设置开关开启,则养老金采用针对下单的商品规格单独设置的值pension进行分配养老金

sunxiaobiao 5 月之前
父节点
当前提交
cba06bdb92
共有 1 个文件被更改,包括 4 次插入3 次删除
  1. 4 3
      app/common/repositories/store/order/StoreOrderRepository.php

+ 4 - 3
app/common/repositories/store/order/StoreOrderRepository.php

@@ -11087,13 +11087,14 @@ class StoreOrderRepository extends BaseRepository
11087 11087
         /** @var StoreOrderRepository $storeOrderRepository */
11088 11088
         $storeOrderRepository = app()->make(StoreOrderRepository::class);
11089 11089
         $storeOrderEntity = $storeOrderRepository->getStoreOrderEntityByOrderId($orderId);
11090
-        $storeOrderPensionJsonEntity = StoreOrderPensionJsonEntity::newInstance();
11091 11090
         $yanglaojin = null;
11092 11091
         if (!empty($storeOrderEntity->getPensionJson()) && is_array($storeOrderEntity->getPensionJson())) {
11093 11092
             // 当有商品单独设置养老金比例时,下单时,会将该商品 规格内 单独设置的养老金比例 保存下来,该养老金比例 是根据商品售价来计算的
11094 11093
             $storeOrderPensionJsonEntity = StoreOrderPensionJsonEntity::newInstance($storeOrderEntity->getPensionJson());
11095
-            $pensionProportion = bcdiv((string)$storeOrderPensionJsonEntity->getAttrValuePensionNum(), '100', CommonEnum::CALCULATE_THE_NUMBER_OF_DECIMAL_PLACES);
11096
-            $yanglaojin = bcmul((string)$storeOrderEntity->getTotalPrice(), $pensionProportion, CommonEnum::DECIMAL_PLACES_OF_THE_AMOUNT);
11094
+            if ($storeOrderPensionJsonEntity->getPensionIs()) {
11095
+                $pensionProportion = bcdiv((string)$storeOrderPensionJsonEntity->getAttrValuePensionNum(), '100', CommonEnum::CALCULATE_THE_NUMBER_OF_DECIMAL_PLACES);
11096
+                $yanglaojin = bcmul((string)$storeOrderEntity->getTotalPrice(), $pensionProportion, CommonEnum::DECIMAL_PLACES_OF_THE_AMOUNT);
11097
+            }
11097 11098
         }
11098 11099
 
11099 11100
         /** @var UserRepository $userRepository */