<?php

namespace app\admin\controller;

use app\admin\middleware\Auth;
use app\admin\middleware\Login;
use app\Request;
use app\common\model\Message as MessageModel;

class Message extends Base
{
    /**
     * 中间件校验
     * @var array[]
     */
    protected $middleware = [
        Login::class => ['except' => ['']],
        Auth::class => ['except' => ['']],
    ];


    /**
     * 列表
     * @param Request $request
     */
    public function list(Request $request)
    {
        $param = $request->param();

        return $this->success([]);
    }

    /**
     * 更新阅读状态
     * @param Request $request
     * @return void
     */
    public function edit(Request $request)
    {
        $param = $request->param();
        $this->autoValid(\app\admin\validate\Message::class, $param, $request->action());
        $array['is_read'] = 1;
        (new MessageModel)->where('id', 'in', $param['ids'])->save($array);
        return $this->success();
    }

    /**
     * 删除/批量删除
     * @param Request $request
     * @return void
     */
    public function del(Request $request)
    {
        $param = $request->param();
        $this->autoValid(\app\admin\validate\Message::class, $param, $request->action());
        $ids = explode(',', $param['ids']);
        foreach ($ids as $item) {
            $machine = (new MessageModel())->detail($item);
            if (!$machine) {
                $this->error('记录未找到或已删除');
            }
        }
        $res = MessageModel::doDelStatic($param['ids']);

        if (!$res) {
            $this->error();
        }
        return $this->success();
    }
}