diff --git a/DataTables/CityDataTable.php b/DataTables/CityDataTable.php index a77bbc7..4752383 100644 --- a/DataTables/CityDataTable.php +++ b/DataTables/CityDataTable.php @@ -17,6 +17,7 @@ */ public function dataTable($query) { + $query = City::with('province.country'); return datatables() ->eloquent($query) @@ -33,11 +34,12 @@ }) ->addIndexColumn() ->addColumn('status', function ($model) { - return $model->status == 1 ? 'Active' : 'Inactive'; + return view('master::city._status', compact('model')); }) ->addColumn('action', function ($model) { return view('master::city._action', compact('model')); - }); + }) + ->rawColumns(['status', 'action']); } /** @@ -60,10 +62,10 @@ public function html() { return $this->builder() - ->setTableId('city-table') + ->setTableId('master-city-table') ->columns($this->getColumns()) ->minifiedAjax() - ->orderBy(1, 'asc') + ->orderBy(3, 'asc') ->stateSave(false) ->responsive() ->autoWidth(false) @@ -85,9 +87,9 @@ Column::make('DT_RowIndex')->title('No')->orderable(false)->searchable(false), Column::make('province.country.name')->title(__('Country')), Column::make('province.name')->title(__('Province')), - Column::make('code')->title(__('Code')), + Column::make('code')->title(__('Area Code')), Column::make('name')->title(__('Name')), - Column::computed('status')->title(__('Status'))->width(50)->addClass('text-center')->exportable(false), + Column::computed('status')->title(__('Status'))->width(50)->addClass('text-center')->exportable(false), Column::computed('action') ->exportable(false) ->printable(false) diff --git a/Database/Seeders/CitySeeder.php b/Database/Seeders/CitySeeder.php new file mode 100644 index 0000000..1bff785 --- /dev/null +++ b/Database/Seeders/CitySeeder.php @@ -0,0 +1,554 @@ +data(); + + foreach ($data as $value) { + City::create([ + 'province_id' => $this->getProvinceId($value['province']), + 'code' => $value['code'], + 'name' => $value['name'], + ]); + } + } + + public function data() + { + return [ + ['province' => 11, 'code' => '11.01', 'name' => 'KAB. ACEH SELATAN'], + ['province' => 11, 'code' => '11.02', 'name' => 'KAB. ACEH TENGGARA'], + ['province' => 11, 'code' => '11.03', 'name' => 'KAB. ACEH TIMUR'], + ['province' => 11, 'code' => '11.04', 'name' => 'KAB. ACEH TENGAH'], + ['province' => 11, 'code' => '11.05', 'name' => 'KAB. ACEH BARAT'], + ['province' => 11, 'code' => '11.06', 'name' => 'KAB. ACEH BESAR'], + ['province' => 11, 'code' => '11.07', 'name' => 'KAB. PIDIE'], + ['province' => 11, 'code' => '11.08', 'name' => 'KAB. ACEH UTARA'], + ['province' => 11, 'code' => '11.09', 'name' => 'KAB. SIMEULUE'], + ['province' => 11, 'code' => '11.10', 'name' => 'KAB. ACEH SINGKIL'], + ['province' => 11, 'code' => '11.11', 'name' => 'KAB. BIREUEN'], + ['province' => 11, 'code' => '11.12', 'name' => 'KAB. ACEH BARAT DAYA'], + ['province' => 11, 'code' => '11.13', 'name' => 'KAB. GAYO LUES'], + ['province' => 11, 'code' => '11.14', 'name' => 'KAB. ACEH JAYA'], + ['province' => 11, 'code' => '11.15', 'name' => 'KAB. NAGAN RAYA'], + ['province' => 11, 'code' => '11.16', 'name' => 'KAB. ACEH TAMIANG'], + ['province' => 11, 'code' => '11.17', 'name' => 'KAB. BENER MERIAH'], + ['province' => 11, 'code' => '11.18', 'name' => 'KAB. PIDIE JAYA'], + ['province' => 11, 'code' => '11.71', 'name' => 'KOTA BANDA ACEH'], + ['province' => 11, 'code' => '11.72', 'name' => 'KOTA SABANG'], + ['province' => 11, 'code' => '11.73', 'name' => 'KOTA LHOKSEUMAWE'], + ['province' => 11, 'code' => '11.74', 'name' => 'KOTA LANGSA'], + ['province' => 11, 'code' => '11.75', 'name' => 'KOTA SUBULUSSALAM'], + ['province' => 12, 'code' => '12.01', 'name' => 'KAB. TAPANULI TENGAH'], + ['province' => 12, 'code' => '12.02', 'name' => 'KAB. TAPANULI UTARA'], + ['province' => 12, 'code' => '12.03', 'name' => 'KAB. TAPANULI SELATAN'], + ['province' => 12, 'code' => '12.04', 'name' => 'KAB. NIAS'], + ['province' => 12, 'code' => '12.05', 'name' => 'KAB. LANGKAT'], + ['province' => 12, 'code' => '12.06', 'name' => 'KAB. KARO'], + ['province' => 12, 'code' => '12.07', 'name' => 'KAB. DELI SERDANG'], + ['province' => 12, 'code' => '12.08', 'name' => 'KAB. SIMALUNGUN'], + ['province' => 12, 'code' => '12.09', 'name' => 'KAB. ASAHAN'], + ['province' => 12, 'code' => '12.10', 'name' => 'KAB. LABUHANBATU'], + ['province' => 12, 'code' => '12.11', 'name' => 'KAB. DAIRI'], + ['province' => 12, 'code' => '12.12', 'name' => 'KAB. TOBA'], + ['province' => 12, 'code' => '12.13', 'name' => 'KAB. MANDAILING NATAL'], + ['province' => 12, 'code' => '12.14', 'name' => 'KAB. NIAS SELATAN'], + ['province' => 12, 'code' => '12.15', 'name' => 'KAB. PAKPAK BHARAT'], + ['province' => 12, 'code' => '12.16', 'name' => 'KAB. HUMBANG HASUNDUTAN'], + ['province' => 12, 'code' => '12.17', 'name' => 'KAB. SAMOSIR'], + ['province' => 12, 'code' => '12.18', 'name' => 'KAB. SERDANG BEDAGAI'], + ['province' => 12, 'code' => '12.19', 'name' => 'KAB. BATU BARA'], + ['province' => 12, 'code' => '12.20', 'name' => 'KAB. PADANG LAWAS UTARA'], + ['province' => 12, 'code' => '12.21', 'name' => 'KAB. PADANG LAWAS'], + ['province' => 12, 'code' => '12.22', 'name' => 'KAB. LABUHANBATU SELATAN'], + ['province' => 12, 'code' => '12.23', 'name' => 'KAB. LABUHANBATU UTARA'], + ['province' => 12, 'code' => '12.24', 'name' => 'KAB. NIAS UTARA'], + ['province' => 12, 'code' => '12.25', 'name' => 'KAB. NIAS BARAT'], + ['province' => 12, 'code' => '12.71', 'name' => 'KOTA MEDAN'], + ['province' => 12, 'code' => '12.72', 'name' => 'KOTA PEMATANGSIANTAR'], + ['province' => 12, 'code' => '12.73', 'name' => 'KOTA SIBOLGA'], + ['province' => 12, 'code' => '12.74', 'name' => 'KOTA TANJUNG BALAI'], + ['province' => 12, 'code' => '12.75', 'name' => 'KOTA BINJAI'], + ['province' => 12, 'code' => '12.76', 'name' => 'KOTA TEBING TINGGI'], + ['province' => 12, 'code' => '12.77', 'name' => 'KOTA PADANGSIDIMPUAN'], + ['province' => 12, 'code' => '12.78', 'name' => 'KOTA GUNUNGSITOLI'], + ['province' => 13, 'code' => '13.01', 'name' => 'KAB. PESISIR SELATAN'], + ['province' => 13, 'code' => '13.02', 'name' => 'KAB. SOLOK'], + ['province' => 13, 'code' => '13.03', 'name' => 'KAB. SIJUNJUNG'], + ['province' => 13, 'code' => '13.04', 'name' => 'KAB. TANAH DATAR'], + ['province' => 13, 'code' => '13.05', 'name' => 'KAB. PADANG PARIAMAN'], + ['province' => 13, 'code' => '13.06', 'name' => 'KAB. AGAM'], + ['province' => 13, 'code' => '13.07', 'name' => 'KAB. LIMA PULUH KOTA'], + ['province' => 13, 'code' => '13.08', 'name' => 'KAB. PASAMAN'], + ['province' => 13, 'code' => '13.09', 'name' => 'KAB. KEPULAUAN MENTAWAI'], + ['province' => 13, 'code' => '13.10', 'name' => 'KAB. DHARMASRAYA'], + ['province' => 13, 'code' => '13.11', 'name' => 'KAB. SOLOK SELATAN'], + ['province' => 13, 'code' => '13.12', 'name' => 'KAB. PASAMAN BARAT'], + ['province' => 13, 'code' => '13.71', 'name' => 'KOTA PADANG'], + ['province' => 13, 'code' => '13.72', 'name' => 'KOTA SOLOK'], + ['province' => 13, 'code' => '13.73', 'name' => 'KOTA SAWAHLUNTO'], + ['province' => 13, 'code' => '13.74', 'name' => 'KOTA PADANG PANJANG'], + ['province' => 13, 'code' => '13.75', 'name' => 'KOTA BUKITTINGGI'], + ['province' => 13, 'code' => '13.76', 'name' => 'KOTA PAYAKUMBUH'], + ['province' => 13, 'code' => '13.77', 'name' => 'KOTA PARIAMAN'], + ['province' => 14, 'code' => '14.01', 'name' => 'KAB. KAMPAR'], + ['province' => 14, 'code' => '14.02', 'name' => 'KAB. INDRAGIRI HULU'], + ['province' => 14, 'code' => '14.03', 'name' => 'KAB. BENGKALIS'], + ['province' => 14, 'code' => '14.04', 'name' => 'KAB. INDRAGIRI HILIR'], + ['province' => 14, 'code' => '14.05', 'name' => 'KAB. PELALAWAN'], + ['province' => 14, 'code' => '14.06', 'name' => 'KAB. ROKAN HULU'], + ['province' => 14, 'code' => '14.07', 'name' => 'KAB. ROKAN HILIR'], + ['province' => 14, 'code' => '14.08', 'name' => 'KAB. SIAK'], + ['province' => 14, 'code' => '14.09', 'name' => 'KAB. KUANTAN SINGINGI'], + ['province' => 14, 'code' => '14.10', 'name' => 'KAB. KEPULAUAN MERANTI'], + ['province' => 14, 'code' => '14.71', 'name' => 'KOTA PEKANBARU'], + ['province' => 14, 'code' => '14.72', 'name' => 'KOTA DUMAI'], + ['province' => 15, 'code' => '15.01', 'name' => 'KAB. KERINCI'], + ['province' => 15, 'code' => '15.02', 'name' => 'KAB. MERANGIN'], + ['province' => 15, 'code' => '15.03', 'name' => 'KAB. SAROLANGUN'], + ['province' => 15, 'code' => '15.04', 'name' => 'KAB. BATANGHARI'], + ['province' => 15, 'code' => '15.05', 'name' => 'KAB. MUARO JAMBI'], + ['province' => 15, 'code' => '15.06', 'name' => 'KAB. TANJUNG JABUNG BARAT'], + ['province' => 15, 'code' => '15.07', 'name' => 'KAB. TANJUNG JABUNG TIMUR'], + ['province' => 15, 'code' => '15.08', 'name' => 'KAB. BUNGO'], + ['province' => 15, 'code' => '15.09', 'name' => 'KAB. TEBO'], + ['province' => 15, 'code' => '15.71', 'name' => 'KOTA JAMBI'], + ['province' => 15, 'code' => '15.72', 'name' => 'KOTA SUNGAI PENUH'], + ['province' => 16, 'code' => '16.01', 'name' => 'KAB. OGAN KOMERING ULU'], + ['province' => 16, 'code' => '16.02', 'name' => 'KAB. OGAN KOMERING ILIR'], + ['province' => 16, 'code' => '16.03', 'name' => 'KAB. MUARA ENIM'], + ['province' => 16, 'code' => '16.04', 'name' => 'KAB. LAHAT'], + ['province' => 16, 'code' => '16.05', 'name' => 'KAB. MUSI RAWAS'], + ['province' => 16, 'code' => '16.06', 'name' => 'KAB. MUSI BANYUASIN'], + ['province' => 16, 'code' => '16.07', 'name' => 'KAB. BANYUASIN'], + ['province' => 16, 'code' => '16.08', 'name' => 'KAB. OGAN KOMERING ULU TIMUR'], + ['province' => 16, 'code' => '16.09', 'name' => 'KAB. OGAN KOMERING ULU SELATAN'], + ['province' => 16, 'code' => '16.10', 'name' => 'KAB. OGAN ILIR'], + ['province' => 16, 'code' => '16.11', 'name' => 'KAB. EMPAT LAWANG'], + ['province' => 16, 'code' => '16.12', 'name' => 'KAB. PENUKAL ABAB LEMATANG ILIR'], + ['province' => 16, 'code' => '16.13', 'name' => 'KAB. MUSI RAWAS UTARA'], + ['province' => 16, 'code' => '16.71', 'name' => 'KOTA PALEMBANG'], + ['province' => 16, 'code' => '16.72', 'name' => 'KOTA PAGAR ALAM'], + ['province' => 16, 'code' => '16.73', 'name' => 'KOTA LUBUK LINGGAU'], + ['province' => 16, 'code' => '16.74', 'name' => 'KOTA PRABUMULIH'], + ['province' => 17, 'code' => '17.01', 'name' => 'KAB. BENGKULU SELATAN'], + ['province' => 17, 'code' => '17.02', 'name' => 'KAB. REJANG LEBONG'], + ['province' => 17, 'code' => '17.03', 'name' => 'KAB. BENGKULU UTARA'], + ['province' => 17, 'code' => '17.04', 'name' => 'KAB. KAUR'], + ['province' => 17, 'code' => '17.05', 'name' => 'KAB. SELUMA'], + ['province' => 17, 'code' => '17.06', 'name' => 'KAB. MUKO MUKO'], + ['province' => 17, 'code' => '17.07', 'name' => 'KAB. LEBONG'], + ['province' => 17, 'code' => '17.08', 'name' => 'KAB. KEPAHIANG'], + ['province' => 17, 'code' => '17.09', 'name' => 'KAB. BENGKULU TENGAH'], + ['province' => 17, 'code' => '17.71', 'name' => 'KOTA BENGKULU'], + ['province' => 18, 'code' => '18.01', 'name' => 'KAB. LAMPUNG SELATAN'], + ['province' => 18, 'code' => '18.02', 'name' => 'KAB. LAMPUNG TENGAH'], + ['province' => 18, 'code' => '18.03', 'name' => 'KAB. LAMPUNG UTARA'], + ['province' => 18, 'code' => '18.04', 'name' => 'KAB. LAMPUNG BARAT'], + ['province' => 18, 'code' => '18.05', 'name' => 'KAB. TULANG BAWANG'], + ['province' => 18, 'code' => '18.06', 'name' => 'KAB. TANGGAMUS'], + ['province' => 18, 'code' => '18.07', 'name' => 'KAB. LAMPUNG TIMUR'], + ['province' => 18, 'code' => '18.08', 'name' => 'KAB. WAY KANAN'], + ['province' => 18, 'code' => '18.09', 'name' => 'KAB. PESAWARAN'], + ['province' => 18, 'code' => '18.10', 'name' => 'KAB. PRINGSEWU'], + ['province' => 18, 'code' => '18.11', 'name' => 'KAB. MESUJI'], + ['province' => 18, 'code' => '18.12', 'name' => 'KAB. TULANG BAWANG BARAT'], + ['province' => 18, 'code' => '18.13', 'name' => 'KAB. PESISIR BARAT'], + ['province' => 18, 'code' => '18.71', 'name' => 'KOTA BANDAR LAMPUNG'], + ['province' => 18, 'code' => '18.72', 'name' => 'KOTA METRO'], + ['province' => 19, 'code' => '19.01', 'name' => 'KAB. BANGKA'], + ['province' => 19, 'code' => '19.02', 'name' => 'KAB. BELITUNG'], + ['province' => 19, 'code' => '19.03', 'name' => 'KAB. BANGKA SELATAN'], + ['province' => 19, 'code' => '19.04', 'name' => 'KAB. BANGKA TENGAH'], + ['province' => 19, 'code' => '19.05', 'name' => 'KAB. BANGKA BARAT'], + ['province' => 19, 'code' => '19.06', 'name' => 'KAB. BELITUNG TIMUR'], + ['province' => 19, 'code' => '19.71', 'name' => 'KOTA PANGKAL PINANG'], + ['province' => 21, 'code' => '21.01', 'name' => 'KAB. BINTAN'], + ['province' => 21, 'code' => '21.02', 'name' => 'KAB. KARIMUN'], + ['province' => 21, 'code' => '21.03', 'name' => 'KAB. NATUNA'], + ['province' => 21, 'code' => '21.04', 'name' => 'KAB. LINGGA'], + ['province' => 21, 'code' => '21.05', 'name' => 'KAB. KEPULAUAN ANAMBAS'], + ['province' => 21, 'code' => '21.71', 'name' => 'KOTA BATAM'], + ['province' => 21, 'code' => '21.72', 'name' => 'KOTA TANJUNG PINANG'], + ['province' => 31, 'code' => '31.01', 'name' => 'KAB. ADM. KEP. SERIBU'], + ['province' => 31, 'code' => '31.71', 'name' => 'KOTA ADM. JAKARTA PUSAT'], + ['province' => 31, 'code' => '31.72', 'name' => 'KOTA ADM. JAKARTA UTARA'], + ['province' => 31, 'code' => '31.73', 'name' => 'KOTA ADM. JAKARTA BARAT'], + ['province' => 31, 'code' => '31.74', 'name' => 'KOTA ADM. JAKARTA SELATAN'], + ['province' => 31, 'code' => '31.75', 'name' => 'KOTA ADM. JAKARTA TIMUR'], + ['province' => 32, 'code' => '32.01', 'name' => 'KAB. BOGOR'], + ['province' => 32, 'code' => '32.02', 'name' => 'KAB. SUKABUMI'], + ['province' => 32, 'code' => '32.03', 'name' => 'KAB. CIANJUR'], + ['province' => 32, 'code' => '32.04', 'name' => 'KAB. BANDUNG'], + ['province' => 32, 'code' => '32.05', 'name' => 'KAB. GARUT'], + ['province' => 32, 'code' => '32.06', 'name' => 'KAB. TASIKMALAYA'], + ['province' => 32, 'code' => '32.07', 'name' => 'KAB. CIAMIS'], + ['province' => 32, 'code' => '32.08', 'name' => 'KAB. KUNINGAN'], + ['province' => 32, 'code' => '32.09', 'name' => 'KAB. CIREBON'], + ['province' => 32, 'code' => '32.10', 'name' => 'KAB. MAJALENGKA'], + ['province' => 32, 'code' => '32.11', 'name' => 'KAB. SUMEDANG'], + ['province' => 32, 'code' => '32.12', 'name' => 'KAB. INDRAMAYU'], + ['province' => 32, 'code' => '32.13', 'name' => 'KAB. SUBANG'], + ['province' => 32, 'code' => '32.14', 'name' => 'KAB. PURWAKARTA'], + ['province' => 32, 'code' => '32.15', 'name' => 'KAB. KARAWANG'], + ['province' => 32, 'code' => '32.16', 'name' => 'KAB. BEKASI'], + ['province' => 32, 'code' => '32.17', 'name' => 'KAB. BANDUNG BARAT'], + ['province' => 32, 'code' => '32.18', 'name' => 'KAB. PANGANDARAN'], + ['province' => 32, 'code' => '32.71', 'name' => 'KOTA BOGOR'], + ['province' => 32, 'code' => '32.72', 'name' => 'KOTA SUKABUMI'], + ['province' => 32, 'code' => '32.73', 'name' => 'KOTA BANDUNG'], + ['province' => 32, 'code' => '32.74', 'name' => 'KOTA CIREBON'], + ['province' => 32, 'code' => '32.75', 'name' => 'KOTA BEKASI'], + ['province' => 32, 'code' => '32.76', 'name' => 'KOTA DEPOK'], + ['province' => 32, 'code' => '32.77', 'name' => 'KOTA CIMAHI'], + ['province' => 32, 'code' => '32.78', 'name' => 'KOTA TASIKMALAYA'], + ['province' => 32, 'code' => '32.79', 'name' => 'KOTA BANJAR'], + ['province' => 33, 'code' => '33.01', 'name' => 'KAB. CILACAP'], + ['province' => 33, 'code' => '33.02', 'name' => 'KAB. BANYUMAS'], + ['province' => 33, 'code' => '33.03', 'name' => 'KAB. PURBALINGGA'], + ['province' => 33, 'code' => '33.04', 'name' => 'KAB. BANJARNEGARA'], + ['province' => 33, 'code' => '33.05', 'name' => 'KAB. KEBUMEN'], + ['province' => 33, 'code' => '33.06', 'name' => 'KAB. PURWOREJO'], + ['province' => 33, 'code' => '33.07', 'name' => 'KAB. WONOSOBO'], + ['province' => 33, 'code' => '33.08', 'name' => 'KAB. MAGELANG'], + ['province' => 33, 'code' => '33.09', 'name' => 'KAB. BOYOLALI'], + ['province' => 33, 'code' => '33.10', 'name' => 'KAB. KLATEN'], + ['province' => 33, 'code' => '33.11', 'name' => 'KAB. SUKOHARJO'], + ['province' => 33, 'code' => '33.12', 'name' => 'KAB. WONOGIRI'], + ['province' => 33, 'code' => '33.13', 'name' => 'KAB. KARANGANYAR'], + ['province' => 33, 'code' => '33.14', 'name' => 'KAB. SRAGEN'], + ['province' => 33, 'code' => '33.15', 'name' => 'KAB. GROBOGAN'], + ['province' => 33, 'code' => '33.16', 'name' => 'KAB. BLORA'], + ['province' => 33, 'code' => '33.17', 'name' => 'KAB. REMBANG'], + ['province' => 33, 'code' => '33.18', 'name' => 'KAB. PATI'], + ['province' => 33, 'code' => '33.19', 'name' => 'KAB. KUDUS'], + ['province' => 33, 'code' => '33.20', 'name' => 'KAB. JEPARA'], + ['province' => 33, 'code' => '33.21', 'name' => 'KAB. DEMAK'], + ['province' => 33, 'code' => '33.22', 'name' => 'KAB. SEMARANG'], + ['province' => 33, 'code' => '33.23', 'name' => 'KAB. TEMANGGUNG'], + ['province' => 33, 'code' => '33.24', 'name' => 'KAB. KENDAL'], + ['province' => 33, 'code' => '33.25', 'name' => 'KAB. BATANG'], + ['province' => 33, 'code' => '33.26', 'name' => 'KAB. PEKALONGAN'], + ['province' => 33, 'code' => '33.27', 'name' => 'KAB. PEMALANG'], + ['province' => 33, 'code' => '33.28', 'name' => 'KAB. TEGAL'], + ['province' => 33, 'code' => '33.29', 'name' => 'KAB. BREBES'], + ['province' => 33, 'code' => '33.71', 'name' => 'KOTA MAGELANG'], + ['province' => 33, 'code' => '33.72', 'name' => 'KOTA SURAKARTA'], + ['province' => 33, 'code' => '33.73', 'name' => 'KOTA SALATIGA'], + ['province' => 33, 'code' => '33.74', 'name' => 'KOTA SEMARANG'], + ['province' => 33, 'code' => '33.75', 'name' => 'KOTA PEKALONGAN'], + ['province' => 33, 'code' => '33.76', 'name' => 'KOTA TEGAL'], + ['province' => 34, 'code' => '34.01', 'name' => 'KAB. KULON PROGO'], + ['province' => 34, 'code' => '34.02', 'name' => 'KAB. BANTUL'], + ['province' => 34, 'code' => '34.03', 'name' => 'KAB. GUNUNGKIDUL'], + ['province' => 34, 'code' => '34.04', 'name' => 'KAB. SLEMAN'], + ['province' => 34, 'code' => '34.71', 'name' => 'KOTA YOGYAKARTA'], + ['province' => 35, 'code' => '35.01', 'name' => 'KAB. PACITAN'], + ['province' => 35, 'code' => '35.02', 'name' => 'KAB. PONOROGO'], + ['province' => 35, 'code' => '35.03', 'name' => 'KAB. TRENGGALEK'], + ['province' => 35, 'code' => '35.04', 'name' => 'KAB. TULUNGAGUNG'], + ['province' => 35, 'code' => '35.05', 'name' => 'KAB. BLITAR'], + ['province' => 35, 'code' => '35.06', 'name' => 'KAB. KEDIRI'], + ['province' => 35, 'code' => '35.07', 'name' => 'KAB. MALANG'], + ['province' => 35, 'code' => '35.08', 'name' => 'KAB. LUMAJANG'], + ['province' => 35, 'code' => '35.09', 'name' => 'KAB. JEMBER'], + ['province' => 35, 'code' => '35.10', 'name' => 'KAB. BANYUWANGI'], + ['province' => 35, 'code' => '35.11', 'name' => 'KAB. BONDOWOSO'], + ['province' => 35, 'code' => '35.12', 'name' => 'KAB. SITUBONDO'], + ['province' => 35, 'code' => '35.13', 'name' => 'KAB. PROBOLINGGO'], + ['province' => 35, 'code' => '35.14', 'name' => 'KAB. PASURUAN'], + ['province' => 35, 'code' => '35.15', 'name' => 'KAB. SIDOARJO'], + ['province' => 35, 'code' => '35.16', 'name' => 'KAB. MOJOKERTO'], + ['province' => 35, 'code' => '35.17', 'name' => 'KAB. JOMBANG'], + ['province' => 35, 'code' => '35.18', 'name' => 'KAB. NGANJUK'], + ['province' => 35, 'code' => '35.19', 'name' => 'KAB. MADIUN'], + ['province' => 35, 'code' => '35.20', 'name' => 'KAB. MAGETAN'], + ['province' => 35, 'code' => '35.21', 'name' => 'KAB. NGAWI'], + ['province' => 35, 'code' => '35.22', 'name' => 'KAB. BOJONEGORO'], + ['province' => 35, 'code' => '35.23', 'name' => 'KAB. TUBAN'], + ['province' => 35, 'code' => '35.24', 'name' => 'KAB. LAMONGAN'], + ['province' => 35, 'code' => '35.25', 'name' => 'KAB. GRESIK'], + ['province' => 35, 'code' => '35.26', 'name' => 'KAB. BANGKALAN'], + ['province' => 35, 'code' => '35.27', 'name' => 'KAB. SAMPANG'], + ['province' => 35, 'code' => '35.28', 'name' => 'KAB. PAMEKASAN'], + ['province' => 35, 'code' => '35.29', 'name' => 'KAB. SUMENEP'], + ['province' => 35, 'code' => '35.71', 'name' => 'KOTA KEDIRI'], + ['province' => 35, 'code' => '35.72', 'name' => 'KOTA BLITAR'], + ['province' => 35, 'code' => '35.73', 'name' => 'KOTA MALANG'], + ['province' => 35, 'code' => '35.74', 'name' => 'KOTA PROBOLINGGO'], + ['province' => 35, 'code' => '35.75', 'name' => 'KOTA PASURUAN'], + ['province' => 35, 'code' => '35.76', 'name' => 'KOTA MOJOKERTO'], + ['province' => 35, 'code' => '35.77', 'name' => 'KOTA MADIUN'], + ['province' => 35, 'code' => '35.78', 'name' => 'KOTA SURABAYA'], + ['province' => 35, 'code' => '35.79', 'name' => 'KOTA BATU'], + ['province' => 36, 'code' => '36.01', 'name' => 'KAB. PANDEGLANG'], + ['province' => 36, 'code' => '36.02', 'name' => 'KAB. LEBAK'], + ['province' => 36, 'code' => '36.03', 'name' => 'KAB. TANGERANG'], + ['province' => 36, 'code' => '36.04', 'name' => 'KAB. SERANG'], + ['province' => 36, 'code' => '36.71', 'name' => 'KOTA TANGERANG'], + ['province' => 36, 'code' => '36.72', 'name' => 'KOTA CILEGON'], + ['province' => 36, 'code' => '36.73', 'name' => 'KOTA SERANG'], + ['province' => 36, 'code' => '36.74', 'name' => 'KOTA TANGERANG SELATAN'], + ['province' => 51, 'code' => '51.01', 'name' => 'KAB. JEMBRANA'], + ['province' => 51, 'code' => '51.02', 'name' => 'KAB. TABANAN'], + ['province' => 51, 'code' => '51.03', 'name' => 'KAB. BADUNG'], + ['province' => 51, 'code' => '51.04', 'name' => 'KAB. GIANYAR'], + ['province' => 51, 'code' => '51.05', 'name' => 'KAB. KLUNGKUNG'], + ['province' => 51, 'code' => '51.06', 'name' => 'KAB. BANGLI'], + ['province' => 51, 'code' => '51.07', 'name' => 'KAB. KARANGASEM'], + ['province' => 51, 'code' => '51.08', 'name' => 'KAB. BULELENG'], + ['province' => 51, 'code' => '51.71', 'name' => 'KOTA DENPASAR'], + ['province' => 52, 'code' => '52.01', 'name' => 'KAB. LOMBOK BARAT'], + ['province' => 52, 'code' => '52.02', 'name' => 'KAB. LOMBOK TENGAH'], + ['province' => 52, 'code' => '52.03', 'name' => 'KAB. LOMBOK TIMUR'], + ['province' => 52, 'code' => '52.04', 'name' => 'KAB. SUMBAWA'], + ['province' => 52, 'code' => '52.05', 'name' => 'KAB. DOMPU'], + ['province' => 52, 'code' => '52.06', 'name' => 'KAB. BIMA'], + ['province' => 52, 'code' => '52.07', 'name' => 'KAB. SUMBAWA BARAT'], + ['province' => 52, 'code' => '52.08', 'name' => 'KAB. LOMBOK UTARA'], + ['province' => 52, 'code' => '52.71', 'name' => 'KOTA MATARAM'], + ['province' => 52, 'code' => '52.72', 'name' => 'KOTA BIMA'], + ['province' => 53, 'code' => '53.01', 'name' => 'KAB. KUPANG'], + ['province' => 53, 'code' => '53.02', 'name' => 'KAB TIMOR TENGAH SELATAN'], + ['province' => 53, 'code' => '53.03', 'name' => 'KAB. TIMOR TENGAH UTARA'], + ['province' => 53, 'code' => '53.04', 'name' => 'KAB. BELU'], + ['province' => 53, 'code' => '53.05', 'name' => 'KAB. ALOR'], + ['province' => 53, 'code' => '53.06', 'name' => 'KAB. FLORES TIMUR'], + ['province' => 53, 'code' => '53.07', 'name' => 'KAB. SIKKA'], + ['province' => 53, 'code' => '53.08', 'name' => 'KAB. ENDE'], + ['province' => 53, 'code' => '53.09', 'name' => 'KAB. NGADA'], + ['province' => 53, 'code' => '53.10', 'name' => 'KAB. MANGGARAI'], + ['province' => 53, 'code' => '53.11', 'name' => 'KAB. SUMBA TIMUR'], + ['province' => 53, 'code' => '53.12', 'name' => 'KAB. SUMBA BARAT'], + ['province' => 53, 'code' => '53.13', 'name' => 'KAB. LEMBATA'], + ['province' => 53, 'code' => '53.14', 'name' => 'KAB. ROTE NDAO'], + ['province' => 53, 'code' => '53.15', 'name' => 'KAB. MANGGARAI BARAT'], + ['province' => 53, 'code' => '53.16', 'name' => 'KAB. NAGEKEO'], + ['province' => 53, 'code' => '53.17', 'name' => 'KAB. SUMBA TENGAH'], + ['province' => 53, 'code' => '53.18', 'name' => 'KAB. SUMBA BARAT DAYA'], + ['province' => 53, 'code' => '53.19', 'name' => 'KAB. MANGGARAI TIMUR'], + ['province' => 53, 'code' => '53.20', 'name' => 'KAB. SABU RAIJUA'], + ['province' => 53, 'code' => '53.21', 'name' => 'KAB. MALAKA'], + ['province' => 53, 'code' => '53.71', 'name' => 'KOTA KUPANG'], + ['province' => 61, 'code' => '61.01', 'name' => 'KAB. SAMBAS'], + ['province' => 61, 'code' => '61.02', 'name' => 'KAB. MEMPAWAH'], + ['province' => 61, 'code' => '61.03', 'name' => 'KAB. SANGGAU'], + ['province' => 61, 'code' => '61.04', 'name' => 'KAB. KETAPANG'], + ['province' => 61, 'code' => '61.05', 'name' => 'KAB. SINTANG'], + ['province' => 61, 'code' => '61.06', 'name' => 'KAB. KAPUAS HULU'], + ['province' => 61, 'code' => '61.07', 'name' => 'KAB. BENGKAYANG'], + ['province' => 61, 'code' => '61.08', 'name' => 'KAB. LANDAK'], + ['province' => 61, 'code' => '61.09', 'name' => 'KAB. SEKADAU'], + ['province' => 61, 'code' => '61.10', 'name' => 'KAB. MELAWI'], + ['province' => 61, 'code' => '61.11', 'name' => 'KAB. KAYONG UTARA'], + ['province' => 61, 'code' => '61.12', 'name' => 'KAB. KUBU RAYA'], + ['province' => 61, 'code' => '61.71', 'name' => 'KOTA PONTIANAK'], + ['province' => 61, 'code' => '61.72', 'name' => 'KOTA SINGKAWANG'], + ['province' => 62, 'code' => '62.01', 'name' => 'KAB. KOTAWARINGIN BARAT'], + ['province' => 62, 'code' => '62.02', 'name' => 'KAB. KOTAWARINGIN TIMUR'], + ['province' => 62, 'code' => '62.03', 'name' => 'KAB. KAPUAS'], + ['province' => 62, 'code' => '62.04', 'name' => 'KAB. BARITO SELATAN'], + ['province' => 62, 'code' => '62.05', 'name' => 'KAB. BARITO UTARA'], + ['province' => 62, 'code' => '62.06', 'name' => 'KAB. KATINGAN'], + ['province' => 62, 'code' => '62.07', 'name' => 'KAB. SERUYAN'], + ['province' => 62, 'code' => '62.08', 'name' => 'KAB. SUKAMARA'], + ['province' => 62, 'code' => '62.09', 'name' => 'KAB. LAMANDAU'], + ['province' => 62, 'code' => '62.10', 'name' => 'KAB. GUNUNG MAS'], + ['province' => 62, 'code' => '62.11', 'name' => 'KAB. PULANG PISAU'], + ['province' => 62, 'code' => '62.12', 'name' => 'KAB. MURUNG RAYA'], + ['province' => 62, 'code' => '62.13', 'name' => 'KAB. BARITO TIMUR'], + ['province' => 62, 'code' => '62.71', 'name' => 'KOTA PALANGKARAYA'], + ['province' => 63, 'code' => '63.01', 'name' => 'KAB. TANAH LAUT'], + ['province' => 63, 'code' => '63.02', 'name' => 'KAB. KOTABARU'], + ['province' => 63, 'code' => '63.03', 'name' => 'KAB. BANJAR'], + ['province' => 63, 'code' => '63.04', 'name' => 'KAB. BARITO KUALA'], + ['province' => 63, 'code' => '63.05', 'name' => 'KAB. TAPIN'], + ['province' => 63, 'code' => '63.06', 'name' => 'KAB. HULU SUNGAI SELATAN'], + ['province' => 63, 'code' => '63.07', 'name' => 'KAB. HULU SUNGAI TENGAH'], + ['province' => 63, 'code' => '63.08', 'name' => 'KAB. HULU SUNGAI UTARA'], + ['province' => 63, 'code' => '63.09', 'name' => 'KAB. TABALONG'], + ['province' => 63, 'code' => '63.10', 'name' => 'KAB. TANAH BUMBU'], + ['province' => 63, 'code' => '63.11', 'name' => 'KAB. BALANGAN'], + ['province' => 63, 'code' => '63.71', 'name' => 'KOTA BANJARMASIN'], + ['province' => 63, 'code' => '63.72', 'name' => 'KOTA BANJARBARU'], + ['province' => 64, 'code' => '64.01', 'name' => 'KAB. PASER'], + ['province' => 64, 'code' => '64.02', 'name' => 'KAB. KUTAI KARTANEGARA'], + ['province' => 64, 'code' => '64.03', 'name' => 'KAB. BERAU'], + ['province' => 64, 'code' => '64.07', 'name' => 'KAB. KUTAI BARAT'], + ['province' => 64, 'code' => '64.08', 'name' => 'KAB. KUTAI TIMUR'], + ['province' => 64, 'code' => '64.09', 'name' => 'KAB. PENAJAM PASER UTARA'], + ['province' => 64, 'code' => '64.11', 'name' => 'KAB. MAHAKAM ULU'], + ['province' => 64, 'code' => '64.71', 'name' => 'KOTA BALIKPAPAN'], + ['province' => 64, 'code' => '64.72', 'name' => 'KOTA SAMARINDA'], + ['province' => 64, 'code' => '64.74', 'name' => 'KOTA BONTANG'], + ['province' => 65, 'code' => '65.01', 'name' => 'KAB. BULUNGAN'], + ['province' => 65, 'code' => '65.02', 'name' => 'KAB. MALINAU'], + ['province' => 65, 'code' => '65.03', 'name' => 'KAB. NUNUKAN'], + ['province' => 65, 'code' => '65.04', 'name' => 'KAB. TANA TIDUNG'], + ['province' => 65, 'code' => '65.71', 'name' => 'KOTA TARAKAN'], + ['province' => 71, 'code' => '71.01', 'name' => 'KAB. BOLAANG MONGONDOW'], + ['province' => 71, 'code' => '71.02', 'name' => 'KAB. MINAHASA'], + ['province' => 71, 'code' => '71.03', 'name' => 'KAB. KEPULAUAN SANGIHE'], + ['province' => 71, 'code' => '71.04', 'name' => 'KAB. KEPULAUAN TALAUD'], + ['province' => 71, 'code' => '71.05', 'name' => 'KAB. MINAHASA SELATAN'], + ['province' => 71, 'code' => '71.06', 'name' => 'KAB. MINAHASA UTARA'], + ['province' => 71, 'code' => '71.07', 'name' => 'KAB. MINAHASA TENGGARA'], + ['province' => 71, 'code' => '71.08', 'name' => 'KAB. BOLAANG MONGONDOW UTARA'], + ['province' => 71, 'code' => '71.09', 'name' => 'KAB. KEP. SIAU TAGULANDANG BIARO'], + ['province' => 71, 'code' => '71.10', 'name' => 'KAB. BOLAANG MONGONDOW TIMUR'], + ['province' => 71, 'code' => '71.11', 'name' => 'KAB. BOLAANG MONGONDOW SELATAN'], + ['province' => 71, 'code' => '71.71', 'name' => 'KOTA MANADO'], + ['province' => 71, 'code' => '71.72', 'name' => 'KOTA BITUNG'], + ['province' => 71, 'code' => '71.73', 'name' => 'KOTA TOMOHON'], + ['province' => 71, 'code' => '71.74', 'name' => 'KOTA KOTAMOBAGU'], + ['province' => 72, 'code' => '72.01', 'name' => 'KAB. BANGGAI'], + ['province' => 72, 'code' => '72.02', 'name' => 'KAB. POSO'], + ['province' => 72, 'code' => '72.03', 'name' => 'KAB. DONGGALA'], + ['province' => 72, 'code' => '72.04', 'name' => 'KAB. TOLI TOLI'], + ['province' => 72, 'code' => '72.05', 'name' => 'KAB. BUOL'], + ['province' => 72, 'code' => '72.06', 'name' => 'KAB. MOROWALI'], + ['province' => 72, 'code' => '72.07', 'name' => 'KAB. BANGGAI KEPULAUAN'], + ['province' => 72, 'code' => '72.08', 'name' => 'KAB. PARIGI MOUTONG'], + ['province' => 72, 'code' => '72.09', 'name' => 'KAB. TOJO UNA UNA'], + ['province' => 72, 'code' => '72.10', 'name' => 'KAB. SIGI'], + ['province' => 72, 'code' => '72.11', 'name' => 'KAB. BANGGAI LAUT'], + ['province' => 72, 'code' => '72.12', 'name' => 'KAB. MOROWALI UTARA'], + ['province' => 72, 'code' => '72.71', 'name' => 'KOTA PALU'], + ['province' => 73, 'code' => '73.01', 'name' => 'KAB. KEPULAUAN SELAYAR'], + ['province' => 73, 'code' => '73.02', 'name' => 'KAB. BULUKUMBA'], + ['province' => 73, 'code' => '73.03', 'name' => 'KAB. BANTAENG'], + ['province' => 73, 'code' => '73.04', 'name' => 'KAB. JENEPONTO'], + ['province' => 73, 'code' => '73.05', 'name' => 'KAB. TAKALAR'], + ['province' => 73, 'code' => '73.06', 'name' => 'KAB. GOWA'], + ['province' => 73, 'code' => '73.07', 'name' => 'KAB. SINJAI'], + ['province' => 73, 'code' => '73.08', 'name' => 'KAB. BONE'], + ['province' => 73, 'code' => '73.09', 'name' => 'KAB. MAROS'], + ['province' => 73, 'code' => '73.10', 'name' => 'KAB. PANGKAJENE KEPULAUAN'], + ['province' => 73, 'code' => '73.11', 'name' => 'KAB. BARRU'], + ['province' => 73, 'code' => '73.12', 'name' => 'KAB. SOPPENG'], + ['province' => 73, 'code' => '73.13', 'name' => 'KAB. WAJO'], + ['province' => 73, 'code' => '73.14', 'name' => 'KAB. SIDENRENG RAPPANG'], + ['province' => 73, 'code' => '73.15', 'name' => 'KAB. PINRANG'], + ['province' => 73, 'code' => '73.16', 'name' => 'KAB. ENREKANG'], + ['province' => 73, 'code' => '73.17', 'name' => 'KAB. LUWU'], + ['province' => 73, 'code' => '73.18', 'name' => 'KAB. TANA TORAJA'], + ['province' => 73, 'code' => '73.22', 'name' => 'KAB. LUWU UTARA'], + ['province' => 73, 'code' => '73.24', 'name' => 'KAB. LUWU TIMUR'], + ['province' => 73, 'code' => '73.26', 'name' => 'KAB. TORAJA UTARA'], + ['province' => 73, 'code' => '73.71', 'name' => 'KOTA MAKASSAR'], + ['province' => 73, 'code' => '73.72', 'name' => 'KOTA PARE PARE'], + ['province' => 73, 'code' => '73.73', 'name' => 'KOTA PALOPO'], + ['province' => 74, 'code' => '74.01', 'name' => 'KAB. KOLAKA'], + ['province' => 74, 'code' => '74.02', 'name' => 'KAB. KONAWE'], + ['province' => 74, 'code' => '74.03', 'name' => 'KAB. MUNA'], + ['province' => 74, 'code' => '74.04', 'name' => 'KAB. BUTON'], + ['province' => 74, 'code' => '74.05', 'name' => 'KAB. KONAWE SELATAN'], + ['province' => 74, 'code' => '74.06', 'name' => 'KAB. BOMBANA'], + ['province' => 74, 'code' => '74.07', 'name' => 'KAB. WAKATOBI'], + ['province' => 74, 'code' => '74.08', 'name' => 'KAB. KOLAKA UTARA'], + ['province' => 74, 'code' => '74.09', 'name' => 'KAB. KONAWE UTARA'], + ['province' => 74, 'code' => '74.10', 'name' => 'KAB. BUTON UTARA'], + ['province' => 74, 'code' => '74.11', 'name' => 'KAB. KOLAKA TIMUR'], + ['province' => 74, 'code' => '74.12', 'name' => 'KAB. KONAWE KEPULAUAN'], + ['province' => 74, 'code' => '74.13', 'name' => 'KAB. MUNA BARAT'], + ['province' => 74, 'code' => '74.14', 'name' => 'KAB. BUTON TENGAH'], + ['province' => 74, 'code' => '74.15', 'name' => 'KAB. BUTON SELATAN'], + ['province' => 74, 'code' => '74.71', 'name' => 'KOTA KENDARI'], + ['province' => 74, 'code' => '74.72', 'name' => 'KOTA BAU BAU'], + ['province' => 75, 'code' => '75.01', 'name' => 'KAB. GORONTALO'], + ['province' => 75, 'code' => '75.02', 'name' => 'KAB. BOALEMO'], + ['province' => 75, 'code' => '75.03', 'name' => 'KAB. BONE BOLANGO'], + ['province' => 75, 'code' => '75.04', 'name' => 'KAB. PAHUWATO'], + ['province' => 75, 'code' => '75.05', 'name' => 'KAB. GORONTALO UTARA'], + ['province' => 75, 'code' => '75.71', 'name' => 'KOTA GORONTALO'], + ['province' => 76, 'code' => '76.01', 'name' => 'KAB. PASANGKAYU'], + ['province' => 76, 'code' => '76.02', 'name' => 'KAB. MAMUJU'], + ['province' => 76, 'code' => '76.03', 'name' => 'KAB. MAMASA'], + ['province' => 76, 'code' => '76.04', 'name' => 'KAB. POLEWALI MANDAR'], + ['province' => 76, 'code' => '76.05', 'name' => 'KAB. MAJENE'], + ['province' => 76, 'code' => '76.06', 'name' => 'KAB. MAMUJU TENGAH'], + ['province' => 81, 'code' => '81.01', 'name' => 'KAB. MALUKU TENGAH'], + ['province' => 81, 'code' => '81.02', 'name' => 'KAB. MALUKU TENGGARA'], + ['province' => 81, 'code' => '81.03', 'name' => 'KAB. KEPULAUAN TANIMBAR'], + ['province' => 81, 'code' => '81.04', 'name' => 'KAB. BURU'], + ['province' => 81, 'code' => '81.05', 'name' => 'KAB. SERAM BAGIAN TIMUR'], + ['province' => 81, 'code' => '81.06', 'name' => 'KAB. SERAM BAGIAN BARAT'], + ['province' => 81, 'code' => '81.07', 'name' => 'KAB. KEPULAUAN ARU'], + ['province' => 81, 'code' => '81.08', 'name' => 'KAB. MALUKU BARAT DAYA'], + ['province' => 81, 'code' => '81.09', 'name' => 'KAB. BURU SELATAN'], + ['province' => 81, 'code' => '81.71', 'name' => 'KOTA AMBON'], + ['province' => 81, 'code' => '81.72', 'name' => 'KOTA TUAL'], + ['province' => 82, 'code' => '82.01', 'name' => 'KAB. HALMAHERA BARAT'], + ['province' => 82, 'code' => '82.02', 'name' => 'KAB. HALMAHERA TENGAH'], + ['province' => 82, 'code' => '82.03', 'name' => 'KAB. HALMAHERA UTARA'], + ['province' => 82, 'code' => '82.04', 'name' => 'KAB. HALMAHERA SELATAN'], + ['province' => 82, 'code' => '82.05', 'name' => 'KAB. KEPULAUAN SULA'], + ['province' => 82, 'code' => '82.06', 'name' => 'KAB. HALMAHERA TIMUR'], + ['province' => 82, 'code' => '82.07', 'name' => 'KAB. PULAU MOROTAI'], + ['province' => 82, 'code' => '82.08', 'name' => 'KAB. PULAU TALIABU'], + ['province' => 82, 'code' => '82.71', 'name' => 'KOTA TERNATE'], + ['province' => 82, 'code' => '82.72', 'name' => 'KOTA TIDORE KEPULAUAN'], + ['province' => 91, 'code' => '91.01', 'name' => 'KAB. MERAUKE'], + ['province' => 91, 'code' => '91.02', 'name' => 'KAB. JAYAWIJAYA'], + ['province' => 91, 'code' => '91.03', 'name' => 'KAB. JAYAPURA'], + ['province' => 91, 'code' => '91.04', 'name' => 'KAB. NABIRE'], + ['province' => 91, 'code' => '91.05', 'name' => 'KAB. KEPULAUAN YAPEN'], + ['province' => 91, 'code' => '91.06', 'name' => 'KAB. BIAK NUMFOR'], + ['province' => 91, 'code' => '91.07', 'name' => 'KAB. PUNCAK JAYA'], + ['province' => 91, 'code' => '91.08', 'name' => 'KAB. PANIAI'], + ['province' => 91, 'code' => '91.09', 'name' => 'KAB. MIMIKA'], + ['province' => 91, 'code' => '91.10', 'name' => 'KAB. SARMI'], + ['province' => 91, 'code' => '91.11', 'name' => 'KAB. KEEROM'], + ['province' => 91, 'code' => '91.12', 'name' => 'KAB. PEGUNUNGAN BINTANG'], + ['province' => 91, 'code' => '91.13', 'name' => 'KAB. YAHUKIMO'], + ['province' => 91, 'code' => '91.14', 'name' => 'KAB. TOLIKARA'], + ['province' => 91, 'code' => '91.15', 'name' => 'KAB. WAROPEN'], + ['province' => 91, 'code' => '91.16', 'name' => 'KAB. BOVEN DIGOEL'], + ['province' => 91, 'code' => '91.17', 'name' => 'KAB. MAPPI'], + ['province' => 91, 'code' => '91.18', 'name' => 'KAB. ASMAT'], + ['province' => 91, 'code' => '91.19', 'name' => 'KAB. SUPIORI'], + ['province' => 91, 'code' => '91.20', 'name' => 'KAB. MAMBERAMO RAYA'], + ['province' => 91, 'code' => '91.21', 'name' => 'KAB. MAMBERAMO TENGAH'], + ['province' => 91, 'code' => '91.22', 'name' => 'KAB. YALIMO'], + ['province' => 91, 'code' => '91.23', 'name' => 'KAB. LANNY JAYA'], + ['province' => 91, 'code' => '91.24', 'name' => 'KAB. NDUGA'], + ['province' => 91, 'code' => '91.25', 'name' => 'KAB. PUNCAK'], + ['province' => 91, 'code' => '91.26', 'name' => 'KAB. DOGIYAI'], + ['province' => 91, 'code' => '91.27', 'name' => 'KAB. INTAN JAYA'], + ['province' => 91, 'code' => '91.28', 'name' => 'KAB. DEIYAI'], + ['province' => 91, 'code' => '91.71', 'name' => 'KOTA JAYAPURA'], + ['province' => 92, 'code' => '92.01', 'name' => 'KAB. SORONG'], + ['province' => 92, 'code' => '92.02', 'name' => 'KAB. MANOKWARI'], + ['province' => 92, 'code' => '92.03', 'name' => 'KAB. FAK FAK'], + ['province' => 92, 'code' => '92.04', 'name' => 'KAB. SORONG SELATAN'], + ['province' => 92, 'code' => '92.05', 'name' => 'KAB. RAJA AMPAT'], + ['province' => 92, 'code' => '92.06', 'name' => 'KAB. TELUK BINTUNI'], + ['province' => 92, 'code' => '92.07', 'name' => 'KAB. TELUK WONDAMA'], + ['province' => 92, 'code' => '92.08', 'name' => 'KAB. KAIMANA'], + ['province' => 92, 'code' => '92.09', 'name' => 'KAB. TAMBRAUW'], + ['province' => 92, 'code' => '92.10', 'name' => 'KAB. MAYBRAT'], + ['province' => 92, 'code' => '92.11', 'name' => 'KAB. MANOKWARI SELATAN'], + ['province' => 92, 'code' => '92.12', 'name' => 'KAB. PEGUNUNGAN ARFAK'], + ['province' => 92, 'code' => '92.71', 'name' => 'KOTA SORONG'] + ]; + } + + function getProvinceId($areacode) + { + $province = Province::where('area_code', $areacode)->first(); + + return $province->id; + } + } diff --git a/Database/Seeders/MasterDatabaseSeeder.php b/Database/Seeders/MasterDatabaseSeeder.php index bc01360..c4c6d94 100644 --- a/Database/Seeders/MasterDatabaseSeeder.php +++ b/Database/Seeders/MasterDatabaseSeeder.php @@ -40,7 +40,8 @@ RelationshipSeeder::class, CardSeeder::class, CountrySeeder::class, - ProvinceSeeder::class + ProvinceSeeder::class, + CitySeeder::class, ]); } diff --git a/Http/Controllers/CityController.php b/Http/Controllers/CityController.php index 58f3e1a..338acbb 100644 --- a/Http/Controllers/CityController.php +++ b/Http/Controllers/CityController.php @@ -9,6 +9,7 @@ use Illuminate\Support\Facades\Auth; use Modules\Master\DataTables\CityDataTable; use Modules\Master\Entities\City; + use Modules\Master\Entities\Country; use Modules\Master\Http\Requests\City\StoreCityRequest; use Modules\Master\Http\Requests\City\UpdateCityRequest; @@ -40,7 +41,11 @@ abort(403, 'Sorry !! You are Unauthorized to view any ' . $this->module->alias . ' !'); } - return $dataTable->render($this->module->alias . '::city.index'); + addVendor('chained-select'); + + $countries = Country::all(); + + return $dataTable->render($this->module->alias . '::city.index', compact('countries')); } /** @@ -116,7 +121,7 @@ abort(403, 'Sorry !! You are Unauthorized to update any ' . $this->module->alias . ' !'); } - $data = $this->model::find($id); + $data = $this->model::with('province')->find($id); echo json_encode($data); } @@ -128,7 +133,7 @@ * * @return Renderable */ - public function update(UpdateCityRequest $request, City $company) + public function update(UpdateCityRequest $request, City $city) { if (is_null($this->user) || !$this->user->can($this->module->alias . '.update')) { abort(403, 'Sorry !! You are Unauthorized to update any ' . $this->module->alias . ' !'); @@ -140,7 +145,7 @@ // Update the City... if ($validated) { try { - $company->update($validated); + $city->update($validated); echo json_encode(['status' => 'success', 'message' => $this->module->name . ' city updated successfully.']); } catch (Exception $e) { echo json_encode(['status' => 'error', 'message' => $this->module->name . ' city updated failed.']); @@ -158,14 +163,14 @@ * * @return Renderable */ - public function destroy(City $company) + public function destroy(City $city) { if (is_null($this->user) || !$this->user->can($this->module->alias . '.delete')) { abort(403, 'Sorry !! You are Unauthorized to delete any ' . $this->module->alias . ' !'); } try { - $company->delete(); + $city->delete(); echo json_encode(['status' => 'success', 'message' => $this->module->name . ' city deleted successfully.']); } catch (Exception $e) { echo json_encode(['status' => 'error', 'message' => $this->module->name . ' city deleted failed.']); diff --git a/Http/Controllers/ProvinceController.php b/Http/Controllers/ProvinceController.php index a832844..a1f5228 100644 --- a/Http/Controllers/ProvinceController.php +++ b/Http/Controllers/ProvinceController.php @@ -35,12 +35,17 @@ * * @return Renderable */ - public function index(ProvinceDataTable $dataTable) + public function index(ProvinceDataTable $dataTable, Request $request) { if (is_null($this->user) || !$this->user->can($this->module->alias . '.read')) { abort(403, 'Sorry !! You are Unauthorized to view any ' . $this->module->alias . ' !'); } + if (isset($request->country_id) && !empty($request->country_id)) { + $this->show($request); + return; + } + $countries = Country::all(); return $dataTable->render($this->module->alias . '::province.index', compact('countries')); } @@ -96,13 +101,24 @@ * * @return Renderable */ - public function show($id) + public function show(Request $request) { - if(is_null($this->user) || !$this->user->can($this->module->alias . '.read')) { + if (is_null($this->user) || !$this->user->can($this->module->alias . '.read')) { abort(403, 'Sorry !! You are Unauthorized to view any ' . $this->module->alias . ' !'); } - abort(404); + $provinces = Province::where('country_id', $request->country_id)->get(); + + $data = []; + foreach ($provinces as $row) { + $result = [ + $row->id => $row->name, + ]; + + $data[] = $result; + } + + echo json_encode($data); } /** diff --git a/Http/Requests/City/StoreCityRequest.php b/Http/Requests/City/StoreCityRequest.php index 07582e7..ae3fc96 100644 --- a/Http/Requests/City/StoreCityRequest.php +++ b/Http/Requests/City/StoreCityRequest.php @@ -2,13 +2,13 @@ namespace Modules\Master\Http\Requests\City; - use Illuminate\Foundation\Http\FormRequest; use Illuminate\Http\Exceptions\HttpResponseException; use Illuminate\Validation\ValidationException; use Illuminate\Validation\Validator; + use Modules\Master\Http\Requests\MasterRequest; use Symfony\Component\HttpFoundation\JsonResponse; - class StoreCityRequest extends FormRequest + class StoreCityRequest extends MasterRequest { /** * Determine if the user is authorized to make this request. @@ -29,9 +29,9 @@ { return [ 'province_id' => 'required|integer|exists:provinces,id', - 'code' => 'required|string|max:50|unique:cities,code', + 'code' => 'required|string|min:5|max:5|unique:cities,code', 'name' => 'required|string|max:50|unique:cities,name', - 'status' => 'nullable|string|max:1', + 'status' => 'nullable|integer|max:1', ]; } diff --git a/Http/Requests/City/UpdateCityRequest.php b/Http/Requests/City/UpdateCityRequest.php index 8030a54..9fdc84d 100644 --- a/Http/Requests/City/UpdateCityRequest.php +++ b/Http/Requests/City/UpdateCityRequest.php @@ -2,13 +2,13 @@ namespace Modules\Master\Http\Requests\City; - use Illuminate\Foundation\Http\FormRequest; use Illuminate\Http\Exceptions\HttpResponseException; use Illuminate\Validation\ValidationException; use Illuminate\Validation\Validator; + use Modules\Master\Http\Requests\MasterRequest; use Symfony\Component\HttpFoundation\JsonResponse; - class UpdateCityRequest extends FormRequest + class UpdateCityRequest extends MasterRequest { /** * Determine if the user is authorized to make this request. @@ -29,9 +29,9 @@ { return [ 'province_id' => 'required|integer|exists:provinces,id', - 'code' => 'required|string|max:50|unique:cities,code', $this->city->id, - 'name' => 'required|string|max:50|unique:cities,name', $this->city->id, - 'status' => 'nullable|string|max:1', + 'code' => 'required|string|max:5|min:5|unique:cities,code,'. $this->city->id, + 'name' => 'required|string|max:50|unique:cities,name,'. $this->city->id, + 'status' => 'nullable|integer|max:1', ]; } diff --git a/Resources/views/city/_action.blade.php b/Resources/views/city/_action.blade.php new file mode 100644 index 0000000..a32eac2 --- /dev/null +++ b/Resources/views/city/_action.blade.php @@ -0,0 +1,13 @@ +@php + $route = explode('.', Route::currentRouteName()); +@endphp +
+ + {!! getIcon("pencil", "fs-1 text-info","duotune") !!} + + + {!! Form::open(['method' => 'DELETE','route' => [$route[0].'.'.$route[1].'.destroy', $model->id],'class'=>'']) !!} + {{ Form::button(getIcon("trash", "fs-1 text-danger","duotune"), ['type' => 'submit', 'class' => 'delete btn btn-icon btn-bg-light btn-active-light-danger btn-sm'] ) }} + {!! Form::close() !!} +
diff --git a/Resources/views/city/_form.blade.php b/Resources/views/city/_form.blade.php new file mode 100644 index 0000000..2db238a --- /dev/null +++ b/Resources/views/city/_form.blade.php @@ -0,0 +1,104 @@ +@php + $route = explode('.', Route::currentRouteName()); +@endphp + + + + diff --git a/Resources/views/city/_status.blade.php b/Resources/views/city/_status.blade.php new file mode 100644 index 0000000..65f58c9 --- /dev/null +++ b/Resources/views/city/_status.blade.php @@ -0,0 +1,12 @@ +@php + $route = explode('.', Route::currentRouteName()); +@endphp + +{!! Form::open(['method' => 'PUT','route' => [$route[0].'.'.$route[1].'.update', $model->id],'class'=>'']) !!} +
+ status==1 ? 'checked' : '' }} type="checkbox" name="status" id="status"/> + + + +
+{!! Form::close() !!} diff --git a/Resources/views/city/_table.blade.php b/Resources/views/city/_table.blade.php new file mode 100644 index 0000000..81491d6 --- /dev/null +++ b/Resources/views/city/_table.blade.php @@ -0,0 +1,136 @@ + +{{ $dataTable->table() }} + + +{{-- Inject Scripts --}} +@section('scripts') + {{ $dataTable->scripts() }} +@endsection + +@push('customscript') + @php + $route = explode('.', Route::currentRouteName()); + @endphp + + +@endpush + +@section('styles') + +@endsection diff --git a/Resources/views/city/index.blade.php b/Resources/views/city/index.blade.php new file mode 100644 index 0000000..e7ed728 --- /dev/null +++ b/Resources/views/city/index.blade.php @@ -0,0 +1,142 @@ +@php + $route = explode('.', Route::currentRouteName()); +@endphp + + + +
+ +
+
+
+ + + + + + + + + +
+ + +
+ + +
+ +
+ + + + + + + +
+ + +
+
+
+ @include('master::'.$route[1].'._table') + @include('master::'.$route[1].'._form') +
+ +
+ + @push('customscript') + + @endpush +