public function actionCreateJurnalUmum() { // return; if (!app()->request->isAjaxRequest) { return; } if (isset($_POST) && !empty($_POST)) { $status = false; $msg = 'Jurnal umum berhasil disimpan.'; $user = app()->user->getId(); $detils = CJSON::decode($_POST['detil']); $transaction = app()->db->beginTransaction(); try { $ref = new MtReferenceCom(); $docref = $ref->get_next_reference(JURNAL_UMUM); $jurnal_umum_id = Mt::get_max_type_no(JURNAL_UMUM); $jurnal_umum_id++; foreach ($detils as $detil) { $amount = $detil['debit'] > 0 ? $detil['debit'] : -$detil['kredit']; Mt::add_gl(JURNAL_UMUM, $jurnal_umum_id, $_POST['tran_date'], $docref, $detil['account'], "-", $amount, $user, $detil['id_mobil']); } $ref->save(JURNAL_UMUM, $jurnal_umum_id, $docref); $transaction->commit(); $status = true; } catch (Exception $ex) { $transaction->rollback(); $status = false; $msg = $ex; } echo CJSON::encode(array('success' => $status, 'id' => $docref, 'msg' => $msg)); app()->end(); } }
public function actionCreateTransfer() { if (!Yii::app()->request->isAjaxRequest) { return; } if (isset($_POST) && !empty($_POST)) { //require_once(Yii::app()->basePath . '/vendors/frontaccounting/ui.inc'); $status = false; $msg = 'Transfer antar kas berhasil diproses.'; $id = -1; $bank_asal = $_POST['bank_act_asal']; $bank_tujuan = $_POST['bank_act_tujuan']; $trans_date = $_POST['trans_date']; $memo = $_POST['memo']; $amount = get_number($_POST['amount']); if ($bank_asal == $bank_tujuan) { echo CJSON::encode(array('success' => false, 'id' => -1, 'msg' => 'Bank asal dan bank tujuan tidak boleh sama.')); Yii::app()->end(); } if ($amount <= 0) { echo CJSON::encode(array('success' => false, 'id' => -1, 'msg' => 'Jumlah yang akan ditransfer harus lebih dari nol.')); Yii::app()->end(); } $transaction = Yii::app()->db->beginTransaction(); try { $ref = new MtReferenceCom(); $docref = $ref->get_next_reference(BANKTRANSFER); $bank_account_asal = Mt::get_act_code_from_bank_act($bank_asal); $bank_account_tujuan = Mt::get_act_code_from_bank_act($bank_tujuan); $trans_no = Mt::get_next_trans_no_bank_trans(); $user = Yii::app()->user->getId(); //debet kode bank tujuan - kredit kode bank asal Mt::add_gl(BANKTRANSFER, $trans_no, $trans_date, $docref, $bank_account_tujuan, $memo, $amount, $user, null); Mt::add_gl(BANKTRANSFER, $trans_no, $trans_date, $docref, $bank_account_asal, $memo, -$amount, $user, null); $ref->save(BANKTRANSFER, $trans_no, $docref); $id = $docref; $transaction->commit(); $status = true; } catch (Exception $ex) { $transaction->rollback(); $status = false; $msg = $ex; } echo CJSON::encode(array('success' => $status, 'id' => $id, 'msg' => $msg)); Yii::app()->end(); } }
public function actionDelete() { if (Yii::app()->request->isPostRequest) { if (isset($_POST) && !empty($_POST)) { $msg = 'Data berhasil divoid.'; $status = true; $id = $_POST['id']; $memo_ = $_POST['memo_']; $transaction = app()->db->beginTransaction(); try { $user = app()->user->getId(); $model = $this->loadModel($id, 'MtKembaliKendaraan'); $date = $model->trans_date; $docref = $model->doc_ref_kembali; $msg = "Pengembalian kendaraan dengan referensi {$docref} berhasil divoid."; $void = new MtVoided(); $void->type = KEMBALI_KENDARAAN; $void->id = $id; $void->date_ = $date; $void->memo_ = $memo_; $void->save(); if ($model->pelunasan > 0) { if ($model->trans_via == "Tunai") { $bank_account = Mt::get_act_code_from_bank_act(Mt::get_prefs('akun_kas_ditangan')); } else { $bank_account = Mt::get_act_code_from_bank_act(Mt::get_prefs('akun_kas_dibank')); } // void gl // debit penjualan , kredit kas Mt::add_gl(VOID, $void->id_voided, $date, $docref, $bank_account, "VOID Pengembalian Kendaraan {$docref}", -$model->pelunasan, $user, $model->idPinjam->id_mobil); Mt::add_gl(VOID, $void->id_voided, $date, $docref, Mt::get_prefs('akun_uang_muka'), "VOID Pengembalian Kendaraan {$docref}", -$model->dp, $user, $model->idPinjam->id_mobil); Mt::add_gl(VOID, $void->id_voided, $date, $docref, Mt::get_prefs('akun_pendapatan_sewa'), "VOID Pengembalian Kendaraan {$docref}", $model->total, $user, $model->idPinjam->id_mobil); if ($model->disc > 0) { Mt::add_gl(VOID, $void->id_voided, $date, $docref, Mt::get_prefs('akun_diskon'), "VOID Pengembalian Kendaraan {$docref}", -$model->disc, $user, $model->idPinjam->id_mobil); } } $pinjam = $this->loadModel($model->id_pinjam, 'MtPinjamKendaraan'); $pinjam->is_back = 0; $pinjam->id_driver = null; $pinjam->save(); $status = true; $transaction->commit(); } catch (Exception $e) { $transaction->rollback(); $status = false; $msg = $ex; } echo CJSON::encode(array('success' => $status, 'msg' => $msg)); Yii::app()->end(); } } else { throw new CHttpException(400, Yii::t('app', 'Invalid request. Please do not repeat this request again.')); } }
public function actionSetSaldoAwal() { if (!Yii::app()->request->isAjaxRequest) { return; } if (isset($_POST) && !empty($_POST)) { $status = false; $msg = 'Saldo Awal berhasil disimpan.'; $date = $_POST['trans_date']; $user = Yii::app()->user->getId(); $id = Mt::get_next_trans_saldo_awal(); $transaction = Yii::app()->db->beginTransaction(); try { Mt::add_gl(SALDO_AWAL, $id, $date, "-", $_POST['account_code'], '-', get_number($_POST['amount']), $user, null); $transaction->commit(); $status = true; } catch (Exception $ex) { $transaction->rollback(); $status = false; $msg = $ex; } echo CJSON::encode(array('success' => $status, 'id' => $id, 'msg' => $msg)); Yii::app()->end(); } }
public function actionDelete() { if (!app()->request->isAjaxRequest) { return; } if (isset($_POST) && !empty($_POST)) { $id = $_POST['id']; $memo_ = $_POST['memo_']; $status = false; $msg = 'Kas masuk berhasil divoid.'; $user = app()->user->getId(); $transaction = app()->db->beginTransaction(); try { $kas_masuk = MtKasMasuk::model()->findByPk($id); $date = $kas_masuk->trans_date; $docref = $kas_masuk->doc_ref; $void = new MtVoided(); $void->type = KAS_MASUK; $void->id = $id; $void->date_ = $date; $void->memo_ = $memo_; $void->save(); $bank = MtBankAccounts::model()->findByPk($kas_masuk->mt_bank_accounts_id); $act_donatur = $kas_masuk->account_code; //void gl Mt::add_gl(VOID, $void->id_voided, $date, $docref, $act_donatur, "VOID Kas Masuk {$docref}", $kas_masuk->amount, $user, $kas_masuk->id_mobil); Mt::add_gl(VOID, $void->id_voided, $date, $docref, $bank->account_code, "VOID Kas Masuk {$docref}", -$kas_masuk->amount, $user, $kas_masuk->id_mobil); $transaction->commit(); $status = true; } catch (Exception $ex) { $transaction->rollback(); $status = false; $msg = $ex; } } echo CJSON::encode(array('success' => $status, 'msg' => $msg)); app()->end(); }