Browse Source

抽奖,大礼物飘屏只要一个,奖池礼物跟着奖池状态走

lizhen_gitee 1 year ago
parent
commit
76c90b09fe

+ 13 - 0
application/admin/model/egg/Jackpot.php

@@ -3,6 +3,7 @@
 namespace app\admin\model\egg;
 
 use think\Model;
+use think\Db;
 
 
 class Jackpot extends Model
@@ -36,6 +37,18 @@ class Jackpot extends Model
             $pk = $row->getPk();
             $row->getQuery()->where($pk, $row[$pk])->update(['weigh' => $row[$pk]]);
         });
+
+        self::beforeUpdate(function ($row) {
+            $changed = $row->getChangedData();
+
+            if (isset($changed['status'])) {
+                if ($changed['status'] == -1) {
+                    Db::name('egg_gift')->where('Jackpot_id',$row['id'])->update(['is_use'=>1]);
+                }else{
+                    Db::name('egg_gift')->where('Jackpot_id',$row['id'])->update(['is_use'=>0]);
+                }
+            }
+        });
     }
 
     

+ 9 - 0
application/admin/view/egg/jackpot/edit.html

@@ -18,6 +18,15 @@
 
         </div>
     </div>
+    <div class="form-group">
+        <label class="control-label col-xs-12 col-sm-2">提醒:</label>
+        <div class="col-xs-12 col-sm-8">
+            <span style="color: red">状态被改成:已抽完奖池 时,旗下礼物全部变成已抽完</span><br/>
+            <span style="color: red">状态被改成:当前奖池  时,旗下礼物全部变成未抽</span><br/>
+            <span style="color: red">状态被改成:未开放奖池 时,旗下礼物全部变成未抽</span><br/>
+            <span style="color: red">状态被不修改,旗下礼物状态不变</span>
+        </div>
+    </div>
     <!--<div class="form-group">
         <label class="control-label col-xs-12 col-sm-2">{:__('Tes')}:</label>
         <div class="col-xs-12 col-sm-8">

+ 13 - 2
application/api/controller/Eggnew.php

@@ -276,9 +276,20 @@ class Eggnew extends Api
         }
 
         // 返回抽到的礼物列表
-        $list = Db::name('egg_do')->alias('do')->join('gift','do.gift_id = gift.id','LEFT')->field('do.*,gift.is_big')->where('do.do_no',$do_no)->select();
+        $result = [
+            'list' => [],
+            'bigshow' => [],
+        ];
 
-        $this->success("获取成功!",$list);
+        $list = Db::name('egg_do')->alias('do')->join('gift','do.gift_id = gift.id','LEFT')->field('do.*,gift.is_big')->where('do.do_no',$do_no)->order('gift.is_big desc,gift.value desc')->select();
+        $result['list'] = $list;
+        //只弹一个大礼物,专门拿出结构
+        if(!empty($list)){
+            if($list[0]['is_big'] == 1){
+                $result['bigshow'] = $list[0];
+            }
+        }
+        $this->success("获取成功!",$result);
     }
 
     //手气榜单