From ff5eee540840684715aacc0e442c93c3cc826bec Mon Sep 17 00:00:00 2001 From: wanghongjun <1445693971@qq,com> Date: Tue, 29 Aug 2023 15:19:02 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BC=80=E5=A7=8B=E5=88=AE=E5=A5=96=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/logic/Zone.php | 20 ++++++++++++++++---- app/model/ZoneGoodsParam.php | 9 +++++---- route/app.php | 6 +++--- 3 files changed, 24 insertions(+), 11 deletions(-) diff --git a/app/logic/Zone.php b/app/logic/Zone.php index 1f54171..c93bcbb 100644 --- a/app/logic/Zone.php +++ b/app/logic/Zone.php @@ -46,7 +46,11 @@ class Zone $zoneParamArr = ZoneGoodsParam::getList(['zone_goods_id' => $zone_goods_id]); # 获取刮刮乐信息 - $data = self::getWinningPrize($zoneParamArr); + $resData = self::getWinningPrize($zoneParamArr); + $data = $resData['data']; + $save_data = $resData['save_data']; + + # 开启事务 $connection = Db::connect(); @@ -58,7 +62,7 @@ class Zone $balance = User::decrBalance($user_id,$price); # 消费记录 - $c_r_id = ConsumptionRecords::createRecords($user_id,$zone_goods_id,$price,$price,$balance,$data); + $c_r_id = ConsumptionRecords::createRecords($user_id,$zone_goods_id,$price,$price,$balance,$save_data); $connection->commit(); # 返回刮刮乐图标、金额、订单id @@ -164,6 +168,7 @@ class Zone $groupNum = 4; // 要生成的图案组数 $data = []; + $save_data = []; for ($i = 0; $i < $numberOfGroups; $i++) { for ($j = 0; $j < $groupNum; $j++) { // 每组生成 3 个图案 @@ -177,7 +182,11 @@ class Zone } } - $data[$i] = [ + $data[$i][] = [ + 'amount' => $selectedPattern['amount'], + 'image' => get_image_url($selectedPattern['image']) + ]; + $save_data[$i][] = [ 'id' => $selectedPattern['id'], 'amount' => $selectedPattern['amount'], 'image' => get_image_url($selectedPattern['image']) @@ -185,6 +194,9 @@ class Zone } } - return $data; + return [ + 'data' => $data, + 'save_data' => $save_data + ]; } } \ No newline at end of file diff --git a/app/model/ZoneGoodsParam.php b/app/model/ZoneGoodsParam.php index 651e8c9..bfa366e 100644 --- a/app/model/ZoneGoodsParam.php +++ b/app/model/ZoneGoodsParam.php @@ -18,16 +18,17 @@ class ZoneGoodsParam extends Model public static function getList($where = []) { $where['status'] = 1; - $list = self::where($where)->field('amount,image,probability,awards')->select()->toArray(); + $list = self::where($where)->field('id,amount,image,probability,awards')->select()->toArray(); $ZoneAmountParam = []; foreach ($list as &$item) { - $item['image'] = get_image_url($item['image']); + if ($item['image']) $item['image'] = get_image_url($item['image']); if ($item['awards'] != 1) { # 获取无奖项随机金额 - $item['amount'] = ZoneAmountParam::getRandAmount($ZoneAmountParam); - $ZoneAmountParam = $item['data']; + $res = ZoneAmountParam::getRandAmount($ZoneAmountParam); + $item['amount'] = $res['amount']; + $ZoneAmountParam = $res['data']; } } return $list; diff --git a/route/app.php b/route/app.php index 1305184..c455dfa 100644 --- a/route/app.php +++ b/route/app.php @@ -34,9 +34,9 @@ Route::group('user',function (){ Route::group('zone',function(){ Route::get('zoneList','zone/zoneList'); - Route::post('zoneGoodsList/:zoneId','zone/zoneGoodsList'); - Route::get('beginLottery/:zoneGoodsId','zone/beginLottery'); - Route::get('endLottery/:c_r_id','zone/endLottery'); + Route::post('zoneGoodsList/:zoneId','zone/zoneGoodsList')->middleware(CheckToken::class); + Route::post('beginLottery/:zoneGoodsId','zone/beginLottery'); + Route::post('endLottery/:c_r_id','zone/endLottery'); });