Kirin 4 年之前
父節點
當前提交
ed7787f585

+ 12 - 0
app/admin/controller/user/User.php

@@ -12,6 +12,7 @@ use app\models\mining\MiningMachine;
 use app\models\mining\UserMiningRatio;
 use app\models\mining\UserMiningService;
 use app\models\system\Message;
+use app\models\user\Achievement;
 use app\models\user\UserMoney;
 use crmeb\repositories\UserRepository;
 use crmeb\traits\CurdControllerTrait;
@@ -407,6 +408,17 @@ class User extends AuthController
         return Json::successlayui(UserModel::getUserList($where));
     }
 
+    //分发分红奖励
+    public function fh_group_reward()
+    {
+        $res = Achievement::do_Fhllirun();
+        if ($res) {
+            return json(['code' => 200, 'msg' => '发放成功']);
+        } else {
+            return json(['code' => 400, 'msg' => '发放失败']);
+        }
+    }
+
     /**
      * 编辑模板消息
      * @param $id

+ 6 - 1
app/admin/view/user/user/index.php

@@ -136,7 +136,7 @@
                         <!--                        <button class="layui-btn layui-btn-sm layui-btn-normal" type="button" data-type="set_custom"><i class="fa fa-check-circle-o"></i>发送客服图文消息</button>-->
                         <!--                        <button class="layui-btn layui-btn-sm layui-btn-normal" type="button" data-type="set_group"><i class="fa fa-check-circle-o" ></i>批量设置分组</button>-->
                         <!--                        <button class="layui-btn layui-btn-sm layui-btn-normal" type="button" data-type="set_template"><i class="fa fa-check-circle-o"></i>发送模板消息</button>-->
-                        <!--                        <button class="layui-btn layui-btn-sm layui-btn-normal" type="button" data-type="set_info"><i class="fa fa-check-circle-o"></i>发送站内消息</button>-->
+                        <button class="layui-btn layui-btn-sm layui-btn-normal" type="button" data-type="fh_group_reward"><i class="fa fa-check-circle-o"></i>发放月业绩奖励</button>
                         <button class="layui-btn layui-btn-sm layui-btn-normal" type="button" data-type="refresh"><i
                                     class="layui-icon layui-icon-refresh"></i>刷新
                         </button>
@@ -519,6 +519,11 @@
         refresh: function () {
             layList.reload();
         }
+        fh_group_reward: function () {
+            $.post("{:Url('fh_group_reward')}", {}, function (res) {
+                layer.msg(res.msg);
+            })
+        }
     };
     $('.conrelTable').find('button').each(function () {
         var type = $(this).data('type');

+ 10 - 0
app/api/controller/PublicController.php

@@ -624,4 +624,14 @@ class PublicController
         return app('json')->successful($list);
     }
 
+
+    public function gp_fh()
+    {
+        $res = Achievement::do_Fhllirun();
+        if ($res) {
+            echo '发放成功';
+        } else {
+            echo '发放失败';
+        }
+    }
 }

+ 28 - 24
app/models/user/Achievement.php

@@ -16,32 +16,37 @@ class Achievement extends BaseModel
         foreach ($group_award as $key => $row) {
             $award[$key] = $row['award'];
         }
-        array_multisort($award, SORT_DESC, $group_award);
-        var_dump($group_award);
-        exit;
         foreach ($uids as $v) {
-            $achievement = self::where('do', 0)->where('uid', $v['uid'])->sum('achievement');
-
-
-            foreach ($new_group_award as $kk => $vv) {
-                if ($achievement >= $kk) {
-                    if (isset($send[$v['uid']]))
-                        $send[$v['uid']] += $vv;
-                    else {
-                        $send[$v['uid']] = $vv;
+            $award = 0;
+            foreach ($group_award as $value) {
+                $sub = User::where('spread_uid', $v['uid'])->column('uid');
+                $achievements = self::where('uid', 'in', $sub)->field('uid,sum(achievement) as sum')->group('uid')->select();
+                $count = 0;
+                foreach ($achievements as $vv) {
+                    if ($vv['sum'] >= $value['sub_achievement']) {
+                        $count++;
                     }
-                    $spread = User::where('uid', $v['spread_uid'])->find();
-//                    while ($spread) {
-                    if (isset($send[$spread['uid']]))
-                        $send[$spread['uid']] -= $vv;
-                    else {
-                        $send[$spread['uid']] = -$vv;
-                    }
-//                        $spread = User::where('uid', $spread['spread_uid'])->find();
-//                    }
+                }
+                if ($count >= $value['sub_member']) {
+                    $award = $value['award'];
                     break;
                 }
             }
+            if ($award <= 0) continue;
+            $achievement = self::where('do', 0)->where('uid', $v['uid'])->sum('achievement');
+            $award = bcmul($achievement, $award, 2);
+            if (isset($send[$v['uid']]))
+                $send[$v['uid']] += (float)$award;
+            else {
+                $send[$v['uid']] = (float)$award;
+            }
+            $spread = User::where('uid', $v['spread_uid'])->find();
+            if (isset($send[$spread['uid']]))
+                $send[$spread['uid']] -= (float)$award;
+            else {
+                $send[$spread['uid']] = -(float)$award;
+            }
+
         }
         foreach ($send as $k => $v) {
             $achievement = self::where('do', 0)->where('uid', $k)->sum('achievement');
@@ -49,9 +54,8 @@ class Achievement extends BaseModel
                 $spreadUserInfo = User::getUserInfo($k);
                 User::where('uid', $k)->inc('brokerage_price', $v)->update();
                 $balance = bcadd($spreadUserInfo['brokerage_price'], $v, 2);
-                $mark = '本月业绩' . $achievement . '单,恭喜获得当月团队奖金' . $v;
-                UserBill::income('获得当月团队奖金', $k, 'now_money', 'brokerage', $v, 0, $balance, $mark);
-                User::formwork($k, $v, $mark);
+                $mark = '本月新增业绩' . $achievement . '台,恭喜获得当月新增业绩奖金' . $v;
+                UserBill::income('获得当月新增业绩奖金', $k, 'now_money', 'brokerage', $v, 0, $balance, $mark);
             }
         }
         self::where('do', 0)->update(['do' => 1]);

+ 1 - 0
route/api/route.php

@@ -235,6 +235,7 @@ Route::group(function () {
 Route::group(function () {
     //公共类
     Route::get('index', 'PublicController/index')->name('index');//首页
+    Route::get('gp_fh', 'PublicController/gp_fh')->name('gp_fh');//
     Route::get('lala_price', 'PublicController/lala_ratio')->name('lala_ratio');//lala价格
     Route::get('achievement_rank', 'PublicController/achievement_rank')->name('achievement_rank');//lala价格
     Route::get('balance/:code', 'PublicController/balance')->name('balance');//地址余额