hrjy 2 anos atrás
pai
commit
890f895fcc
2 arquivos alterados com 145 adições e 136 exclusões
  1. 1 0
      app/api/controller/user/UserController.php
  2. 144 136
      app/models/user/User.php

+ 1 - 0
app/api/controller/user/UserController.php

@@ -638,6 +638,7 @@ class UserController
                         $integral = $number;// 积分
                         $item['already'] += $number;
                         $item['status'] = 1;
+                        User::where('uid', $request->uid())->dec('shop_number', 1)->update();
                     }else{
                         $number = $item['release'];
                         $integral = $number;// 积分

+ 144 - 136
app/models/user/User.php

@@ -763,15 +763,19 @@ class User extends BaseModel
     public static function release_push($uid, $number, $to_release)
     {
         $user = self::where('uid', $uid)->find();
-        if ($to_release <= 500){
-            $number = $number * 0.2;
-        }elseif($to_release > 500 and $to_release <= 2000){
-            $number = $number * 0.25;
-        }elseif($to_release > 200 and $to_release <= 4000){
-            $number = $number * 0.3;
+        $release = StoreOrderRelease::where('uid', $uid)->where('status', 0)->select();
+        if (count($release) > 0){
+            if ($to_release <= 500){
+                $number = $number * 0.2;
+            }elseif($to_release > 500 and $to_release <= 2000){
+                $number = $number * 0.25;
+            }elseif($to_release > 200 and $to_release <= 4000){
+                $number = $number * 0.3;
+            }
+            User::where('uid', $user['uid'])->inc('dynamic_integral', $number)->update();
+            UserBill::income('直推奖励释放动态积分', $user['uid'], 'dynamic_integral', 'zt_dynamic_integral', $number, 0, $user['dynamic_integral'] + $number, '直推奖励动态积分');
         }
-        User::where('uid', $user['uid'])->inc('dynamic_integral', $number)->update();
-        UserBill::income('直推奖励释放动态积分', $user['uid'], 'dynamic_integral', 'zt_dynamic_integral', $number, 0, $user['dynamic_integral'] + $number, '直推奖励动态积分');
+
     }
 
 
@@ -826,140 +830,144 @@ class User extends BaseModel
                     $three = sys_config('tr_release')/100;// v3比例
                     $three_level = sys_config('tr_level')/100;// v3比例
                     foreach ($spread as $value) {
-                        $details = User::where('uid', $value)->find();
-                        if ($details['level'] > 0){
-                            if ($details['level'] == 1){
-                                if ($v2 == 0 and $v3 == 0){
-                                    // 没有发放v2和v3的奖励
-                                    if ($v1 == 0) { // 没有发放v1的奖励
-                                        $jl = $price * $one;
-                                        $details['dynamic_integral'] += $jl; // v1团队奖励
-                                        $v1++;
-                                    }elseif ($v1 == 1){// 发放v1奖励1次
-                                        $jl = ($price*$one)*$one_level;//平级的百分之五
-                                        $details['dynamic_integral'] += $jl; // v1团队奖励平级
-                                        $v1++;
-                                    }elseif ($v1 == 2){// 发放v1奖励1次
-                                        $jl = ($price*$one)*$one_level/10;//平级的百分之五
-                                        $details['dynamic_integral'] += $jl; // v1团队奖励平级
-                                        $v1++;
-                                    }elseif ($v1 == 3){// 发放v1奖励1次
-                                        $jl = ($price*$one)*$one_level/100;//平级的百分之五
-                                        $details['dynamic_integral'] += $jl; // v1团队奖励平级
-                                        $v1++;
+                        $release = StoreOrderRelease::where('uid', $value)->where('status', 0)->select();
+                        if (count($release) > 0){
+                            $details = User::where('uid', $value)->find();
+                            if ($details['level'] > 0){
+                                if ($details['level'] == 1){
+                                    if ($v2 == 0 and $v3 == 0){
+                                        // 没有发放v2和v3的奖励
+                                        if ($v1 == 0) { // 没有发放v1的奖励
+                                            $jl = $price * $one;
+                                            $details['dynamic_integral'] += $jl; // v1团队奖励
+                                            $v1++;
+                                        }elseif ($v1 == 1){// 发放v1奖励1次
+                                            $jl = ($price*$one)*$one_level;//平级的百分之五
+                                            $details['dynamic_integral'] += $jl; // v1团队奖励平级
+                                            $v1++;
+                                        }elseif ($v1 == 2){// 发放v1奖励1次
+                                            $jl = ($price*$one)*$one_level/10;//平级的百分之五
+                                            $details['dynamic_integral'] += $jl; // v1团队奖励平级
+                                            $v1++;
+                                        }elseif ($v1 == 3){// 发放v1奖励1次
+                                            $jl = ($price*$one)*$one_level/100;//平级的百分之五
+                                            $details['dynamic_integral'] += $jl; // v1团队奖励平级
+                                            $v1++;
+                                        }
                                     }
-                                }
-                            }elseif ($details['level'] == 2){
-                                if ($v3 == 0){
-                                    // 没有发放v3的奖励
-                                    if ($v1 == 0 and $v2 == 0) { // 没有发放v1和v2的奖励的奖励
-                                        $jl = $price * $tow;
-                                        $details['dynamic_integral'] += $jl; // v2团队奖励
-                                        $v2++;
-                                    }elseif($v1 == 0 and $v2 == 1) { // 没有发放v1和v2的奖励的奖励
-                                        $jl = ($price * $tow)*$tow_level;
-                                        $details['dynamic_integral'] += $jl; // v2团队奖励平级
-                                        $v2++;
-                                    }elseif($v1 == 0 and $v2 == 2) { // 没有发放v1和v2的奖励的奖励
-                                        $jl = ($price * $tow)*$tow_level/100;
-                                        $details['dynamic_integral'] += $jl; // v2团队奖励平级
-                                        $v2++;
-                                    }elseif($v1 == 0 and $v2 == 3) { // 没有发放v1和v2的奖励的奖励
-                                        $jl = ($price * $tow)*$tow_level/100;
-                                        $details['dynamic_integral'] += $jl; // v2团队奖励平级
-                                        $v2++;
-                                    }elseif ($v1 > 0 and $v2 == 0){// 发放v1奖励,没有发放v2的奖励
-                                        $jl = $price * ($tow - $one);
-                                        $details['dynamic_integral'] += $jl; // v2团队奖励
-                                        $v2++;
-                                    }elseif ($v1 > 0 and $v2 == 1){// 发放v1奖励,发放v2的奖励一次
-                                        $jl = ($price * ($tow - $one))*$tow_level; // 拿到平级的百分之五
-                                        $details['dynamic_integral'] += $jl; // v2团队奖励平级
-                                        $v2++;
-                                    }elseif ($v1 > 0 and $v2 == 2){// 发放v1奖励,发放v2的奖励一次
-                                        $jl = ($price * ($tow - $one))*$tow_level/10; // 拿到平级的百分之五
-                                        $details['dynamic_integral'] += $jl; // v2团队奖励平级
-                                        $v2++;
-                                    }elseif ($v1 > 0 and $v2 == 3){// 发放v1奖励,发放v2的奖励一次
-                                        $jl = ($price * ($tow - $one))*$tow_level/100; // 拿到平级的百分之五
-                                        $details['dynamic_integral'] += $jl; // v2团队奖励平级
-                                        $v2++;
+                                }elseif ($details['level'] == 2){
+                                    if ($v3 == 0){
+                                        // 没有发放v3的奖励
+                                        if ($v1 == 0 and $v2 == 0) { // 没有发放v1和v2的奖励的奖励
+                                            $jl = $price * $tow;
+                                            $details['dynamic_integral'] += $jl; // v2团队奖励
+                                            $v2++;
+                                        }elseif($v1 == 0 and $v2 == 1) { // 没有发放v1和v2的奖励的奖励
+                                            $jl = ($price * $tow)*$tow_level;
+                                            $details['dynamic_integral'] += $jl; // v2团队奖励平级
+                                            $v2++;
+                                        }elseif($v1 == 0 and $v2 == 2) { // 没有发放v1和v2的奖励的奖励
+                                            $jl = ($price * $tow)*$tow_level/100;
+                                            $details['dynamic_integral'] += $jl; // v2团队奖励平级
+                                            $v2++;
+                                        }elseif($v1 == 0 and $v2 == 3) { // 没有发放v1和v2的奖励的奖励
+                                            $jl = ($price * $tow)*$tow_level/100;
+                                            $details['dynamic_integral'] += $jl; // v2团队奖励平级
+                                            $v2++;
+                                        }elseif ($v1 > 0 and $v2 == 0){// 发放v1奖励,没有发放v2的奖励
+                                            $jl = $price * ($tow - $one);
+                                            $details['dynamic_integral'] += $jl; // v2团队奖励
+                                            $v2++;
+                                        }elseif ($v1 > 0 and $v2 == 1){// 发放v1奖励,发放v2的奖励一次
+                                            $jl = ($price * ($tow - $one))*$tow_level; // 拿到平级的百分之五
+                                            $details['dynamic_integral'] += $jl; // v2团队奖励平级
+                                            $v2++;
+                                        }elseif ($v1 > 0 and $v2 == 2){// 发放v1奖励,发放v2的奖励一次
+                                            $jl = ($price * ($tow - $one))*$tow_level/10; // 拿到平级的百分之五
+                                            $details['dynamic_integral'] += $jl; // v2团队奖励平级
+                                            $v2++;
+                                        }elseif ($v1 > 0 and $v2 == 3){// 发放v1奖励,发放v2的奖励一次
+                                            $jl = ($price * ($tow - $one))*$tow_level/100; // 拿到平级的百分之五
+                                            $details['dynamic_integral'] += $jl; // v2团队奖励平级
+                                            $v2++;
+                                        }
+
                                     }
 
+                                }elseif ($details['level'] == 3){
+                                    if ($v1 == 0 and $v2 == 0 and $v3 == 0) { // 没有发放v1和v2v3的奖励的奖励
+                                        $jl = $price * $three;
+                                        $details['dynamic_integral'] += $jl; // v3团队奖励
+                                        $v3++;
+                                    }elseif ($v1 == 0 and $v2 == 0 and $v3 == 1) {// 没有发放v1和v2的奖励的奖励
+                                        $jl = ($price * $three) * $three_level; // 拿到平级的百分之五
+                                        $details['dynamic_integral'] += $jl; // v3团队奖励平级
+                                        $v3++;
+                                    }elseif ($v1 == 0 and $v2 == 0 and $v3 == 2) {// 没有发放v1和v2的奖励的奖励
+                                        $jl = ($price * $three) * $three_level/10; // 拿到平级的百分之五
+                                        $details['dynamic_integral'] += $jl; // v3团队奖励平级
+                                        $v3++;
+                                    }elseif ($v1 == 0 and $v2 == 0 and $v3 == 3) {// 没有发放v1和v2的奖励的奖励
+                                        $jl = ($price * $three) * $three_level/100; // 拿到平级的百分之五
+                                        $details['dynamic_integral'] += $jl; // v3团队奖励平级
+                                        $v3++;
+                                    }elseif ($v1 > 0 and $v2 == 0 and $v3 == 0){// 发放v1奖励,没有发放v2v3的奖励
+                                        $jl = $price * ($three - $one);
+                                        $details['dynamic_integral'] += $jl; // v3团队奖励
+                                        $v3++;
+                                    }elseif ($v1 > 0 and $v2 == 0 and $v3 == 1){// 发放v1奖励,没有发放v2v3的奖励
+                                        $jl = ($price * ($three - $one)) * $three_level;
+                                        $details['dynamic_integral'] += $jl; // v3团队奖励平级
+                                        $v3++;
+                                    }elseif ($v1 > 0 and $v2 == 0 and $v3 == 2){// 发放v1奖励,没有发放v2v3的奖励
+                                        $jl = ($price * ($three - $one)) * $three_level/10;
+                                        $details['dynamic_integral'] += $jl; // v3团队奖励平级
+                                        $v3++;
+                                    }elseif ($v1 > 0 and $v2 == 0 and $v3 == 3){// 发放v1奖励,没有发放v2v3的奖励
+                                        $jl = ($price * ($three - $one)) * $three_level/100;
+                                        $details['dynamic_integral'] += $jl; // v3团队奖励平级
+                                        $v3++;
+                                    }elseif ($v1 == 0 and $v2 > 0 and $v3 == 0){// 发放v1奖励,发放v2的奖励,没有发放v3的奖励
+                                        $jl = ($price * ($three - $tow));
+                                        $details['dynamic_integral'] += $jl; // v3团队奖励
+                                        $v3++;
+                                    }elseif ($v1 == 0 and $v2 > 0 and $v3 == 1){// 发放v1奖励,发放v2的奖励,发放v3的奖励
+                                        $jl = ($price * ($three - $tow)) * $three_level; // 拿到平级的百分之五
+                                        $details['dynamic_integral'] += $jl; // v3团队奖励
+                                        $v3++;
+                                    }elseif ($v1 == 0 and $v2 > 0 and $v3 == 2){// 发放v1奖励,发放v2的奖励,发放v3的奖励
+                                        $jl = ($price * ($three - $tow)) * $three_level/10; // 拿到平级的百分之五
+                                        $details['dynamic_integral'] += $jl; // v3团队奖励
+                                        $v3++;
+                                    }elseif ($v1 == 0 and $v2 > 0 and $v3 == 3){// 发放v1奖励,发放v2的奖励,发放v3的奖励
+                                        $jl = ($price * ($three - $tow)) * $three_level/100; // 拿到平级的百分之五
+                                        $details['dynamic_integral'] += $jl; // v3团队奖励
+                                        $v3++;
+                                    }elseif ($v1 > 0 and $v2 > 0 and $v3 == 0){// 发放v1奖励,发放v2的奖励,发放v3的奖励
+                                        $jl = ($price * ($three - $tow));
+                                        $details['dynamic_integral'] += $jl; // v3团队奖励
+                                        $v3++;
+                                    }elseif ($v1 > 0 and $v2 > 0 and $v3 == 1){// 发放v1奖励,发放v2的奖励,发放v3的奖励
+                                        $jl = ($price * ($three - $tow)) *$three_level;
+                                        $details['dynamic_integral'] += $jl; // v3团队奖励平级
+                                        $v3++;
+                                    }elseif ($v1 > 0 and $v2 > 0 and $v3 == 2){// 发放v1奖励,发放v2的奖励,发放v3的奖励
+                                        $jl = ($price * ($three - $tow)) *$three_level/10;
+                                        $details['dynamic_integral'] += $jl; // v3团队奖励平级
+                                        $v3++;
+                                    }elseif ($v1 > 0 and $v2 > 0 and $v3 == 3){// 发放v1奖励,发放v2的奖励,发放v3的奖励
+                                        $jl = ($price * ($three - $tow)) *$three_level/100;
+                                        $details['dynamic_integral'] += $jl; // v3团队奖励平级
+                                        $v3++;
+                                    }
                                 }
-
-                            }elseif ($details['level'] == 3){
-                                if ($v1 == 0 and $v2 == 0 and $v3 == 0) { // 没有发放v1和v2v3的奖励的奖励
-                                    $jl = $price * $three;
-                                    $details['dynamic_integral'] += $jl; // v3团队奖励
-                                    $v3++;
-                                }elseif ($v1 == 0 and $v2 == 0 and $v3 == 1) {// 没有发放v1和v2的奖励的奖励
-                                    $jl = ($price * $three) * $three_level; // 拿到平级的百分之五
-                                    $details['dynamic_integral'] += $jl; // v3团队奖励平级
-                                    $v3++;
-                                }elseif ($v1 == 0 and $v2 == 0 and $v3 == 2) {// 没有发放v1和v2的奖励的奖励
-                                    $jl = ($price * $three) * $three_level/10; // 拿到平级的百分之五
-                                    $details['dynamic_integral'] += $jl; // v3团队奖励平级
-                                    $v3++;
-                                }elseif ($v1 == 0 and $v2 == 0 and $v3 == 3) {// 没有发放v1和v2的奖励的奖励
-                                    $jl = ($price * $three) * $three_level/100; // 拿到平级的百分之五
-                                    $details['dynamic_integral'] += $jl; // v3团队奖励平级
-                                    $v3++;
-                                }elseif ($v1 > 0 and $v2 == 0 and $v3 == 0){// 发放v1奖励,没有发放v2v3的奖励
-                                    $jl = $price * ($three - $one);
-                                    $details['dynamic_integral'] += $jl; // v3团队奖励
-                                    $v3++;
-                                }elseif ($v1 > 0 and $v2 == 0 and $v3 == 1){// 发放v1奖励,没有发放v2v3的奖励
-                                    $jl = ($price * ($three - $one)) * $three_level;
-                                    $details['dynamic_integral'] += $jl; // v3团队奖励平级
-                                    $v3++;
-                                }elseif ($v1 > 0 and $v2 == 0 and $v3 == 2){// 发放v1奖励,没有发放v2v3的奖励
-                                    $jl = ($price * ($three - $one)) * $three_level/10;
-                                    $details['dynamic_integral'] += $jl; // v3团队奖励平级
-                                    $v3++;
-                                }elseif ($v1 > 0 and $v2 == 0 and $v3 == 3){// 发放v1奖励,没有发放v2v3的奖励
-                                    $jl = ($price * ($three - $one)) * $three_level/100;
-                                    $details['dynamic_integral'] += $jl; // v3团队奖励平级
-                                    $v3++;
-                                }elseif ($v1 == 0 and $v2 > 0 and $v3 == 0){// 发放v1奖励,发放v2的奖励,没有发放v3的奖励
-                                    $jl = ($price * ($three - $tow));
-                                    $details['dynamic_integral'] += $jl; // v3团队奖励
-                                    $v3++;
-                                }elseif ($v1 == 0 and $v2 > 0 and $v3 == 1){// 发放v1奖励,发放v2的奖励,发放v3的奖励
-                                    $jl = ($price * ($three - $tow)) * $three_level; // 拿到平级的百分之五
-                                    $details['dynamic_integral'] += $jl; // v3团队奖励
-                                    $v3++;
-                                }elseif ($v1 == 0 and $v2 > 0 and $v3 == 2){// 发放v1奖励,发放v2的奖励,发放v3的奖励
-                                    $jl = ($price * ($three - $tow)) * $three_level/10; // 拿到平级的百分之五
-                                    $details['dynamic_integral'] += $jl; // v3团队奖励
-                                    $v3++;
-                                }elseif ($v1 == 0 and $v2 > 0 and $v3 == 3){// 发放v1奖励,发放v2的奖励,发放v3的奖励
-                                    $jl = ($price * ($three - $tow)) * $three_level/100; // 拿到平级的百分之五
-                                    $details['dynamic_integral'] += $jl; // v3团队奖励
-                                    $v3++;
-                                }elseif ($v1 > 0 and $v2 > 0 and $v3 == 0){// 发放v1奖励,发放v2的奖励,发放v3的奖励
-                                    $jl = ($price * ($three - $tow));
-                                    $details['dynamic_integral'] += $jl; // v3团队奖励
-                                    $v3++;
-                                }elseif ($v1 > 0 and $v2 > 0 and $v3 == 1){// 发放v1奖励,发放v2的奖励,发放v3的奖励
-                                    $jl = ($price * ($three - $tow)) *$three_level;
-                                    $details['dynamic_integral'] += $jl; // v3团队奖励平级
-                                    $v3++;
-                                }elseif ($v1 > 0 and $v2 > 0 and $v3 == 2){// 发放v1奖励,发放v2的奖励,发放v3的奖励
-                                    $jl = ($price * ($three - $tow)) *$three_level/10;
-                                    $details['dynamic_integral'] += $jl; // v3团队奖励平级
-                                    $v3++;
-                                }elseif ($v1 > 0 and $v2 > 0 and $v3 == 3){// 发放v1奖励,发放v2的奖励,发放v3的奖励
-                                    $jl = ($price * ($three - $tow)) *$three_level/100;
-                                    $details['dynamic_integral'] += $jl; // v3团队奖励平级
-                                    $v3++;
+                                if ($jl > 0){
+                                    $details->save();
+                                    UserBill::income('团队奖励释放动态积分', $details['uid'], 'dynamic_integral', 'team', $jl, 0,$details['dynamic_integral'], 'v'.$details['level'].'团队奖励释放动态积分');
                                 }
+                                $jl = 0;
                             }
-                            if ($jl > 0){
-                                $details->save();
-                                UserBill::income('团队奖励释放动态积分', $details['uid'], 'dynamic_integral', 'team', $jl==0?$bill:$jl, 0,$details['dynamic_integral'], 'v'.$details['level'].'团队奖励释放动态积分');
-                            }
-                            $jl = 0;
+
                         }
                     }
                 }