/** * Finds the Komisi model based on its primary key value. * If the model is not found, a 404 HTTP exception will be thrown. * @param string $id * @return Komisi the loaded model * @throws NotFoundHttpException if the model cannot be found */ protected function findModel() { $model = Komisi::find()->one(); if ($model !== null) { } else { $model = new Komisi(); $model->KOM_BELI = 0.25; $model->KOM_JUAL = 0.35; $model->save(); } return $model; }
public function getKomisi() { $komisi = Komisi::find()->select('KOM_BELI')->one(); $kom_beli = '0.00'; if ($komisi !== null) { $kom_beli = (double) $komisi->KOM_BELI; } return $kom_beli; }
/** * Lists all Emiten models. * @return mixed */ public function actionIndex($date = '') { $session = Yii::$app->session; $simulation = new DynamicModel(['tipe', 'jml_lot', 'harga', 'komisi', 'total_komisi', 'jml_saham', 'range', 'total_harga']); $simulation->addRule(['tipe', 'jml_lot', 'harga'], 'required'); $simulation->tipe = 1; $selectDate = []; if (!empty($date)) { $selectDate = $this->getDates($date)[0]; if (!$this->checkDetemitenByDate($date)) { // TIDAK ADA DETEMITEN $maxDate = $this->getMaxDetemitenDate(); $connection = \Yii::$app->db; $transaction = $connection->beginTransaction(); try { $sql = "INSERT INTO detemiten\n SELECT '" . $selectDate . "', emiten.KODE, emiten.JMLLOT, emiten.JMLSAHAM,\n emiten.SALDO, emiten.SALDOR1, emiten.HARGA, '" . $maxDate . "',\n emiten.JMLLOTB, emiten.JMLSAHAMB, emiten.SALDOB\n FROM emiten WHERE emiten.JMLLOT>0"; $connection->createCommand($sql)->execute(); //f. Buat query untuk menampung data detemiten dimana tanggal = [tglMax] //select * from detemiten where tanggal = [tglMax] $emitens = Detemiten::find()->where(['TGL' => $maxDate])->all(); //g. Lakukan looping sebanyak record yg dihasilkan dari query f. foreach ($emitens as $emiten) { /* Setiap looping lakukan update harga sbb : For i = 1 To RecordCount update detemiten set harga = [harga hasil query f] where kode = [kode hasil query f] and tanggal = [tgl yg dipilih] Next i */ $emiten_update = Detemiten::find()->where(['EMITEN_KODE' => $emiten->EMITEN_KODE, 'TGL' => $selectDate])->one(); if ($emiten_update) { $emiten_update->HARGA = $emiten->HARGA; $emiten_update->save(); } } $transaction->commit(); Yii::$app->session->setFlash('success', 'Success.'); } catch (Exception $e) { Yii::$app->session->setFlash('error', 'Fatal error.'); $transaction->rollback(); } } } $reportDates = []; $detemitenDates = []; foreach ($this->getDetemitenDates() as $detemitenDate) { $formatDate = date('d-M-Y', strtotime($detemitenDate)); if (empty($reportDates)) { if (empty($selectDate)) { $reportDates = $this->getDates($formatDate); } else { $reportDates = $this->getDates($date); //die($selectDate[0]); } } $detemitenDates[$formatDate] = $formatDate; } $session->set('reportDates', $reportDates); $session->set('detemitenDates', $detemitenDates); $komisi = Komisi::find()->one(); $lotshare = Lotshare::find()->one(); //$detemitenDates = ['31-Oct-2015'=>'31-Oct-2015']; //Saldo**) = jmlsaham * harga $detemitenSaldo = Detemiten::find()->select('SUM(JMLSAHAM * HARGA) as total_saldo')->where(['TGL' => $reportDates[0]])->asArray()->one(); $total_saldo = $detemitenSaldo['total_saldo']; $session->set('total_saldo', $total_saldo); $detemitenLabaRugi = Detemiten::find()->select('SUM(JMLSAHAM * HARGA - SALDO) as total_laba_rugi')->where(['TGL' => $reportDates[0]])->asArray()->one(); $total_laba_rugi = $detemitenLabaRugi['total_laba_rugi']; $session->set('total_laba_rugi', $total_laba_rugi); $searchModel = new DetemitenSearch(['TGL' => $reportDates[0]]); $dataProvider = $searchModel->search(Yii::$app->request->queryParams); $dataProvider2 = clone $dataProvider; $session->set('dataProvider', $dataProvider2); $dataProvider->pagination->pageSize = 10; return $this->render('index', ['searchModel' => $searchModel, 'dataProvider' => $dataProvider, 'simulation' => $simulation, 'reportDates' => $reportDates, 'detemitenDates' => $detemitenDates, 'komisi' => $komisi, 'lotshare' => $lotshare, 'total_saldo' => $total_saldo, 'total_laba_rugi' => $total_laba_rugi]); }