<?php
namespace App\Controllers\Kewilayahan\Sebaran;

class Pengampu extends \App\Controllers\Kewilayahan\Kytp

{
    protected function data($request, $jenis)
    {
        ini_set('max_input_vars', 3000);
        $opsiWilZona     = $request->getPost('opsiWilZona');
        $adm4_pcode      = $request->getPost('adm4_pcode') ?? [];
        $id_poly_zona    = $request->getPost('id_poly_zona') ?? [];
        $nip_ar_perekam  = $request->getPost('nip_ar_perekam') ?? [];
        $nip_ar_pengampu = $request->getPost('nip_ar_pengampu') ?? [];

        $db = \Config\Database::connect();

        $npwp = $db->table('KPDL_MV_LOKASI_SUBJEK')->select("NM_KANTOR_PENGAMPU, count(DISTINCT NPWP) JML", false)
            ->groupBy("NM_KANTOR_PENGAMPU")->orderBy("JML", 'desc');

        switch ($jenis) {
            case 'assign':
                $npwp = $npwp->where("NPWP IS NOT NULL");
                break;
            case 'unassign':
                $npwp = $npwp->where("NPWP IS NOT NULL")
                    ->where("NIP_AR_PENGAMPU IS NULL");
                break;
            default:

                break;
        }

        if ($opsiWilZona == 'wilayah') {
            $npwp->whereIn('ADM4_PCODE', $adm4_pcode);
        }

        if ($opsiWilZona == 'zona') {
            $npwp->whereIn('ID_POLY_ZONA', $id_poly_zona);
        }

        if ($opsiWilZona == 'perekam') {
            $npwp = $npwp->whereIn('CREATED_BY', $nip_ar_perekam);
        }

        if ($opsiWilZona == 'pengampu') {
            $npwp = $npwp->whereIn('NIP_AR_PENGAMPU', $nip_ar_pengampu);
        }

        $data = $npwp->get()->getResult();

        $ret = [];

        foreach ($data as $b) {

            array_push($ret, ['name' => $b->NM_KANTOR_PENGAMPU,
                // 'color'                  => ,
                'y'                      => floatval($b->JML),
            ]
            );
        }

        return $ret;
    }
}