Procházet zdrojové kódy

增加五层限制

root před 3 roky
rodič
revize
ea32c0ee1f
1 změnil soubory, kde provedl 13 přidání a 1 odebrání
  1. 13 1
      common/helpers/bonus/BonusCalc.php

+ 13 - 1
common/helpers/bonus/BonusCalc.php

@@ -86,6 +86,8 @@ class BonusCalc extends BaseObject {
 
     const LOOP_FINISH = 1;
     const LOOP_CONTINUE = 2;
+    const GX_FLOOR_LIMIT = 5; // 共享奖向上找的最大层级
+    const GX_LIMIT_SWITCH = true; // 是否开启共享奖向上找的最大限制  true 为开启 false 关闭  
 
     const ORDER_TYPE_TO_FW_COEFFICIENT = [
         'ZC' => 'fwCoefficientFromZc',
@@ -2774,12 +2776,22 @@ class BonusCalc extends BaseObject {
      */
     public function getMinBdPvNetworkParent($userId) {
         $validParentId = '';
-        $this->loopNetworkParentDo($userId, function ($parent) use(&$validParentId) {
+        $validDeep = 1;
+        $startSwitch = self::GX_LIMIT_SWITCH;
+        $floorNum = self::GX_FLOOR_LIMIT;
+        $this->loopNetworkParentDo($userId, function ($parent) use(&$validParentId,&$validDeep,$startSwitch,$floorNum) {
             if ( $this->checkSmallMarketPerf($parent['PARENT_UID']) ) {
                 $validParentId = $parent['PARENT_UID'];
                 unset($parent);
                 return self::LOOP_FINISH;
             }
+            // 只找5层
+            if ( $startSwitch && $validDeep >= $floorNum ) {
+                unset($parent);
+                return self::LOOP_FINISH;
+            }
+
+            $validDeep += 1;
             unset($parent);
         });