/** * Creates data provider instance with search query applied * * @param array $params * * @return ActiveDataProvider */ public function search($params) { /*$tabelMeninggal = TabelKematian::find()->asArray->all(); $meninggal = ""; foreach($tabelMeninggal as $satuan){ $meninggal = $meninggal.",".$satuan['nik']; }*/ $query = DataManagement::find()->joinWith(['tabelKematian', 'tabelKewarganegaraan'])->where('tabel_kematian.tanggal_kematian is null and tabel_kewarganegaraan.tanggal_imigrasi is null'); // add conditions that should always apply here $cache = Yii::$app->cache; $totalCount = $cache->get('countData'); if ($totalCount === false) { $dependency = new \yii\caching\DbDependency(['sql' => 'SELECT MAX(nik) FROM base']); $cache->set('countData', $query->count(), 0, $dependency); $totalCount = $cache->get('countData'); } $dataProvider = new ActiveDataProvider(['query' => $query, 'totalCount' => (int) $totalCount, 'pagination' => ['pageSize' => 20]]); $this->load($params); if (!$this->validate()) { // uncomment the following line if you do not want to return any records when validation fails // $query->where('0=1'); return $dataProvider; } // grid filtering conditions $query->andFilterWhere(['tanggal_lahir' => $this->tanggal_lahir, 'jenis_kelamin' => $this->jenis_kelamin, 'tanggal_diterbitkan' => $this->tanggal_diterbitkan, 'nik_pencatat' => $this->nik_pencatat]); $query->andFilterWhere(['like', 'base.nik', $this->nik])->andFilterWhere(['like', 'nama', $this->nama])->andFilterWhere(['like', 'tempat_lahir', $this->tempat_lahir])->andFilterWhere(['like', 'golongan_darah', $this->golongan_darah]); return $dataProvider; }
/** * Creates data provider instance with search query applied * * @param array $params * * @return ActiveDataProvider */ public function search($params) { $query = DataManagement::find()->joinWith(['tabelKematian', 'tabelKewarganegaraan'])->where('tanggal_imigrasi is not null or tanggal_kematian is not null'); // add conditions that should always apply here $dataProvider = new ActiveDataProvider(['query' => $query]); $this->load($params); if (!$this->validate()) { // uncomment the following line if you do not want to return any records when validation fails // $query->where('0=1'); return $dataProvider; } // grid filtering conditions $query->andFilterWhere(['nik' => $this->nik, 'tanggal_lahir' => $this->tanggal_lahir, 'jenis_kelamin' => $this->jenis_kelamin, 'tanggal_diterbitkan' => $this->tanggal_diterbitkan, 'nik_pencatat' => $this->nik_pencatat]); $query->andFilterWhere(['like', 'nama', $this->nama])->andFilterWhere(['like', 'tempat_lahir', $this->tempat_lahir])->andFilterWhere(['like', 'golongan_darah', $this->golongan_darah]); return $dataProvider; }
<div class="row"> <!-- Left col --> <div class="col-lg-6"> <!-- Custom tabs (Charts with tabs)--> <div class="box box-info"> <div class="box-header with-border"> <h3 class="box-title">User Profil</h3> </div><!-- /.box-header --> <div class="box-body"> <div class="row"> <div class="col-md-3"> <label class="control-label pull-right">Nama</label> </div> <div class="col-md-9"> <?php echo DataManagement::find()->select('nama')->where(['nik' => $user->id])->one()->nama; ?> </div> </div> <div class="row"> <div class="col-md-3"> <label class="control-label pull-right">NIK</label> </div> <div class="col-md-9"> <?php echo $user->id; ?> </div> </div> <div class="row"> <div class="col-md-3">
public function actionGetayah() { $ayah = ArrayHelper::map(DataManagement::find()->select(['nik'])->where('jenis_kelamin = 1')->all(), 'nik', 'nik'); if (count($ayah) > 0) { foreach ($ayah as $a) { echo "<option value='" . $a->nik . "'>" . $a->nik . "</option>"; } } }
$this->title = 'OCFA System Admin'; ?> <div class="site-index"> <!-- Main content --> <section class="content col-lg-11"> <!-- Small boxes (Stat box) --> <div class="row "> <div class="col-lg-4 col-xs-6"> <!-- small box --> <a href="admin/data"> <div class="small-box bg-aqua"> <div class="inner"> <p>Jumlah Penduduk</p> <h3><?php echo DataManagement::find()->count(); ?> </h3> </div> <div class="icon"> <i class="fa fa-users"></i> </div> </div> </a> </div><!-- ./col --> <div class="col-lg-4 col-xs-6"> <!-- small box --> <a href="admin/user"> <div class="small-box bg-green"> <div class="inner"> <p>Jumlah User</p>
<?php echo $form->field($updatable, 'status_keluarga')->dropdownList(['2' => 'Istri', '3' => 'Anak'], ['prompt' => 'Pilih Status Keluarga', 'id' => 'status_keluarga']); ?> <div class="form-group"> <div class="col-md-3"></div> <div class="col-md-8"> <p><strong>Catatan : </strong>Untuk mengganti Kepala Keluarga, silakan diganti di menu Data Keluarga</p> </div> </div> <?php if (!$model->isNewRecord) { $ayah = ArrayHelper::map(DataManagement::find()->select(['nik'])->where('nik != ' . $model->nik . ' and jenis_kelamin = 1')->all(), 'nik', 'nik'); $ibu = ArrayHelper::map(DataManagement::find()->select(['nik'])->where('nik != ' . $model->nik . ' and jenis_kelamin = 2')->all(), 'nik', 'nik'); } ?> <?php $urlAyah = \yii\helpers\Url::to(['nik-ayah-list']); ?> <?php echo $form->field($updatable, 'ayah')->widget(Select2::classname(), ['language' => 'id', 'options' => ['prompt' => 'Masukkan NIK Ayah', 'options' => ['placeholder' => 'Cari NIK Ayah ...']], 'pluginOptions' => ['allowClear' => true, 'minimumInputLength' => 3, 'ajax' => ['url' => $urlAyah, 'dataType' => 'json', 'data' => new JsExpression('function(arg) { return {q:arg.term}; }')], 'escapeMarkup' => new JsExpression('function (markup) { return markup; }'), 'templateResult' => new JsExpression('function(ayah) { return ayah.text; }'), 'templateSelection' => new JsExpression('function (ayah) { return ayah.text; }')]])->label('NIK Ayah'); ?> <?php $urlIbu = \yii\helpers\Url::to(['nik-ibu-list']); ?> <?php echo $form->field($updatable, 'ibu')->widget(Select2::classname(), ['language' => 'id', 'options' => ['prompt' => 'Masukkan NIK Ibu', 'options' => ['placeholder' => 'Cari NIK Ibu ...']], 'pluginOptions' => ['allowClear' => true, 'minimumInputLength' => 3, 'ajax' => ['url' => $urlIbu, 'dataType' => 'json', 'data' => new JsExpression('function(params) { return {q:params.term}; }')], 'escapeMarkup' => new JsExpression('function (markup) { return markup; }'), 'templateResult' => new JsExpression('function(ibu) { return ibu.text; }'), 'templateSelection' => new JsExpression('function (ibu) { return ibu.text; }')]])->label('NIK Ibu');
echo Html::a('Delete', ['delete', 'id' => $model->id], ['class' => 'btn btn-danger', 'data' => ['confirm' => 'Are you sure you want to delete this item?', 'method' => 'post']]); ?> </p> <?php $data = BaseUpdatable::find()->select('nik')->where(['no_kk' => $model->id, 'status_keluarga' => 3])->asArray()->all(); $istri = BaseUpdatable::find()->select('nik')->where(['no_kk' => $model->id, 'status_keluarga' => 2])->one()['nik']; $nik = ""; foreach ($data as $val) { if ($nik != "") { $nik .= ","; } $nik .= $val['nik']; } if (!empty($nik)) { $dataNama = DataManagement::find()->select('nama')->where('nik in (' . $nik . ')')->asArray()->all(); } else { $dataNama = []; } $namaIstri = DataManagement::findOne($istri)['nama']; $nama = ""; foreach ($dataNama as $val) { if ($nama != "") { $nama .= ", "; } $nama .= $val['nama']; } ?> <?php echo DetailView::widget(['model' => $model, 'attributes' => ['id', ['attribute' => 'kepala_keluarga', 'value' => DataManagement::findOne($model->kepala_keluarga)->nama], 'tanggal_terbit', 'tanggal_pembaruan', ['label' => 'Status', 'value' => $model->status == 1 ? 'Aktif' : 'Tidak Aktif'], ['label' => 'Anak', 'value' => $nama], ['label' => 'Istri', 'value' => $namaIstri]]]); ?>
private function exportKeluarga() { $isi = Keluarga::find()->asArray()->all(); $filename = 'Data_Keluarga-' . date('YmdGis') . '.xls'; header("Content-type: application/vnd.ms-excel"); header("Content-Disposition: attachment; filename=\"{$filename}\""); header("Pragma: no-cache"); header("Expires: 0"); echo "<style> .str{ mso-number-format:\\@; } </style>"; echo '<table border="1" width="100%"> <thead> <tr> <th>Nomor KK</th> <th>Nama Kepala Keluarga</th> <th>Alamat</th> <th>RT</th> <th>RW</th> <th>Desa/Kelurahan</th> <th>Kecamatan</th> <th>Kabupaten/Kota</th> <th>Provinsi</th> <th>Dikeluarkan Tanggal</th> <th>Nama Lengkap</th> <th>NIK</th> <th>Jenis Kelamin</th> <th>Tempat Lahir</th> <th>Tanggal Lahir</th> <th>Agama</th> <th>Pendidikan Terakhir</th> <th>Pekerjaan</th> <th>Status Perkawinan</th> <th>Status Hubungan Dalam Keluarga</th> <th>Kewarganegaraan</th> <th>Nama Ayah</th> <th>Nama Ibu</th> </tr> </thead> <tbody>'; $i = 0; foreach ($isi as $data) { $subData = BaseUpdatable::find()->where('status_keluarga = "1" and no_kk = "' . $data['id'] . '"')->one(); $base = DataManagement::findOne($subData['nik']); $domisili = TabelDomisili::find()->where('nik = ' . $subData['nik'])->one(); //echo var_dump($subData->nik); //echo var_dump($subData); $rawNikKeluarga = BaseUpdatable::find()->where('no_kk = ' . $data['id'])->asArray()->all(); $nikKeluarga = ""; foreach ($rawNikKeluarga as $val) { if ($nikKeluarga != null) { $nikKeluarga .= ","; } $nikKeluarga .= $val['nik']; } $dataKeluarga = DataManagement::find()->joinWith('baseUpdatable')->where('base.nik in (' . $nikKeluarga . ')')->asArray()->all(); $count = count($dataKeluarga); echo ' <tr> <td class="str" rowspan="' . $count . '">' . $data['id'] . '</td> <td rowspan="' . $count . '">' . $base['nama'] . '</td> <td rowspan="' . $count . '">' . $domisili['alamat'] . '</td> <td rowspan="' . $count . '">' . $domisili['rt'] . '</td> <td rowspan="' . $count . '">' . $domisili['rw'] . '</td> <td rowspan="' . $count . '">' . Villages::findOne($domisili['kelurahan'])->name . '</td> <td rowspan="' . $count . '">' . Districts::findOne(substr($domisili['kelurahan'], 0, strlen($domisili['kelurahan']) - 3))->name . '</td> <td rowspan="' . $count . '">' . Regencies::findOne(substr($domisili['kelurahan'], 0, strlen($domisili['kelurahan']) - 6))->name . '</td> <td rowspan="' . $count . '">' . Provinces::findOne(substr($domisili['kelurahan'], 0, strlen($domisili['kelurahan']) - 8))->name . '</td> <td rowspan="' . $count . '">' . Keluarga::findOne($data['id'])->tanggal_terbit . '</td>'; foreach ($dataKeluarga as $value) { $jk = $value['jenis_kelamin'] == 1 ? 'Laki-laki' : 'Perempuan'; //echo var_dump($value['baseUpdatable']['agama']); switch ($value['baseUpdatable']['agama']) { case '1': $agama = 'Islam'; break; case '2': $agama = 'Kristen'; break; case '3': $agama = 'Katholik'; break; case '4': $agama = 'Hindu'; break; case '5': $agama = 'Budha'; break; case '6': $agama = 'Konghucu'; break; case '7': $agama = 'Lainnya'; break; } switch ($value['baseUpdatable']['pendidikan_terakhir']) { case '1': $pend = 'SD'; break; case '2': $pend = 'SMP'; break; case '3': $pend = 'SMA'; break; case '4': $pend = 'D 1'; break; case '5': $pend = 'D 2'; break; case '6': $pend = 'D 3'; break; case '7': $pend = 'Sarjana S 1/D 4'; break; case '8': $pend = 'Pasca Sarjana S 2'; break; case '9': $pend = 'Pasca Sarjana S 3'; break; } if ($value['baseUpdatable']['status_perkawinan'] == 0) { $status_perkawinan = 'Belum Menikah'; } elseif ($value['baseUpdatable']['status_perkawinan'] == 1) { $status_perkawinan = 'Menikah'; } elseif ($value['baseUpdatable']['status_perkawinan'] == 2) { $status_perkawinan = 'Cerai'; } elseif ($value['baseUpdatable']['status_perkawinan'] == 3) { $status_perkawinan = 'Cerai Ditinggal Mati'; } $status_keluarga = $value['baseUpdatable']['status_keluarga']; //echo var_dump($status_keluarga); if ($status_keluarga == 1) { $statusKeluarga = 'Kepala Keluarga'; } elseif ($status_keluarga == 2) { $statusKeluarga = 'Istri'; } elseif ($status_keluarga == 3) { $statusKeluarga = 'Anak'; } if (TabelKewarganegaraan::findOne($value['nik']) !== null) { $kewarganegaraan = 'WNA'; } else { $kewarganegaraan = 'WNI'; } echo ' <td>' . $value['nama'] . '</td> <td>' . $value['nik'] . '</td> <td>' . $jk . '</td> <td>' . $value['tempat_lahir'] . '</td> <td>' . $value['tanggal_lahir'] . '</td> <td>' . $agama . '</td> <td>' . $pend . '</td> <td>' . $value['baseUpdatable']['pekerjaan'] . '</td> <td>' . $status_perkawinan . '</td> <td>' . $statusKeluarga . '</td> <td>' . $kewarganegaraan . '</td> <td>' . DataManagement::findOne(BaseUpdatable::findOne($value['nik'])->ayah)['nama'] . '</td> <td>' . DataManagement::findOne(BaseUpdatable::findOne($value['nik'])->ibu)['nama'] . '</td> '; if ($i < $count - 1) { echo '</tr><tr>'; } else { echo '</tr>'; } $i++; } echo '</tbody>'; } echo '</table>'; return true; }