<?php

namespace app\admin\controller;

use app\model\Admins;
use support\Log;
use support\Redis;
use think\db\exception\DbException;

class WatchController extends base
{
    public static function watchIsWork()
    {
        $nowTime = time();
        $datas = Admins::order('create_time desc')->select();
        foreach ($datas as $data) {
            $item = [];
            $watch = Redis::get('CRM:USER:ONLINE:WATCH:'.$data->id);

            if (empty($data->start_work_time)){
                $item['start_work_time'] = $nowTime;
            }
            if (($nowTime - $watch) > 0 && ($nowTime - $watch) <= 6*60){
                $item['end_work_time'] = $nowTime;
            }
            Log::warning('watchIsWork',['data'=>$item]);
            if (!empty($item)){
                try {
                    Admins::where('id', $data->id)->update($item);
                } catch (DbException $e) {
                    Log::error('watchIsWork',['error'=>$e]);
                    continue;
                }
            }
        }
        echo "========watchIsWork end======\n";
        return;
    }
}