<?php

namespace app\adminapi\controller\user;

use app\adminapi\controller\BaseAdminController;
use app\adminapi\lists\user\UserLists;
use app\adminapi\logic\user\UserLogic;
use app\common\model\systems\System;
use app\common\validate\user\UserBalanceValidate;
use app\common\validate\user\UserIntegralValidate;
use app\common\validate\user\UserValidate;
use think\response\Json;

class UserController extends BaseAdminController
{
    // 用户列表
    public function lists(): Json
    {
        return $this->dataLists(new UserLists());
    }

    // 获取用户详情
    public function detail(): Json
    {
        $params = (new UserValidate())->goCheck('detail');
        $detail = UserLogic::detail($params['id']);
        return $this->success('', $detail);
    }

    // 获取用户余额列表
    public function balance(): Json
    {
        //获取参数
        $params = (new UserBalanceValidate())->get()->goCheck('list');
        $data = UserLogic::balanceList($params);
        return $this->success('', $data);
    }

    // 获取用户积分列表
    public function integral():Json
    {
        //获取参数
        $params = (new UserIntegralValidate())->get()->goCheck('list');
        $data = UserLogic::integralList($params);
        return $this->success('', $data);
    }

    // 获取应用列表
    public function apps(): Json
    {
        $data = System::field('id as appid,name')->select();
        return $this->success('请求成功',$data->toArray());
    }
}