Ejemplo n.º 1
0
 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;
 }
Ejemplo n.º 3
0
 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;
     }
 }