fix(shopro): 修复活动商品价格设置错误

- 将 Activity 控制器中的 original_price 字段赋值从 price 改为 cost
- 在 Game 控制器中添加团队排名和个人排名接口
This commit is contained in:
2025-05-31 20:10:54 +08:00
parent 681af2a1ca
commit 2a1cec7909
2 changed files with 32 additions and 2 deletions

View File

@@ -103,7 +103,7 @@ class Activity extends Base
$goods->dispatch_type = 'autosend';
$goods->dispatch_id = 2;
$goods->is_sku = 0;
$goods->original_price = $params['price'][$key];
$goods->original_price = $params['cost'][$key];
$goods->price = $params['cost'][$key];
$goods->save();
$this->zySku($goods, 'add');

View File

@@ -378,7 +378,6 @@ class Game extends Base
$u->save();
}
$undone = GameMatch::where('level', $match['level'])->where('winner', null)->count();
df($undone);
if ($undone == 0) { //所有比赛完成,开启下一轮比赛
$gameClass = 'format\\Game' . $game['team_type'] . $game['rule_type'];
if (!class_exists($gameClass)) {
@@ -402,4 +401,35 @@ class Game extends Base
$this->success('Success');
}
// 团队排名
public function teamRank()
{
$params = $this->request->param();
$game = $this->model->get($params['game_id']) ?? null;
if (empty($game)) {
$this->error('比赛不存在');
}
$match = GameMatch::field('*,GREATEST(scoreA,scoreB) as score')->where('game_id', $game['id'])->order(['level' => 'desc', 'score' => 'desc'])->select();
$this->success('Success', $match);
}
// 个人排名
public function rank()
{
$params = $this->request->param();
$game = $this->model->get($params['game_id']) ?? null;
if (empty($game)) {
$this->error('比赛不存在');
}
$list = Participant::where('game_id', $game['id'])->order('score', 'desc')->select();
$rank = 1;
foreach ($list as &$l) {
$l['rank'] = $rank;
$rank += 1;
}
$this->success('Success', $list);
}
}