<?php

namespace App\Http\Controllers\Api\Wechat;

use Aix\Sms\Contracts\Smser;
use App\Http\Controllers\Api\ApiBaseController;
use App\Models\SmsTemplate;
use App\Services\Common\SmsService;
use App\Services\Common\WechatService;
use App\Wechat\Official\EventHandle;
use EasyWeChat\Kernel\Messages\Message;
use Illuminate\Support\Facades\Cache;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Hash;

class TestController extends ApiBaseController
{
    /**
     * @var WechatService
     */
    private $wechatService;

    /**
     * OfficialController constructor.
     * @param WechatService $wechatService
     */
    public function __construct(WechatService $wechatService)
    {
        $this->wechatService = $wechatService;
    }

    public function index()
    {
        $official = $this->wechatService->getOfficialAccount();
        $official->server->push(EventHandle::class, Message::EVENT);


        return $official->server->serve();
    }

    public function pushMenu()
    {
        $official = $this->wechatService->getOfficialAccount();
        $menu     = [
            [
                "name"       => "个人服务",
                "sub_button" => [
                    [
                        "type" => "click",
                        "name" => "刷新简历",
                        "key"  => "PersonResumeRefresh",
                    ],
                    [
                        "type" => "view",
                        "name" => "面试邀请",
                        "url"  => route('mobile.auth.thirdlogin.official')
                            . '?redirect_url=' . urlencode(route('mobile.person.jobs_interview')),
                    ],
                    [
                        "type" => "view",
                        "name" => "投递反馈",
                        "url"  => route('mobile.auth.thirdlogin.official')
                            . '?redirect_url=' . urlencode(route('mobile.person.apply_jobs')),
                    ],
                    [
                        "type" => "view",
                        "name" => "职位搜索",
                        "url"  => route('mobile.auth.thirdlogin.official')
                            . '?redirect_url=' . urlencode(route('mobile.jobs')),
                    ],
                    [
                        "type" => "view",
                        "name" => "个人中心",
                        "url"  => route('mobile.auth.thirdlogin.official')
                            . '?redirect_url=' . urlencode(route('mobile.person.index')),
                    ],
                ],
            ],
            [
                "name"       => "企业服务",
                "sub_button" => [
                    [
                        "type" => "click",
                        "name" => "刷新职位",
                        "key"  => "CompanyJobRefresh",
                    ],
                    [
                        "type" => "view",
                        "name" => "职位管理",
                        "url"  => route('mobile.auth.thirdlogin.official')
                            . '?redirect_url=' . urlencode(route('mobile.firm.jobs.list')),
                    ],
                    [
                        "type" => "view",
                        "name" => "应聘简历",
                        "url"  => route('mobile.auth.thirdlogin.official')
                            . '?redirect_url=' . urlencode(route('mobile.firm.resume.apply')),
                    ],
                    [
                        "type" => "view",
                        "name" => "简历搜索",
                        "url"  => route('mobile.auth.thirdlogin.official')
                            . '?redirect_url=' . urlencode(route('mobile.resumes')),
                    ],
                ],
            ],
            [
                "name"       => "更多精彩",
                "sub_button" => [
                    [
                        "type" => "click",
                        "name" => "每日签到",
                        "key"  => "EverydaySignIn",
                    ],
                    [
                        "type" => "view",
                        "name" => "账号绑定",
                        "url"  => route('mobile.auth.thirdlogin.official'),
                    ],
                    [
                        "type" => "view",
                        "name" => "最近招聘会",
                        "url"  => route('mobile.auth.thirdlogin.official')
                            . '?redirect_url=' . urlencode(route('mobile.jobfair.index')),
                    ],
                    [
                        "type" => "view",
                        "name" => "进入官网",
                        "url"  => route('mobile.home'),
                    ],
                ],
            ],
        ];
        $official->menu->create($menu);
    }

    public function smsTest(SmsService $smsService)
    {
        SmsTemplate::buyHouseCheck('rs');
//        $smsService->sendSms('13313826760', Smser::TEMPLATE_JOBFAIR_APPLY_ERROR, ['jobfair_name'=>'职业名称']);
//        $smsService->sendSms('13313826760', 'sms_buyhouse_supply', ['name' => '林武', 'month' => 7, 'day' => 23]);
    }
}