hrjy 3 years ago
parent
commit
d0d3e5e0ee

+ 17 - 27
app/api/controller/user/UserController.php

@@ -626,41 +626,31 @@ class UserController
         $user = User::where('level', '=', 4)->select();
         $start_time = date('Y-m-01 00:00:00', strtotime('-1 month'));
         $end_time = date('Y-m-d 23:59:59', strtotime(-date('d').'day'));
+        $config = explode(',',sys_config('achievements'));
+        $award = explode(',', sys_config('award'));
+
         foreach ($user as $item){
             $uids = get_downline(User::select(), $item['uid']);// 总团队
             $uids1 = get_downlines(User::select(), $item['uid']);// 总团队
-            $number = StoreOrder::where('paid', 1)->where('uid', 'in', $uids)->whereBetweenTime('add_time', $start_time, $end_time)->sum('number');
-            $number1 = StoreOrder::where('paid', 1)->where('uid', 'in', $uids1)->whereBetweenTime('add_time', $start_time, $end_time)->sum('number');
+            $number = StoreOrder::where('paid', 1)->where('uid', 'in', $uids)->whereBetweenTime('add_time', strtotime('today'), strtotime('tomorrow'))->sum('pay_price');
+            $number1 = StoreOrder::where('paid', 1)->where('uid', 'in', $uids1)->whereBetweenTime('add_time', strtotime('today'), strtotime('tomorrow'))->sum('pay_price');
             $percent = 0;//佣金比例
-            if ($number >= 10 and $number <= 30){
-                $percent = 0.05;
-
-            }elseif ($number >= 31 and $number <= 100){
-                $percent = 0.08;
-
-            }elseif ($number >= 101 and $number <= 200){
-                $percent = 0.1;
-
-            }elseif ($number >= 201 and $number <= 400){
-                $percent = 0.12;
-
-            }elseif ($number >= 401 and $number <= 800){
-                $percent = 0.14;
-
-            }elseif ($number >= 801 and $number <= 1200){
-                $percent = 0.16;
-
-            }elseif ($number >= 1201 and $number <= 1800){
-                $percent = 0.18;
-
-            }elseif ($number >= 1801){
-                $percent = 0.2;
+            for ($i = 0; $i < count($config); $i++){
+                if ($i < count($config) - 1){
+                    if ($number >= $config[$i] and $number < $config[$i+1]){
+                        $percent = $award[$i];
+                    }
+                }else{
+                    if ($number >= $config[$i]){
+                        $percent = $award[$i];
+                    }
+                }
 
             }
             if ($percent > 0){
-                $jl = (sys_config('province') *  $number1) * $percent;
+                $jl = (sys_config('province') *  $number1) * $percent/100;
                 User::where('uid', $item['uid'])->inc('brokerage_price', $jl)->update();
-                UserBill::income('佣金', $item['uid'], 'now_money', 'brokerage', $jl, '', User::where('uid', $item['uid'])->value('brokerage_price'), '绩效瓶数'.$number.',发放佣金');
+                UserBill::income('佣金', $item['uid'], 'now_money', 'brokerage', $jl, '', User::where('uid', $item['uid'])->value('brokerage_price'), '绩效总价'.$number.',发放价格'.$number1.'佣金');
             }
         }
     }

+ 10 - 3
app/models/store/StoreOrder.php

@@ -788,14 +788,15 @@ class StoreOrder extends BaseModel
         $x = 10000 * floor($order_price/10000);
         if ($x > 0){
             if (!UserBonus::where('uid', $order['uid'])->where('integral', $x)->find()){
+                $py = UserBonus::where('uid', $order['uid'])->sum('integral');
                 UserBonus::create([
                     'uid' => $order['uid'],
-                    'integral' => $x,
+                    'integral' => $x - $py,
                     'price' => 0
                 ]);
-                User::where('uid', $order['uid'])->inc('integral', $x)->update();
+                User::where('uid', $order['uid'])->inc('integral', $x - $py)->update();
                 $integral = User::where('uid', $order['uid'])->value('integral');
-                UserBill::income('增加分红积分', $order['uid'], 'integral', 'bonus', $x, '', $integral, '增加分红积分');
+                UserBill::income('增加分红积分', $order['uid'], 'integral', 'bonus', $x - $py, '', $integral, '增加分红积分');
             }
         }
 
@@ -813,6 +814,12 @@ class StoreOrder extends BaseModel
             $spread = User::where('uid', $user['spread_uid'])->find();
             User::where('uid', $user['spread_uid'])->inc('brokerage_price', $jl)->update();
             UserBill::income('佣金', $user['spread_uid'], 'now_money', 'brokerage', $jl, $user['uid'], $spread['brokerage_price']+ $jl, '直推佣金');
+        }else{
+            $jl = $order['pay_price'] * sys_config('push')/100;
+
+            $spread = User::where('uid', $user['uid'])->find();
+            User::where('uid', $user['uid'])->inc('brokerage_price', $jl)->update();
+            UserBill::income('佣金', $user['uid'], 'now_money', 'brokerage', $jl, $user['uid'], $user['brokerage_price']+ $jl, '复购佣金');
         }
     }
 

+ 1 - 1
app/models/store/StoreProduct.php

@@ -113,7 +113,7 @@ class StoreProduct extends BaseModel
         if ($salesOrder) $baseOrder = $salesOrder == 'desc' ? 'sales DESC' : 'sales ASC';//虚拟销量
         if ($baseOrder) $baseOrder .= ', ';
         $model->order($baseOrder . 'sort DESC, add_time DESC');
-        $list = $model->page((int)$page, (int)$limit)->field('id,store_name,cate_id,image,IFNULL(sales,0) + IFNULL(ficti,0) as sales,price,stock')->select()->each(function ($item) use ($uid, $type) {
+        $list = $model->page((int)$page, (int)$limit)->field('id,store_name,cate_id,image,IFNULL(sales,0) + IFNULL(ficti,0) as sales,price,stock,ot_price')->select()->each(function ($item) use ($uid, $type) {
             if ($type) {
                 $item['is_att'] = StoreProductAttrValueModel::where('product_id', $item['id'])->count() ? true : false;
                 if ($uid) $item['cart_num'] = StoreCart::where('is_pay', 0)->where('is_del', 0)->where('is_new', 0)->where('type', 'product')->where('product_id', $item['id'])->where('uid', $uid)->value('cart_num');