Files
shopee-apps/application/delete/controllers/ManageBankMasuk.php
T
2026-06-13 16:02:07 +10:00

1242 lines
36 KiB
PHP

<?php
use Restserver\Libraries\REST_Controller;
defined('BASEPATH') or exit('No direct script access allowed');
require APPPATH . 'libraries/REST_Controller.php';
require APPPATH . 'libraries/Format.php';
class ManageBankMasuk extends CI_Controller
{
function __construct()
{
parent::__construct();
$this->load->model('ModelBankMasuk', 'BankMasuk');
$this->load->model('ModelBank', 'Bank');
$this->load->model('ModelDpPembelian', 'Dpb');
$this->load->model('ModelHutangDagang', 'Hda');
$this->load->model('ModelKendaraan', 'Kendaraan');
$this->load->model('ModelKas', 'Kas');
$this->load->model('ModelKaryawan', 'Karyawan');
$this->load->model('ModelPerkiraan', 'Perkiraan');
$this->load->model('ModelPajak', 'Pajak');
$this->load->model('ModelPiutangKaryawan', 'Pkar');
$this->load->model('ModelPiutangPihakKe3', 'Ppi');
$this->load->model('ModelPiutangDagang', 'Pda');
$this->load->model('ModelBiayaPengiriman', 'Bp');
$this->load->model('ModelPelanggan', 'Pelanggan');
$this->load->model('ModelSupplier', 'Supplier');
$this->load->model('ModelPihakKe3', 'PihakKe3');
$this->load->library(['datatables', 'form_validation']);
$this->form_validation->set_error_delimiters('', '');
}
public function output_json($data, $encode = true)
{
if ($encode) $data = json_encode($data);
$this->output->set_content_type('application/json')->set_output($data);
}
//Step One, Input Bank Masuk
public function index() {
$datBankMasuk = $this->BankMasuk->getDataBankMasuk();
$datBank = $this->Bank->getDataBankDetail();
$data = [
'sidebar' => "menu accounting",
'navChild' => "",
'bankmasuk' => $datBankMasuk,
'bank' => $datBank
];
$this->load->view('proses/BankMasuk', $data);
}
public function kodeBankMasuk() {
$kk = $this->BankMasuk->getKodeBankMasuk();
if (is_array($kk) || is_object($kk)) {
foreach ($kk as $row) {
if ($row['KODE'] == null) {
return "BBM/000001";
} else {
$str = (string) $row['KODE'];
$panjang = 6;
$data = substr($str, 4, $panjang);
$ko = (int) $data + 1;
$str = (string) $ko;
$panjang = 10 - strlen($str);
$data = "BBM/000000";
$data = substr($data, 0, $panjang) . $str;
return $data;
}
}
}
}
public function save() {
$method = $this->input->post('method');
$id = $this->input->post('id_bankmasuk');
$id_bank = $this->input->post('id_bank');
$debit_bankmasuk = $this->input->post('debit_bankmasuk');
$kode_bankmasuk = $this->kodeBankMasuk();
$input = [
'KODE_BANKMASUK' => $kode_bankmasuk,
'BANK_ID' => $id_bank,
'DEBIT_BANKMASUK' => $debit_bankmasuk,
'KREDIT_BANKMASUK' => '0'
];
$action = $this->BankMasuk->create('bankmasuk', $input);
if ($action) {
$this->session->set_flashdata('flash', 'ditambah');
redirect('ManageBankMasuk');
} else {
$this->session->set_flashdata('flashgagal', 'ditambah');
redirect('ManageBankMasuk');
}
}
public function edit() {
$method = $this->input->post('method');
$id_bankmasuk = $this->input->post('id_bankmasuk');
$id_bank = $this->input->post('id_banked');
$debit_bankmasuk = $this->input->post('debit_bankmasuked');
$update = [
'BANK_ID' => $id_bank,
'DEBIT_BANKMASUK' => $debit_bankmasuk
];
$action = $this->BankMasuk->update('bankmasuk', $update, 'ID_BANKMASUK', $id_bankmasuk);
if ($action) {
$this->session->set_flashdata('flash', 'diedit');
redirect('ManageBankMasuk');
} else {
$this->session->set_flashdata('flashgagal', 'diedit');
redirect('ManageBankMasuk');
}
}
public function hapus() {
$id = $this->input->post('id');
$action = $this->BankMasuk->hapusKasbankBM($id);
$action = $this->BankMasuk->delete('bankmasuk',$id,'ID_BANKMASUK');
$this->session->set_flashdata('flash', 'dihapus');
redirect($_SERVER['HTTP_REFERER']);
}
public function konfirmasi() {
$method = $this->input->post('method');
$id_bankmasuk = $this->input->post('id_bankmasuk');
//Proses Konfirmasi + Update Saldo Bank
$databank = $this->BankMasuk->getDataBankMasuk($id_bankmasuk);
$saldo = $databank[0]['SALDO_BANK'];
$nominal = $databank[0]['DEBIT_BANKMASUK'];
$id_bank = $databank[0]['BANK_ID'];
$saldo_bank = $saldo+$nominal;
$update = [
'SALDO_BANK' => $saldo_bank
];
$action = $this->BankMasuk->update('bank', $update, 'ID_BANK', $id_bank);
$update = [
'STATUS_BANKMASUK' => '0'
];
$action = $this->BankMasuk->update('bankmasuk', $update, 'ID_BANKMASUK', $id_bankmasuk);
if ($action) {
$this->session->set_flashdata('flash', 'dikonfirmasi');
redirect('ManageBankMasuk');
} else {
$this->session->set_flashdata('flashgagal', 'dikonfirmasi');
redirect('ManageBankMasuk');
}
}
//Step Two, Input Transaksi
public function tambahTransaksi($id) {
$transaksi = $this->BankMasuk->getDataKasbankBM($id);
$title = $this->BankMasuk->getTitleBM($id);
$perkiraan = $this->Perkiraan->getDataPerkiraan();
$bank = $this->Bank->getDataBankDetail();
$kas = $this->Kas->getDataKasDetail();
$kendaraan = $this->Kendaraan->getDataKendaraan();
$karyawan = $this->Karyawan->getDataKaryawan();
$pihakke3 = $this->PihakKe3->getDataPihakKe3();
$pelanggan = $this->Pelanggan->getDataPelanggan();
$pajak = $this->Pajak->getDataPajak();
$pkar = $this->Pkar->getDataPiutangKaryawanDetail();
$ppi = $this->Ppi->getDataPiutangPihakKe3Detail();
$pda = $this->Pda->getDataPiutangDagangDetail();
$bp = $this->Bp->getDataBiayaPengirimanDetail();
$hda = $this->Hda->getDataHutangDagangDetail();
$dpb = $this->Dpb->getDataDpPembelianDetail();
$data = [
'sidebar' => "menu accounting",
'navChild' => "",
'transaksi' => $transaksi,
'id_bankmasuk' => $id,
'title1' => $title[0]['KODE_BANKMASUK'],
'title2' => $title[0]['DEBIT'],
'title3' => $title[0]['KREDIT'],
'perkiraan' => $perkiraan,
'bank' => $bank,
'kas' => $kas,
'kendaraan' => $kendaraan,
'karyawan' => $karyawan,
'pihakke3' => $pihakke3,
'pelanggan' => $pelanggan,
'pajak' => $pajak,
'pkar' => $pkar,
'ppi' => $ppi,
'pda' => $pda,
'bp' => $bp,
'hda' => $hda,
'dpb' => $dpb
];
$this->load->view('proses/KasbankBM', $data);
}
public function kodeKasbankBM() {
$kk = $this->BankMasuk->getKodeKasbankBM();
if (is_array($kk) || is_object($kk)) {
foreach ($kk as $row) {
if ($row['KODE'] == null) {
return "KBBM/000001";
} else {
$str = (string) $row['KODE'];
$panjang = 6;
$data = substr($str, 5, $panjang);
$ko = (int) $data + 1;
$str = (string) $ko;
$panjang = 11 - strlen($str);
$data = "KBBM/000000";
$data = substr($data, 0, $panjang) . $str;
return $data;
}
}
}
}
public function savetransaksi() {
//Step Input Transaksi
$method = $this->input->post('method');
$id_kbbm = $this->input->post('id');
$id_bankmasuk = $this->input->post('id_bankmasuk');
$id_perkiraan = $this->input->post('id_perkiraan');
$nominal_kbbm = $this->input->post('nominal_kbbm');
$ket_kbbm = $this->input->post('ket_kbbm');
$kode_kbbm = $this->kodeKasbankBM();
$input = [
'BANKMASUK_ID' => $id_bankmasuk,
'PERKIRAAN_ID' => $id_perkiraan,
'NOMINAL_KBBM' => $nominal_kbbm,
'KET_KBBM' => $ket_kbbm,
'KODE_KBBM' => $kode_kbbm
];
$action = $this->BankMasuk->create('kasbank_bm', $input);
//Step Ambil Data Lama
$id_kbbm = $this->BankMasuk->getID_KBBM();
$datakredit = $this->BankMasuk->getKreditData($id_kbbm[0]['KODE']);
$id_bankmasuk = $datakredit[0]['ID_BANKMASUK'];
$nominal = $datakredit[0]['KREDIT_BANKMASUK'];
$kredit_bankmasuk = $nominal+$nominal_kbbm;
$update = [
'KREDIT_BANKMASUK' => $kredit_bankmasuk
];
$action = $this->BankMasuk->update('bankmasuk', $update, 'ID_BANKMASUK', $id_bankmasuk);
if ($action) {
$this->session->set_flashdata('flash', 'ditambah');
redirect($_SERVER['HTTP_REFERER']);
} else {
$this->session->set_flashdata('flashgagal', 'ditambah');
redirect($_SERVER['HTTP_REFERER']);
}
}
public function edittransaksi() {
//Step Edit Transaksi
$method = $this->input->post('method');
$id_kbbm = $this->input->post('id_kbbm');
$id_bankmasuk = $this->input->post('id_bankmasuk');
$id_perkiraan = $this->input->post('id_perkiraaned');
$nominal_kbbm = $this->input->post('nominal_kbbmed');
$ket_kbbm = $this->input->post('ket_kbbmed');
//Step Ambil Data Lama
$datakredit = $this->BankMasuk->getKreditData($id_kbbm);
$nominal = $datakredit[0]['KREDIT_BANKMASUK'];
$nominallama = $datakredit[0]['NOMINAL_KBBM'];
$nominalbaru = $nominal-$nominallama;
$update = [
'KREDIT_BANKMASUK' => $nominalbaru
];
$action = $this->BankMasuk->update('bankmasuk', $update, 'ID_BANKMASUK', $id_bankmasuk);
//Step Update Debit Bank Masuk
$update = [
'PERKIRAAN_ID' => $id_perkiraan,
'NOMINAL_KBBM' => $nominal_kbbm,
'KET_KBBM' => $ket_kbbm
];
$action = $this->BankMasuk->update('kasbank_bm', $update, 'ID_KBBM',$id_kbbm);
//Step Update Bank Masuk
$datakredit = $this->BankMasuk->getKreditData($id_kbbm);
$nominal = $datakredit[0]['KREDIT_BANKMASUK'];
$nominalbaru = $nominal+$nominal_kbbm;
$update = [
'KREDIT_BANKMASUK' => $nominalbaru
];
$action = $this->BankMasuk->update('bankmasuk', $update, 'ID_BANKMASUK', $id_bankmasuk);
if ($action) {
$this->session->set_flashdata('flash', 'diedit');
redirect($_SERVER['HTTP_REFERER']);
} else {
$this->session->set_flashdata('flashgagal', 'diedit');
redirect($_SERVER['HTTP_REFERER']);
}
}
public function hapustransaksi() {
$id = $this->input->post('id');
//Step Ambil Data Lama
$datakredit = $this->BankMasuk->getKreditData($id);
$id_bankmasuk = $datakredit[0]['ID_BANKMASUK'];
$nominal = $datakredit[0]['KREDIT_BANKMASUK'];
$kredit = $datakredit[0]['NOMINAL_KBBM'];
$nominalbaru = $nominal-$kredit;
$update = [
'KREDIT_BANKMASUK' => $nominalbaru
];
$action = $this->BankMasuk->update('bankmasuk', $update, 'ID_BANKMASUK', $id_bankmasuk);
//Step Hapus Data
$action = $this->BankMasuk->delete('kasbank_bm',$id,'ID_KBBM');
$this->session->set_flashdata('flash', 'dihapus');
redirect($_SERVER['HTTP_REFERER']);
}
//Step Three, Input Detail
//Substep Three, Transaksi Sekali Jalan
public function kodeDetailKAS() {
$kk = $this->BankMasuk->getKodeDetailKAS();
if (is_array($kk) || is_object($kk)) {
foreach ($kk as $row) {
if ($row['KODE'] == null) {
return "KAS/000001";
} else {
$str = (string) $row['KODE'];
$panjang = 6;
$data = substr($str, 4, $panjang);
$ko = (int) $data + 1;
$str = (string) $ko;
$panjang = 10 - strlen($str);
$data = "KAS/000000";
$data = substr($data, 0, $panjang) . $str;
return $data;
}
}
}
}
public function detailkas() {
//Step Input Detail KAS
$method = $this->input->post('method');
$id_dkas = $this->input->post('id');
$id_kbbm = $this->input->post('id_kbbm');
$id_kas = $this->input->post('id_kas');
$kode_dkas = $this->kodeDetailKAS();
if ($id_kas==="") {
redirect($_SERVER['HTTP_REFERER']);
}
$kbbm = $this->BankMasuk->getDataKBBM($id_kbbm);
$kredit_dkas = $kbbm[0]['NOMINAL_KBBM'];
$kode_bukti = $kbbm[0]['KODE_KBBM'];
$input = [
'KREDIT_DKAS' => $kredit_dkas,
'KAS_ID' => $id_kas,
'KODE_DKAS' => $kode_dkas,
'KODE_BUKTI' => $kode_bukti
];
$action = $this->BankMasuk->create('detail_kas', $input);
$kas = $this->BankMasuk->getSaldoKAS($id_kas);
$saldo = $kas[0]['SALDO_KAS'] - $kredit_dkas ;
$update = [
'SALDO_KAS' => $saldo
];
$action = $this->BankMasuk->update('kas', $update, 'ID_KAS', $id_kas);
$id_dkas = $this->BankMasuk->getIDDKAS();
$update = [
'DKAS_ID' => $id_dkas[0]['ID_DKAS']
];
$action = $this->BankMasuk->update('kasbank_bm', $update, 'ID_KBBM',$id_kbbm);
if ($action) {
$this->session->set_flashdata('flash', 'ditambah');
redirect($_SERVER['HTTP_REFERER']);
} else {
$this->session->set_flashdata('flashgagal', 'ditambah');
redirect($_SERVER['HTTP_REFERER']);
}
}
public function resetkas() {
$id = $this->input->post('id');
//Step Reset Saldo KAS
$id_dkas = $this->BankMasuk->getDataKBBM($id);
$kredit_kbbm = $id_dkas[0]['NOMINAL_KBBM'];
$id_dkas = $id_dkas[0]['DKAS_ID'];
$kas = $this->BankMasuk->getDataKAS($id_dkas);
$id_kas = $kas[0]['ID_KAS'];
$saldo = $kas[0]['SALDO_KAS'];
$saldo = $saldo+$kredit_kbbm;
$update = [
'SALDO_KAS' => $saldo
];
$action = $this->BankMasuk->update('kas', $update, 'ID_KAS', $id_kas);
//Step Ambil Data Lama
$id_dkas = $this->BankMasuk->getDKASID($id);
$id_dkas = $id_dkas[0]['DKAS_ID'];
$update = [
'DKAS_ID' => NULL
];
$action = $this->BankMasuk->update('kasbank_bm', $update, 'ID_KBBM', $id);
//Step Hapus Data
$action = $this->BankMasuk->delete('detail_kas',$id_dkas,'ID_DKAS');
$this->session->set_flashdata('flash', 'dihapus');
redirect($_SERVER['HTTP_REFERER']);
}
public function kodeDetailBANK() {
$kk = $this->BankMasuk->getKodeDetailBANK();
if (is_array($kk) || is_object($kk)) {
foreach ($kk as $row) {
if ($row['KODE'] == null) {
return "BANK/000001";
} else {
$str = (string) $row['KODE'];
$panjang = 6;
$data = substr($str, 5, $panjang);
$ko = (int) $data + 1;
$str = (string) $ko;
$panjang = 11 - strlen($str);
$data = "BANK/000000";
$data = substr($data, 0, $panjang) . $str;
return $data;
}
}
}
}
public function detailbank() {
//Step Input Detail BANK
$method = $this->input->post('method');
$id_dbank = $this->input->post('id');
$id_kbbm = $this->input->post('id_kbbm');
$id_bank = $this->input->post('id_bank');
$kode_dbank = $this->kodeDetailBANK();
if ($id_bank==="") {
redirect($_SERVER['HTTP_REFERER']);
}
$kbbm = $this->BankMasuk->getDataKBBM($id_kbbm);
$kredit_dbank = $kbbm[0]['NOMINAL_KBBM'];
$kode_bukti = $kbbm[0]['KODE_KBBM'];
$input = [
'KREDIT_DBANK' => $kredit_dbank,
'BANK_ID' => $id_bank,
'KODE_DBANK' => $kode_dbank,
'KODE_BUKTI' => $kode_bukti
];
$action = $this->BankMasuk->create('detail_bank', $input);
$bank = $this->BankMasuk->getSaldoBANK($id_bank);
$saldo = $bank[0]['SALDO_BANK'] - $kredit_dbank ;
$update = [
'SALDO_BANK' => $saldo
];
$action = $this->BankMasuk->update('bank', $update, 'ID_BANK', $id_bank);
$id_dbank = $this->BankMasuk->getIDDBANK();
$update = [
'DBANK_ID' => $id_dbank[0]['ID_DBANK']
];
$action = $this->BankMasuk->update('kasbank_bm', $update, 'ID_KBBM',$id_kbbm);
if ($action) {
$this->session->set_flashdata('flash', 'ditambah');
redirect($_SERVER['HTTP_REFERER']);
} else {
$this->session->set_flashdata('flashgagal', 'ditambah');
redirect($_SERVER['HTTP_REFERER']);
}
}
public function resetbank() {
$id = $this->input->post('id');
//Step Reset Saldo BANK
$id_dbank = $this->BankMasuk->getDataKBBM($id);
$kredit_kbbm = $id_dbank[0]['NOMINAL_KBBM'];
$id_dbank = $id_dbank[0]['DBANK_ID'];
$bank = $this->BankMasuk->getDataBANK($id_dbank);
$id_bank = $bank[0]['ID_BANK'];
$saldo = $bank[0]['SALDO_BANK'];
$saldo = $saldo+$kredit_kbbm;
$update = [
'SALDO_BANK' => $saldo
];
$action = $this->BankMasuk->update('bank', $update, 'ID_BANK', $id_bank);
//Step Ambil Data Lama
$id_dbank = $this->BankMasuk->getDBANKID($id);
$id_dbank = $id_dbank[0]['DBANK_ID'];
$update = [
'DBANK_ID' => NULL
];
$action = $this->BankMasuk->update('kasbank_bm', $update, 'ID_KBBM', $id);
//Step Hapus Data
$action = $this->BankMasuk->delete('detail_bank',$id_dbank,'ID_DBANK');
$this->session->set_flashdata('flash', 'dihapus');
redirect($_SERVER['HTTP_REFERER']);
}
public function kodeDPJ() {
$kk = $this->BankMasuk->getKodeDPJ();
if (is_array($kk) || is_object($kk)) {
foreach ($kk as $row) {
if ($row['KODE'] == null) {
return "DPJ/000001";
} else {
$str = (string) $row['KODE'];
$panjang = 6;
$data = substr($str, 4, $panjang);
$ko = (int) $data + 1;
$str = (string) $ko;
$panjang = 10 - strlen($str);
$data = "DPJ/000000";
$data = substr($data, 0, $panjang) . $str;
return $data;
}
}
}
}
public function detaildpj() {
//Step Input Detail DP Penjualan
$method = $this->input->post('method');
$id_dpj = $this->input->post('id');
$id_kbbm = $this->input->post('id_kbbm');
$id_pelanggan = $this->input->post('id_pelanggan');
$kode_dpj = $this->kodeDPJ();
if ($id_pelanggan==="") {
redirect($_SERVER['HTTP_REFERER']);
}
$kbbm = $this->BankMasuk->getDataKBBM($id_kbbm);
$nominal_dpj = $kbbm[0]['NOMINAL_KBBM'];
$kode_bukti = $kbbm[0]['KODE_KBBM'];
$input = [
'NOMINAL_DPJ' => $nominal_dpj,
'PELANGGAN_ID' => $id_pelanggan,
'KODE_DPJ' => $kode_dpj,
'KODE_BUKTI' => $kode_bukti,
'BLOCKCON' => '0'
];
$action = $this->BankMasuk->create('dp_penjualan', $input);
$pelanggan = $this->BankMasuk->getSaldoDPJ($id_pelanggan);
$saldo = $pelanggan[0]['SALDO_PELANGGAN'] + $nominal_dpj ;
$update = [
'SALDO_PELANGGAN' => $saldo
];
$action = $this->BankMasuk->update('pelanggan', $update, 'ID_PELANGGAN', $id_pelanggan);
$id_dpj = $this->BankMasuk->getIDDPJ();
$update = [
'DPJ_ID' => $id_dpj[0]['ID_DPJ']
];
$action = $this->BankMasuk->update('kasbank_bm', $update, 'ID_KBBM',$id_kbbm);
if ($action) {
$this->session->set_flashdata('flash', 'ditambah');
redirect($_SERVER['HTTP_REFERER']);
} else {
$this->session->set_flashdata('flashgagal', 'ditambah');
redirect($_SERVER['HTTP_REFERER']);
}
}
public function resetdpj() {
$id = $this->input->post('id');
//Step Reset Saldo DP Penjualan
$id_dpj = $this->BankMasuk->getDataKBBM($id);
$kredit_kbbm = $id_dpj[0]['NOMINAL_KBBM'];
$id_dpj = $id_dpj[0]['DPJ_ID'];
$pelanggan = $this->BankMasuk->getDataPEL($id_dpj);
$id_pelanggan = $pelanggan[0]['ID_PELANGGAN'];
$saldo = $pelanggan[0]['SALDO_PELANGGAN'];
$saldo = $saldo-$kredit_kbbm;
$update = [
'SALDO_PELANGGAN' => $saldo
];
$action = $this->BankMasuk->update('pelanggan', $update, 'ID_PELANGGAN', $id_pelanggan);
//Step Ambil Data Lama
$id_dpj = $this->BankMasuk->getDPJID($id);
$id_dpj = $id_dpj[0]['DPJ_ID'];
$update = [
'DPJ_ID' => NULL
];
$action = $this->BankMasuk->update('kasbank_bm', $update, 'ID_KBBM', $id);
//Step Hapus Data
$action = $this->BankMasuk->delete('dp_penjualan',$id_dpj,'ID_DPJ');
$this->session->set_flashdata('flash', 'dihapus');
redirect($_SERVER['HTTP_REFERER']);
}
//Substep Three, Create Data Hutang/Piutang
public function kodeHutangBANK() {
$kk = $this->BankMasuk->getKodeHutangBANK();
if (is_array($kk) || is_object($kk)) {
foreach ($kk as $row) {
if ($row['KODE'] == null) {
return "HBA/000001";
} else {
$str = (string) $row['KODE'];
$panjang = 6;
$data = substr($str, 4, $panjang);
$ko = (int) $data + 1;
$str = (string) $ko;
$panjang = 10 - strlen($str);
$data = "HBA/000000";
$data = substr($data, 0, $panjang) . $str;
return $data;
}
}
}
}
public function detailhba() {
//Step Input Detail Hutang BANK
$method = $this->input->post('method');
$id_hba = $this->input->post('id');
$id_kbbm = $this->input->post('id_kbbm');
$id_bank = $this->input->post('id_bank');
$kode_hba = $this->kodeHutangBANK();
if ($id_bank==="") {
redirect($_SERVER['HTTP_REFERER']);
}
$kbbm = $this->BankMasuk->getDataKBBM($id_kbbm);
$nominal_hba = $kbbm[0]['NOMINAL_KBBM'];
$kode_bukti = $kbbm[0]['KODE_KBBM'];
$input = [
'NOMINAL_HBA' => $nominal_hba,
'BANK_ID' => $id_bank,
'KODE_HBA' => $kode_hba,
'KODE_BUKTI' => $kode_bukti,
'BLOCKCON' => '0'
];
$action = $this->BankMasuk->create('hutang_bank', $input);
$bank = $this->BankMasuk->getHutangSaldoBANK($id_bank);
$hutang = $bank[0]['HUTANG_BANK'] + $nominal_hba ;
$saldo = $bank[0]['SALDO_BANK'] + $nominal_hba ;
$update = [
'HUTANG_BANK' => $hutang,
'SALDO_BANK' => $saldo
];
$action = $this->BankMasuk->update('bank', $update, 'ID_BANK', $id_bank);
$id_hba = $this->BankMasuk->getIDHBA();
$update = [
'HBA_ID' => $id_hba[0]['ID_HBA']
];
$action = $this->BankMasuk->update('kasbank_bm', $update, 'ID_KBBM',$id_kbbm);
if ($action) {
$this->session->set_flashdata('flash', 'ditambah');
redirect($_SERVER['HTTP_REFERER']);
} else {
$this->session->set_flashdata('flashgagal', 'ditambah');
redirect($_SERVER['HTTP_REFERER']);
}
}
public function resethba() {
$id = $this->input->post('id');
//Step Reset Hutang BANK
$bank = $this->BankMasuk->getDataKBBM($id);
$nominal_kbbm = $bank[0]['NOMINAL_KBBM'];
$id_hba = $bank[0]['HBA_ID'];
$bank = $this->BankMasuk->getDataHBA($id_hba);
$id_bank = $bank[0]['ID_BANK'];
$hutang = $bank[0]['HUTANG_BANK'];
$saldo = $bank[0]['SALDO_BANK'];
$hutang = $hutang-$nominal_kbbm;
$saldo = $saldo-$nominal_kbbm;
$update = [
'HUTANG_BANK' => $hutang,
'SALDO_BANK' => $saldo
];
$action = $this->BankMasuk->update('bank', $update, 'ID_BANK', $id_bank);
//Step Ambil Data Lama
$id_hba = $this->BankMasuk->getHBAID($id);
$id_hba = $id_hba[0]['HBA_ID'];
$update = [
'HBA_ID' => NULL
];
$action = $this->BankMasuk->update('kasbank_bm', $update, 'ID_KBBM', $id);
//Step Hapus Data
$action = $this->BankMasuk->delete('hutang_bank',$id_hba,'ID_HBA');
$this->session->set_flashdata('flash', 'dihapus');
redirect($_SERVER['HTTP_REFERER']);
}
public function kodeHutangLAIN() {
$kk = $this->BankMasuk->getKodeHutangLAIN();
if (is_array($kk) || is_object($kk)) {
foreach ($kk as $row) {
if ($row['KODE'] == null) {
return "HLA/000001";
} else {
$str = (string) $row['KODE'];
$panjang = 6;
$data = substr($str, 4, $panjang);
$ko = (int) $data + 1;
$str = (string) $ko;
$panjang = 10 - strlen($str);
$data = "HLA/000000";
$data = substr($data, 0, $panjang) . $str;
return $data;
}
}
}
}
public function detailhla() {
//Step Input Detail Hutang LAIN
$method = $this->input->post('method');
$id_hla = $this->input->post('id');
$id_kbbm = $this->input->post('id_kbbm');
$ket_hla = $this->input->post('ket_hla');
$kode_hla = $this->kodeHutangLAIN();
if ($ket_hla==="") {
redirect($_SERVER['HTTP_REFERER']);
}
$kbbm = $this->BankMasuk->getDataKBBM($id_kbbm);
$nominal_hla = $kbbm[0]['NOMINAL_KBBM'];
$kode_bukti = $kbbm[0]['KODE_KBBM'];
$input = [
'NOMINAL_HLA' => $nominal_hla,
'KET_HLA' => $ket_hla,
'KODE_HLA' => $kode_hla,
'KODE_BUKTI' => $kode_bukti,
'BLOCKCON' => '0'
];
$action = $this->BankMasuk->create('hutang_lain', $input);
$id_hla = $this->BankMasuk->getIDHLA();
$update = [
'HLA_ID' => $id_hla[0]['ID_HLA']
];
$action = $this->BankMasuk->update('kasbank_bm', $update, 'ID_KBBM',$id_kbbm);
if ($action) {
$this->session->set_flashdata('flash', 'ditambah');
redirect($_SERVER['HTTP_REFERER']);
} else {
$this->session->set_flashdata('flashgagal', 'ditambah');
redirect($_SERVER['HTTP_REFERER']);
}
}
public function resethla() {
$id = $this->input->post('id');
//Step Ambil Data Lama
$id_hla = $this->BankMasuk->getHLAID($id);
$id_hla = $id_hla[0]['HLA_ID'];
$update = [
'HLA_ID' => NULL
];
$action = $this->BankMasuk->update('kasbank_bm', $update, 'ID_KBBM', $id);
//Step Hapus Data
$action = $this->BankMasuk->delete('hutang_lain',$id_hla,'ID_HLA');
$this->session->set_flashdata('flash', 'dihapus');
redirect($_SERVER['HTTP_REFERER']);
}
//Substep Three, Angsuran Hutang/Piutang
public function kodeDetailPKAR() {
$kk = $this->BankMasuk->getKodeDetailPKAR();
if (is_array($kk) || is_object($kk)) {
foreach ($kk as $row) {
if ($row['KODE'] == null) {
return "DPKAR/000001";
} else {
$str = (string) $row['KODE'];
$panjang = 6;
$data = substr($str, 6, $panjang);
$ko = (int) $data + 1;
$str = (string) $ko;
$panjang = 12 - strlen($str);
$data = "DPKAR/000000";
$data = substr($data, 0, $panjang) . $str;
return $data;
}
}
}
}
public function detailpkar() {
//Step Input Detail Piutang Karyawan
$method = $this->input->post('method');
$id_dpkar = $this->input->post('id');
$id_kbbm = $this->input->post('id_kbbm');
$id_pkar = $this->input->post('id_pkar');
$kode_dpkar = $this->kodeDetailPKAR();
if ($id_pkar==="") {
redirect($_SERVER['HTTP_REFERER']);
}
$kbbm = $this->BankMasuk->getDataKBBM($id_kbbm);
$nominal_pkar = $kbbm[0]['NOMINAL_KBBM'];
$kode_bukti = $kbbm[0]['KODE_KBBM'];
$input = [
'KODE_DPKAR' => $kode_dpkar,
'KODE_BUKTI' => $kode_bukti,
'PKAR_ID' => $id_pkar,
'DEBIT_DPKAR' => $nominal_pkar,
];
$action = $this->BankMasuk->create('detail_pkar', $input);
$id_dpkar = $this->BankMasuk->getIDDPKAR();
$id_dpkar = $id_dpkar[0]['ID_DPKAR'];
$update = [
'DPKAR_ID' => $id_dpkar
];
$action = $this->BankMasuk->update('kasbank_bm', $update, 'ID_KBBM',$id_kbbm);
$blockcon = $this->BankMasuk->getBlockconPKAR($id_pkar);
$blockcon = $blockcon[0]['BLOCKCON']+$nominal_pkar;
$update = [
'BLOCKCON' => $blockcon
];
$action = $this->BankMasuk->update('piutang_karyawan', $update, 'ID_PKAR', $id_pkar);
$hutang = $this->BankMasuk->getDataPKAR($id_dpkar);
$id_karyawan = $hutang[0]['ID_KARYAWAN'];
$hutang_karyawan = $hutang[0]['HUTANG_KARYAWAN']-$nominal_pkar;
$update = [
'HUTANG_KARYAWAN' => $hutang_karyawan
];
$action = $this->BankMasuk->update('karyawan', $update, 'ID_KARYAWAN', $id_karyawan);
if ($action) {
redirect($_SERVER['HTTP_REFERER']);
} else {
redirect($_SERVER['HTTP_REFERER']);
}
}
public function resetdpkar() {
$id = $this->input->post('id');
//Step Ambil Data Lama
$id_dpkar = $this->BankMasuk->getDPKARID($id);
$id_dpkar = $id_dpkar[0]['DPKAR_ID'];
$pkar = $this->BankMasuk->getDataPKAR($id_dpkar);
$id_pkar = $pkar[0]['ID_PKAR'];
$id_karyawan = $pkar[0]['ID_KARYAWAN'];
$blockcon = $pkar[0]['BLOCKCON'];
$debit_dpkar = $pkar[0]['DEBIT_DPKAR'];
$hutang_karyawan = $pkar[0]['HUTANG_KARYAWAN'];
//Step Reset Piutang Karyawan
$blockcon = $blockcon-$debit_dpkar;
$update = [
'BLOCKCON' => $blockcon
];
$action = $this->BankMasuk->update('piutang_karyawan', $update, 'ID_PKAR', $id_pkar);
$hutang = $hutang_karyawan+$debit_dpkar;
$update = [
'HUTANG_KARYAWAN' => $hutang
];
$action = $this->BankMasuk->update('karyawan', $update, 'ID_KARYAWAN', $id_karyawan);
$update = [
'DPKAR_ID' => NULL
];
$action = $this->BankMasuk->update('kasbank_bm', $update, 'ID_KBBM', $id);
//Step Hapus Data
$action = $this->BankMasuk->delete('detail_pkar',$id_dpkar,'ID_DPKAR');
$this->session->set_flashdata('flash', 'dihapus');
redirect($_SERVER['HTTP_REFERER']);
}
public function kodeDetailPPI() {
$kk = $this->BankMasuk->getKodeDetailPPI();
if (is_array($kk) || is_object($kk)) {
foreach ($kk as $row) {
if ($row['KODE'] == null) {
return "DPPI/000001";
} else {
$str = (string) $row['KODE'];
$panjang = 6;
$data = substr($str, 5, $panjang);
$ko = (int) $data + 1;
$str = (string) $ko;
$panjang = 11 - strlen($str);
$data = "DPPI/000000";
$data = substr($data, 0, $panjang) . $str;
return $data;
}
}
}
}
public function detailppi() {
//Step Input Detail Piutang Pihak Ke3
$method = $this->input->post('method');
$id_dppi = $this->input->post('id');
$id_kbbm = $this->input->post('id_kbbm');
$id_ppi = $this->input->post('id_ppi');
$kode_dppi = $this->kodeDetailPPI();
if ($id_ppi==="") {
redirect($_SERVER['HTTP_REFERER']);
}
$kbbm = $this->BankMasuk->getDataKBBM($id_kbbm);
$nominal_ppi = $kbbm[0]['NOMINAL_KBBM'];
$kode_bukti = $kbbm[0]['KODE_KBBM'];
$input = [
'KODE_DPPI' => $kode_dppi,
'KODE_BUKTI'=> $kode_bukti,
'PPI_ID' => $id_ppi,
'DEBIT_DPPI'=> $nominal_ppi
];
$action = $this->BankMasuk->create('detail_ppi', $input);
$id_dppi = $this->BankMasuk->getIDDPPI();
$id_dppi = $id_dppi[0]['ID_DPPI'];
$update = [
'DPPI_ID' => $id_dppi
];
$action = $this->BankMasuk->update('kasbank_bm', $update, 'ID_KBBM',$id_kbbm);
$blockcon = $this->BankMasuk->getBlockconPPI($id_ppi);
$blockcon = $blockcon[0]['BLOCKCON']+$nominal_ppi;
$update = [
'BLOCKCON' => $blockcon
];
$action = $this->BankMasuk->update('piutang_pihakke3', $update, 'ID_PPI', $id_ppi);
$hutang = $this->BankMasuk->getDataPPI($id_dppi);
$id_pihakke3 = $hutang[0]['ID_PIHAKKE3'];
$hutang_pihakke3 = $hutang[0]['HUTANG_PIHAKKE3']-$nominal_ppi;
$update = [
'HUTANG_PIHAKKE3' => $hutang_pihakke3
];
$action = $this->BankMasuk->update('pihakke3', $update, 'ID_PIHAKKE3', $id_pihakke3);
if ($action) {
redirect($_SERVER['HTTP_REFERER']);
} else {
redirect($_SERVER['HTTP_REFERER']);
}
}
public function resetdppi() {
$id = $this->input->post('id');
//Step Ambil Data Lama
$id_dppi = $this->BankMasuk->getDPPIID($id);
$id_dppi = $id_dppi[0]['DPPI_ID'];
$ppi = $this->BankMasuk->getDataPPI($id_dppi);
$id_ppi = $ppi[0]['ID_PPI'];
$id_pihakke3 = $ppi[0]['ID_PIHAKKE3'];
$blockcon = $ppi[0]['BLOCKCON'];
$debit_dppi = $ppi[0]['DEBIT_DPPI'];
$hutang_pihakke3 = $ppi[0]['HUTANG_PIHAKKE3'];
//Step Reset Piutang Pihak Ke3
$blockcon = $blockcon-$debit_dppi;
$update = [
'BLOCKCON' => $blockcon
];
$action = $this->BankMasuk->update('piutang_pihakke3', $update, 'ID_PPI', $id_ppi);
$hutang = $hutang_pihakke3+$debit_dppi;
$update = [
'HUTANG_PIHAKKE3' => $hutang
];
$action = $this->BankMasuk->update('pihakke3', $update, 'ID_PIHAKKE3', $id_pihakke3);
$update = [
'DPPI_ID' => NULL
];
$action = $this->BankMasuk->update('kasbank_bm', $update, 'ID_KBBM', $id);
//Step Hapus Data
$action = $this->BankMasuk->delete('detail_ppi',$id_dppi,'ID_DPPI');
$this->session->set_flashdata('flash', 'dihapus');
redirect($_SERVER['HTTP_REFERER']);
}
public function kodeDetailPDA() {
$kk = $this->BankMasuk->getKodeDetailPDA();
if (is_array($kk) || is_object($kk)) {
foreach ($kk as $row) {
if ($row['KODE'] == null) {
return "DPDA/000001";
} else {
$str = (string) $row['KODE'];
$panjang = 6;
$data = substr($str, 5, $panjang);
$ko = (int) $data + 1;
$str = (string) $ko;
$panjang = 11 - strlen($str);
$data = "DPDA/000000";
$data = substr($data, 0, $panjang) . $str;
return $data;
}
}
}
}
public function detailpda() {
//Step Input Detail Piutang Dagang/Pelanggan
$method = $this->input->post('method');
$id_dpda = $this->input->post('id');
$id_kbbm = $this->input->post('id_kbbm');
$id_pda = $this->input->post('id_pda');
$kode_dpda = $this->kodeDetailPDA();
if ($id_pda==="") {
redirect($_SERVER['HTTP_REFERER']);
}
$kbbm = $this->BankMasuk->getDataKBBM($id_kbbm);
$nominal_pda = $kbbm[0]['NOMINAL_KBBM'];
$kode_bukti = $kbbm[0]['KODE_KBBM'];
$input = [
'KODE_DPDA' => $kode_dpda,
'KODE_BUKTI'=> $kode_bukti,
'PDA_ID' => $id_pda,
'DEBIT_DPDA'=> $nominal_pda
];
$action = $this->BankMasuk->create('detail_pda', $input);
$id_dpda = $this->BankMasuk->getIDDPDA();
$id_dpda = $id_dpda[0]['ID_DPDA'];
$update = [
'DPDA_ID' => $id_dpda
];
$action = $this->BankMasuk->update('kasbank_bm', $update, 'ID_KBBM',$id_kbbm);
$blockcon = $this->BankMasuk->getBlockconPDA($id_pda);
$blockcon = $blockcon[0]['BLOCKCON']+$nominal_pda;
$update = [
'BLOCKCON' => $blockcon
];
$action = $this->BankMasuk->update('piutang_dagang', $update, 'ID_PDA', $id_pda);
$hutang = $this->BankMasuk->getDataPDA($id_dpda);
$id_pelanggan = $hutang[0]['ID_PELANGGAN'];
$hutang_pelanggan = $hutang[0]['HUTANG_PELANGGAN']-$nominal_pda;
$update = [
'HUTANG_PELANGGAN' => $hutang_pelanggan
];
$action = $this->BankMasuk->update('pelanggan', $update, 'ID_PELANGGAN', $id_pelanggan);
if ($action) {
redirect($_SERVER['HTTP_REFERER']);
} else {
redirect($_SERVER['HTTP_REFERER']);
}
}
public function resetdpda() {
$id = $this->input->post('id');
//Step Ambil Data Lama
$id_dpda = $this->BankMasuk->getDPDAID($id);
$id_dpda = $id_dpda[0]['DPDA_ID'];
$pda = $this->BankMasuk->getDataPDA($id_dpda);
$id_pda = $pda[0]['ID_PDA'];
$id_pelanggan = $pda[0]['ID_PELANGGAN'];
$blockcon = $pda[0]['BLOCKCON'];
$debit_dpda = $pda[0]['DEBIT_DPDA'];
$hutang_pelanggan = $pda[0]['HUTANG_PELANGGAN'];
//Step Reset Piutang Dagang/Pelanggan
$blockcon = $blockcon-$debit_dpda;
$update = [
'BLOCKCON' => $blockcon
];
$action = $this->BankMasuk->update('piutang_dagang', $update, 'ID_PDA', $id_pda);
$hutang = $hutang_pelanggan+$debit_dpda;
$update = [
'HUTANG_PELANGGAN' => $hutang
];
$action = $this->BankMasuk->update('pelanggan', $update, 'ID_PELANGGAN', $id_pelanggan);
$update = [
'DPDA_ID' => NULL
];
$action = $this->BankMasuk->update('kasbank_bm', $update, 'ID_KBBM', $id);
//Step Hapus Data
$action = $this->BankMasuk->delete('detail_pda',$id_dpda,'ID_DPDA');
$this->session->set_flashdata('flash', 'dihapus');
redirect($_SERVER['HTTP_REFERER']);
}
//Substep Three, Link Biaya Pengiriman
public function kodeDetailBP() {
$kk = $this->BankMasuk->getKodeDetailBP();
if (is_array($kk) || is_object($kk)) {
foreach ($kk as $row) {
if ($row['KODE'] == null) {
return "DBP/000001";
} else {
$str = (string) $row['KODE'];
$panjang = 6;
$data = substr($str, 4, $panjang);
$ko = (int) $data + 1;
$str = (string) $ko;
$panjang = 10 - strlen($str);
$data = "DBP/000000";
$data = substr($data, 0, $panjang) . $str;
return $data;
}
}
}
}
public function detailbp() {
//Step Input Detail Biaya Pengiriman
$method = $this->input->post('method');
$id_dbp = $this->input->post('id');
$id_kbbm = $this->input->post('id_kbbm');
$id_bp = $this->input->post('id_bp');
$kode_dbp = $this->kodeDetailBP();
if ($id_bp==="") {
redirect($_SERVER['HTTP_REFERER']);
}
$kbbm = $this->BankMasuk->getDataKBBM($id_kbbm);
$debit_dbp = $kbbm[0]['NOMINAL_KBBM'];
$bukti_debit = $kbbm[0]['KODE_KBBM'];
$input = [
'KODE_DBP' => $kode_dbp,
'BUKTI_DEBIT' => $bukti_debit,
'BP_ID' => $id_bp,
'DEBIT_DBP' => $debit_dbp,
];
$action = $this->BankMasuk->create('detail_bp', $input);
$id_dbp = $this->BankMasuk->getIDDBP();
$id_dbp = $id_dbp[0]['ID_DBP'];
$update = [
'DBP_ID' => $id_dbp
];
$action = $this->BankMasuk->update('kasbank_bm', $update, 'ID_KBBM',$id_kbbm);
$blockdeb = $this->BankMasuk->getBlockdebBP($id_bp);
$blockdeb = $blockdeb[0]['BLOCKDEB_BP']+$debit_dbp;
$update = [
'BLOCKDEB_BP' => $blockdeb
];
$action = $this->BankMasuk->update('biaya_pengiriman', $update, 'ID_BP', $id_bp);
if ($action) {
redirect($_SERVER['HTTP_REFERER']);
} else {
redirect($_SERVER['HTTP_REFERER']);
}
}
public function resetdbp() {
$id = $this->input->post('id');
//Step Ambil Data Lama
$id_dbp = $this->BankMasuk->getDBPID($id);
$id_dbp = $id_dbp[0]['DBP_ID'];
$bp = $this->BankMasuk->getDataBP($id_dbp);
$id_bp = $bp[0]['ID_BP'];
$blockdeb = $bp[0]['BLOCKDEB_BP'];
$debit_dbp = $bp[0]['DEBIT_DBP'];
//Step Reset Biaya Pengiriman
$blockdeb = $blockdeb-$debit_dbp;
$update = [
'BLOCKDEB_BP' => $blockdeb
];
$action = $this->BankMasuk->update('biaya_pengiriman', $update, 'ID_BP', $id_bp);
$update = [
'DBP_ID' => NULL
];
$action = $this->BankMasuk->update('kasbank_bm', $update, 'ID_KBBM', $id);
//Step Hapus Data
$action = $this->BankMasuk->delete('detail_bp',$id_dbp,'ID_DBP');
$this->session->set_flashdata('flash', 'dihapus');
redirect($_SERVER['HTTP_REFERER']);
}
}