[色子游戏]玩家钱包流水记录

This commit is contained in:
2026-03-03 14:10:07 +08:00
parent 439f01ee6c
commit d214ccc2ba
8 changed files with 707 additions and 0 deletions

View File

@@ -0,0 +1,124 @@
<?php
// +----------------------------------------------------------------------
// | saiadmin [ saiadmin快速开发框架 ]
// +----------------------------------------------------------------------
// | Author: your name
// +----------------------------------------------------------------------
namespace app\dice\controller\player_wallet_record;
use plugin\saiadmin\basic\BaseController;
use app\dice\logic\player_wallet_record\DicePlayerWalletRecordLogic;
use app\dice\validate\player_wallet_record\DicePlayerWalletRecordValidate;
use plugin\saiadmin\service\Permission;
use support\Request;
use support\Response;
/**
* 玩家钱包流水控制器
*/
class DicePlayerWalletRecordController extends BaseController
{
/**
* 构造函数
*/
public function __construct()
{
$this->logic = new DicePlayerWalletRecordLogic();
$this->validate = new DicePlayerWalletRecordValidate;
parent::__construct();
}
/**
* 数据列表
* @param Request $request
* @return Response
*/
#[Permission('玩家钱包流水列表', 'dice:player_wallet_record:index:index')]
public function index(Request $request): Response
{
$where = $request->more([
['type', ''],
]);
$query = $this->logic->search($where);
$query->with([
'dicePlayer',
]);
$data = $this->logic->getList($query);
return $this->success($data);
}
/**
* 读取数据
* @param Request $request
* @return Response
*/
#[Permission('玩家钱包流水读取', 'dice:player_wallet_record:index:read')]
public function read(Request $request): Response
{
$id = $request->input('id', '');
$model = $this->logic->read($id);
if ($model) {
$data = is_array($model) ? $model : $model->toArray();
return $this->success($data);
} else {
return $this->fail('未查找到信息');
}
}
/**
* 保存数据
* @param Request $request
* @return Response
*/
#[Permission('玩家钱包流水添加', 'dice:player_wallet_record:index:save')]
public function save(Request $request): Response
{
$data = $request->post();
$this->validate('save', $data);
$result = $this->logic->add($data);
if ($result) {
return $this->success('添加成功');
} else {
return $this->fail('添加失败');
}
}
/**
* 更新数据
* @param Request $request
* @return Response
*/
#[Permission('玩家钱包流水修改', 'dice:player_wallet_record:index:update')]
public function update(Request $request): Response
{
$data = $request->post();
$this->validate('update', $data);
$result = $this->logic->edit($data['id'], $data);
if ($result) {
return $this->success('修改成功');
} else {
return $this->fail('修改失败');
}
}
/**
* 删除数据
* @param Request $request
* @return Response
*/
#[Permission('玩家钱包流水删除', 'dice:player_wallet_record:index:destroy')]
public function destroy(Request $request): Response
{
$ids = $request->post('ids', '');
if (empty($ids)) {
return $this->fail('请选择要删除的数据');
}
$result = $this->logic->destroy($ids);
if ($result) {
return $this->success('删除成功');
} else {
return $this->fail('删除失败');
}
}
}

View File

@@ -0,0 +1,27 @@
<?php
// +----------------------------------------------------------------------
// | saiadmin [ saiadmin快速开发框架 ]
// +----------------------------------------------------------------------
// | Author: your name
// +----------------------------------------------------------------------
namespace app\dice\logic\player_wallet_record;
use plugin\saiadmin\basic\think\BaseLogic;
use plugin\saiadmin\exception\ApiException;
use plugin\saiadmin\utils\Helper;
use app\dice\model\player_wallet_record\DicePlayerWalletRecord;
/**
* 玩家钱包流水逻辑层
*/
class DicePlayerWalletRecordLogic extends BaseLogic
{
/**
* 构造函数
*/
public function __construct()
{
$this->model = new DicePlayerWalletRecord();
}
}

View File

@@ -0,0 +1,51 @@
<?php
// +----------------------------------------------------------------------
// | saiadmin [ saiadmin快速开发框架 ]
// +----------------------------------------------------------------------
// | Author: your name
// +----------------------------------------------------------------------
namespace app\dice\model\player_wallet_record;
use app\dice\model\player\DicePlayer;
use plugin\saiadmin\basic\think\BaseModel;
/**
* 玩家钱包流水模型
*
* dice_player_wallet_record 玩家钱包流水记录
*
* @property $id ID
* @property $player_id 用户id
* @property $coin 平台币变化
* @property $type 类型
* @property $wallet_before 钱包操作前
* @property $wallet_after 钱包操作后
* @property $total_draw_count 总抽奖次数
* @property $paid_draw_count 购买抽奖次数
* @property $free_draw_count 赠送抽奖次数
* @property $create_time 创建时间
* @property $update_time 修改时间
*/
class DicePlayerWalletRecord extends BaseModel
{
/**
* 数据表主键
* @var string
*/
protected $pk = 'id';
/**
* 数据库表名称
* @var string
*/
protected $table = 'dice_player_wallet_record';
/**
* 关联模型 dicePlayer
*/
public function dicePlayer(): \think\model\relation\HasOne
{
return $this->hasOne(DicePlayer::class, 'id', 'player_id');
}
}

View File

@@ -0,0 +1,62 @@
<?php
// +----------------------------------------------------------------------
// | saiadmin [ saiadmin快速开发框架 ]
// +----------------------------------------------------------------------
// | Author: your name
// +----------------------------------------------------------------------
namespace app\dice\validate\player_wallet_record;
use plugin\saiadmin\basic\BaseValidate;
/**
* 玩家钱包流水验证器
*/
class DicePlayerWalletRecordValidate extends BaseValidate
{
/**
* 定义验证规则
*/
protected $rule = [
'player_id' => 'require',
'coin' => 'require',
'type' => 'require',
'total_draw_count' => 'require',
'paid_draw_count' => 'require',
'free_draw_count' => 'require',
];
/**
* 定义错误信息
*/
protected $message = [
'player_id' => '用户id必须填写',
'coin' => '平台币变化必须填写',
'type' => '类型必须填写',
'total_draw_count' => '总抽奖次数必须填写',
'paid_draw_count' => '购买抽奖次数必须填写',
'free_draw_count' => '赠送抽奖次数必须填写',
];
/**
* 定义场景
*/
protected $scene = [
'save' => [
'player_id',
'coin',
'type',
'total_draw_count',
'paid_draw_count',
'free_draw_count',
],
'update' => [
'player_id',
'coin',
'type',
'total_draw_count',
'paid_draw_count',
'free_draw_count',
],
];
}