ソースを参照

售后付款问题

shish 1 年間 前
コミット
0cd2a20cf0

+ 7 - 1
app-hd/controllers/OrderController.php

@@ -952,13 +952,19 @@ class OrderController extends BaseController
         if ($detail['forward'] == 1) {
             //当前单如果已经是售后付款单,则取出其对应的原单
             $map = OrderForwardClass::getByCondition(['shOrderId' => $id], true);
-            if(!empty($map)){
+            if (!empty($map)) {
                 $originOrderId = $map->orderId ?? 0;
                 $forwardMap['orderId'] = $originOrderId;
             }
         }
         $detail['forwardMap'] = $forwardMap;
 
+        $shOrderMap = [];
+        if ($detail['hasForward'] == 1) {
+            $shOrderMap = OrderForwardClass::getAllByCondition(['orderId' => $id], null, '*');
+        }
+        $detail['shOrderMap'] = $shOrderMap;
+
         $main = $this->main;
         //是否走售后付款单模式判断 ssh
         $ret = OrderClass::ifShPay($detail, $main, 0);

+ 5 - 1
biz-hd/order/classes/OrderClass.php

@@ -185,7 +185,11 @@ class OrderClass extends BaseClass
             //建立关系
             $originOrder->hasForward = 1;
             $originOrder->save();
-            $map = ['orderId' => $originOrder->id, 'shOrderId' => $order->id];
+            $orderId = $originOrder->id ?? 0;
+            $orderSn = $originOrder->orderSn ?? '';
+            $shOrderId = $order->id ?? 0;
+            $shOrderSn = $order->orderSn ?? '';
+            $map = ['orderId' => $orderId, 'orderSn' => $orderSn, 'shOrderId' => $shOrderId, 'shOrderSn' => $shOrderSn];
             OrderForwardClass::add($map, true);
         }
         return true;