<?php

namespace app\controller\api;

use app\model\User;
use support\Request;

use App\Utils\ApiResponse;

use App\model\Carousel;
use App\model\Project;
use App\model\ProjectDetailed;
use App\model\ProjectRegister;
use App\model\Carouselad;
use App\model\VipLevel;
use App\dao\UserRewardDao;
use App\Utils\ApiResponseApp;
use Tinywan\Jwt\JwtToken;

use hg\apidoc\annotation as Apidoc;
use support\Db;

/**
 * @Apidoc\Title("用户vip控制器")
 */

class Vip_salaryController
{
    protected $noNeedLogin = ['get_project', 'get_projectdetailed', 'get_mechanism_list'];
    /**
     * @Apidoc\Title("1.0 获取当前用户vip等级")
     * @Apidoc\Url("api/vip_salary/product")
     * @Apidoc\Method("POST")
     */
    public function user_count(Request $request)
    {
        $user_id = $request->data['id'];
        $user = User::find($user_id);
        return ApiResponseApp::success(['user_count' => $user->vip_id]);
    }
    /**
     * @Apidoc\Title("1.0 获取vip等级赠送积分")
     * @Apidoc\Url("api/vip_salary/product")
     * @Apidoc\Method("POST")
     */
    public function product(Request $request)
    {
        $res = VipLevel::all();
        return ApiResponseApp::success($res);
    }

    /**
     * @Apidoc\Title("1.0 获取vip等级赠送积分")
     * @Apidoc\Url("api/vip_salary/check_status")
     * @Apidoc\Method("POST")
     */
    public function  check_status(Request $request)
    {
        //获取当前用户
        $user_id=$request->data['id'];
        $user=User::find($user_id);
        $datas = [
            [
                "vip_id" => 1,
                "status" => 0,
                '$userCount' => 0,
                "user_count" => 5
            ],
            [
                "vip_id" => 2,
                "status" => 0,
                '$userCount' => 0,
                "user_count" => 100
            ],
            [
                "vip_id" => 3,
                "status" => 0,
                '$userCount' => 0,
                "user_count" => 1000
            ],
            [
                "vip_id" => 4,
                "status" => 0,
                '$userCount' => 0,
                "user_count" => 2000
            ]
        ];
        // 遍历每个用户记录并更新 status 字段
        foreach ($datas as &$data) {
            if ($user->vip_id >= $data['user_count']) {
                $data['status'] = 1; // 满足条件时设置状态为1
            } else {
                $data['status'] = 0; // 不满足条件时设置状态为0
            }
        }
        return ApiResponseApp::success($datas);
    }
 /**
     * @Apidoc\Title("1.0 晋升奖励")
     * @Apidoc\Url("api/vip_salary/receive")
     * @Apidoc\Method("GET")
     */
    public function receive(Request $request)
    {
        $input = $request->all();
        $vip_id = $input['vip_id'];
 
        $user_id=$request->data['id'];

        $datas = [
            [
                "vip_id" => 1,
                "money" => 50,
            ],
            [
                "vip_id" => 2,
                "money" => 100,
            ],
            [
                "vip_id" => 3,
                "money" => 500,
            ],
            [
                "vip_id" => 4,
                "money" => 5000,
            ]
        ];
        $money = null;
        foreach ($datas as &$data) {
            if ($vip_id == $data['vip_id']) {
                $money = $data['money'];
                break;
            }
        }
        UserRewardDao::base($user_id, 6, $money, 'VIP'.$vip_id.'晋升奖励');
        return ApiResponseApp::success('领取成功');
    }
}