public function actionHapusDetail($id) { PengeluaranDetail::model()->findByPk($id)->delete(); }
/** * Returns the data model based on the primary key given in the GET variable. * If the data model is not found, an HTTP exception will be raised. * @param integer $id the ID of the model to be loaded * @return PengeluaranDetail the loaded model * @throws CHttpException */ public function loadModel($id) { $model = PengeluaranDetail::model()->findByPk($id); if ($model === null) { throw new CHttpException(404, 'The requested page does not exist.'); } return $model; }
public function proses() { $this->scenario = 'proses'; $transaction = $this->dbConnection->beginTransaction(); try { if ($this->save()) { // Ambil details yang hutang piutang untuk diproses lebih lanjut $details = PengeluaranDetail::model()->findAll('pengeluaran_id=:pengeluaranId and hutang_piutang_id is not null', array(':pengeluaranId' => $this->id)); foreach ($details as $detail) { $hutangPiutang = HutangPiutang::model()->findByPk($detail->hutang_piutang_id); // Bayar dan simpan if (!($hutangPiutang->bayar() && $hutangPiutang->save())) { throw new Exception("Gagal proses bayar hutang piutang"); } } $transaction->commit(); return true; } else { throw new Exception("Gagal Proses"); } } catch (Exception $e) { $transaction->rollback(); throw $e; } }