- Add HJF jobs, services, DAOs, models, admin/API controllers, release command - Respect brokerage_timing (on_pay vs confirm); dispatch HjfOrderPayJob for queue goods - Queue-only cycle commission and position index fix in StoreOrderCreateServices - UserBill income types: frozen_points_brokerage, frozen_points_release - Timer: fsgx_release_frozen_points -> PointsReleaseServices - Agent tasks: no_assess filtering for direct/umbrella counts - Migrations: queue_pool, points_release_log, fsgx_v1 checklist updates - Admin/uniapp: crontab preset, membership level, user list, finance routes, docs Made-with: Cursor
65 lines
1.5 KiB
PHP
65 lines
1.5 KiB
PHP
<?php
|
|
declare(strict_types=1);
|
|
|
|
namespace app\controller\api\v1\hjf;
|
|
|
|
use app\Request;
|
|
use app\services\hjf\HjfAssetsServices;
|
|
use think\annotation\Inject;
|
|
|
|
/**
|
|
* 用户端 · 资产接口
|
|
*
|
|
* GET /api/hjf/assets/overview — 资产总览(余额 + 积分)
|
|
* GET /api/hjf/assets/cash/detail — 现金流水(分页)
|
|
*
|
|
* Class AssetsController
|
|
* @package app\controller\api\v1\hjf
|
|
*/
|
|
class AssetsController
|
|
{
|
|
#[Inject]
|
|
protected HjfAssetsServices $assetsServices;
|
|
|
|
/**
|
|
* 资产总览
|
|
*
|
|
* @param Request $request
|
|
* @return mixed
|
|
*/
|
|
public function overview(Request $request): mixed
|
|
{
|
|
$uid = (int)$request->uid();
|
|
return app('json')->success(
|
|
$this->assetsServices->getOverview($uid)
|
|
);
|
|
}
|
|
|
|
/**
|
|
* 现金流水(分页)
|
|
*
|
|
* 查询参数:
|
|
* - type: '' | queue_refund | withdraw | recharge
|
|
* - page, limit
|
|
*
|
|
* @param Request $request
|
|
* @return mixed
|
|
*/
|
|
public function cashDetail(Request $request): mixed
|
|
{
|
|
$uid = (int)$request->uid();
|
|
$type = (string)$request->param('type', '');
|
|
$page = max(1, (int)$request->param('page', 1));
|
|
$limit = min(50, max(1, (int)$request->param('limit', 15)));
|
|
|
|
$validTypes = ['', 'queue_refund', 'withdraw', 'recharge', 'pay'];
|
|
if (!in_array($type, $validTypes, true)) {
|
|
$type = '';
|
|
}
|
|
|
|
return app('json')->success(
|
|
$this->assetsServices->getCashDetail($uid, $type, $page, $limit)
|
|
);
|
|
}
|
|
}
|