<?php

namespace App\Http\Controllers\Wap;

use App\Http\Models\BqFlow;
use App\Http\Models\FlowInfoTpl;
use App\Http\Models\FlowPlan;

use App\Http\Models\Role;
use App\Http\Models\Site;
use App\Http\Models\User;
use App\Http\Models\FlowStage;
use App\Http\Controllers\Controller;


class OptimizationFlowController extends Controller
{

    //流程报告
    public function index($siteIdBase64)
    {
        $siteId = base64_decode($siteIdBase64);
        $site = Site::query()->select(['id', 'cn_title'])->where(['id' => $siteId])->first();
        if (!$site) {
            return abort(404);
        }

        $roleScope = array_keys(FlowInfoTpl::RoleScope);
        unset($roleScope[1]); //删除客户
        $mapUsers = User::query()->select(['id', 'role_id', 'nickname'])->whereIn('role_id', $roleScope)->get()->keyBy('id')->toArray();

        $site = Site::query()->select(['cn_title'])->find($siteId);

        $mapUsers['-1'] = ['id' => -1, 'role_id' => -1, 'nickname' => $site->cn_title ?? '站点名称'];

        $bqFlowInfo = BqFlow::query()->where(['site_id' => $siteId])
            ->with('bqFlowInfo')->get();

        return view('wap.optimization_flow', [
            'site' => $site,
            'stageList' => $bqFlowInfo,
            'mapUsers' => $mapUsers,
        ]);
    }
}