<?php

namespace App\Http\Middleware;

use App\Repositories\PmsRepository;
use App\Services\SubsiteService;
use Closure;
use Illuminate\Support\Facades\View;

/**
 * 分站检查
 * Class SubsiteCheck
 * @package App\Http\Middleware
 * Auth Zhong
 * Date 2019/2/22
 */
class CommmonPms
{
    /**
     * @var SubsiteService
     */
    private $pmsRepository;

    /**
     * SubsiteCheck constructor.
     * @param SubsiteService $subsiteService
     */
    public function __construct(PmsRepository $pmsRepository)
    {
        $this->pmsRepository = $pmsRepository;
    }

    /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @return mixed
     */
    public function handle($request, Closure $next)
    {
        $sid = false;
        $pms = 0;
        if(auth('web-member')->check()){
            $msgtouid = auth('web-member')->user()->id;
            $utype = auth('web-member')->user()->utype;
            $sid = true;
        }elseif (auth('web-company')->check()){
            $msgtouid = auth('web-company')->user()->id;
            $utype = auth('web-company')->user()->utype;
            $sid = true;
        }

        if ($sid){
            $condition4 = [
                'msgtouid' => $msgtouid,
                'utype' => $utype,
                'new'=>1,
            ];
            $pms = $this->pmsRepository->getPmsCount($condition4);
        }
        View::share('pmsNum', $pms);
        return $next($request);
    }
}