copy dari repo om Irfan
This commit is contained in:
@@ -0,0 +1,233 @@
|
||||
<?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 ManageDpPembelian extends CI_Controller
|
||||
{
|
||||
function __construct()
|
||||
{
|
||||
parent::__construct();
|
||||
$this->load->model('ModelDpPembelian', 'DpPembelian');
|
||||
$this->load->model('ModelHutangDagang', 'Hda');
|
||||
$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);
|
||||
}
|
||||
|
||||
public function index()
|
||||
{
|
||||
$dppembelian = $this->DpPembelian->getDataDpPembelian();
|
||||
$hda = $this->Hda->getDataHutangDagangDetail();
|
||||
|
||||
$data = [
|
||||
'sidebar' => "menu accounting",
|
||||
'navChild' => "",
|
||||
'dppembelian' => $dppembelian,
|
||||
'hda' => $hda
|
||||
];
|
||||
|
||||
$this->load->view('proses/DpPembelian', $data);
|
||||
}
|
||||
|
||||
//Step Two, Input Transaksi
|
||||
public function tambahTransaksi($id) {
|
||||
$transaksi = $this->DpPembelian->getDataDetailDpPembelian($id);
|
||||
$title = $this->DpPembelian->getTitleDPB($id);
|
||||
$id_supplier = $this->Hda->getDataDPB($id);
|
||||
$id_supplier = $id_supplier[0]['SUPPLIER_ID'];
|
||||
$hda = $this->Hda->getDataHutangDagangDPB($id_supplier);
|
||||
$data = [
|
||||
'sidebar' => "menu accounting",
|
||||
'navChild' => "",
|
||||
'transaksi' => $transaksi,
|
||||
'id_dpb' => $id,
|
||||
'title1' => $title[0]['KODE_DPB'],
|
||||
'title2' => $title[0]['DEBIT'],
|
||||
'title3' => $title[0]['KREDIT'],
|
||||
'hda' => $hda
|
||||
];
|
||||
|
||||
$this->load->view('proses/DetailDpPembelian', $data);
|
||||
}
|
||||
|
||||
public function kodeDetailDPB() {
|
||||
$kk = $this->DpPembelian->getKodeDetailDPB();
|
||||
if (is_array($kk) || is_object($kk)) {
|
||||
foreach ($kk as $row) {
|
||||
if ($row['KODE'] == null) {
|
||||
return "DDPB/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 = "DDPB/000000";
|
||||
$data = substr($data, 0, $panjang) . $str;
|
||||
return $data;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public function kodeDetailHDA() {
|
||||
$kk = $this->DpPembelian->getKodeDetailHDA();
|
||||
if (is_array($kk) || is_object($kk)) {
|
||||
foreach ($kk as $row) {
|
||||
if ($row['KODE'] == null) {
|
||||
return "DHDA/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 = "DHDA/000000";
|
||||
$data = substr($data, 0, $panjang) . $str;
|
||||
return $data;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public function savetransaksi() {
|
||||
//Step Input Transaksi
|
||||
$method = $this->input->post('method');
|
||||
$id_ddpb = $this->input->post('id');
|
||||
$id_dpb = $this->input->post('id_dpb');
|
||||
$id_hda = $this->input->post('id_hda');
|
||||
$debit_ddpb = $this->input->post('debit_ddpb');
|
||||
$kode_ddpb = $this->kodeDetailDPB();
|
||||
$kode_dhda = $this->kodeDetailHDA();
|
||||
|
||||
$datadpb = $this->DpPembelian->getDataDpPembelian($id_dpb);
|
||||
$nominal_dpb = $datadpb[0]['NOMINAL_DPB'];
|
||||
$blockcon_dpb = $datadpb[0]['BLOCKCON'];
|
||||
$id_supplier = $datadpb[0]['SUPPLIER_ID'];
|
||||
$sisa1 = $nominal_dpb-$blockcon_dpb;
|
||||
$datahda = $this->DpPembelian->getDataHutangDagang($id_hda);
|
||||
$nominal_hda = $datahda[0]['NOMINAL_HDA'];
|
||||
$blockcon_hda = $datahda[0]['BLOCKCON'];
|
||||
$sisa2 = $nominal_hda-$blockcon_hda;
|
||||
|
||||
if ($sisa1<$debit_ddpb) {
|
||||
$this->session->set_flashdata('flashdpb', 'ditambah');
|
||||
redirect($_SERVER['HTTP_REFERER']);
|
||||
}
|
||||
|
||||
if ($sisa2<$debit_ddpb) {
|
||||
$this->session->set_flashdata('flashhda', 'ditambah');
|
||||
redirect($_SERVER['HTTP_REFERER']);
|
||||
}
|
||||
|
||||
$input = [
|
||||
'DPB_ID' => $id_dpb,
|
||||
'HDA_ID' => $id_hda,
|
||||
'DEBIT_DDPB' => $debit_ddpb,
|
||||
'KODE_DDPB' => $kode_ddpb
|
||||
];
|
||||
$action = $this->DpPembelian->create('detail_dpb', $input);
|
||||
$input = [
|
||||
'KODE_BUKTI' => $kode_ddpb,
|
||||
'HDA_ID' => $id_hda,
|
||||
'DEBIT_DHDA' => $debit_ddpb,
|
||||
'KODE_DHDA' => $kode_dhda
|
||||
];
|
||||
$action = $this->DpPembelian->create('detail_hda', $input);
|
||||
|
||||
//Step Ambil Data Lama
|
||||
$id_ddpb = $this->DpPembelian->getIDDDPB();
|
||||
$id_dhda = $this->DpPembelian->getIDDHDA();
|
||||
$datadpb = $this->DpPembelian->getDataDPB($id_ddpb[0]['ID_DDPB']);
|
||||
$blockcon_dpb = $datadpb[0]['BLOCKCON'];
|
||||
$blockcon_dpb = $blockcon_dpb+$debit_ddpb;
|
||||
$datahda = $this->DpPembelian->getDataHDA($id_dhda[0]['ID_DHDA']);
|
||||
$blockcon_hda = $datahda[0]['BLOCKCON'];
|
||||
$blockcon_hda = $blockcon_hda+$debit_ddpb;
|
||||
$datasupplier = $this->DpPembelian->getDataSupplier($id_supplier);
|
||||
$piutang_supplier = $datasupplier[0]['PIUTANG_SUPPLIER'];
|
||||
$saldo_supplier = $datasupplier[0]['SALDO_SUPPLIER'];
|
||||
$piutang_supplier = $piutang_supplier-$debit_ddpb;
|
||||
$saldo_supplier = $saldo_supplier-$debit_ddpb;
|
||||
$update = [
|
||||
'BLOCKCON' => $blockcon_dpb
|
||||
];
|
||||
$action = $this->DpPembelian->update('dp_pembelian', $update, 'ID_DPB', $id_dpb);
|
||||
$update = [
|
||||
'BLOCKCON' => $blockcon_hda
|
||||
];
|
||||
$action = $this->DpPembelian->update('hutang_dagang', $update, 'ID_HDA', $id_hda);
|
||||
$update = [
|
||||
'PIUTANG_SUPPLIER' => $piutang_supplier,
|
||||
'SALDO_SUPPLIER' => $saldo_supplier
|
||||
];
|
||||
$action = $this->DpPembelian->update('supplier', $update, 'ID_SUPPLIER', $id_supplier);
|
||||
|
||||
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 resetdpb() {
|
||||
$id = $this->input->post('id');
|
||||
|
||||
//Step Reset Saldo Data Blockcon di DPB dan HDA
|
||||
$dataddpb = $this->DpPembelian->getDataDDPB($id);
|
||||
$id_dpb = $dataddpb[0]['DPB_ID'];
|
||||
$id_hda = $dataddpb[0]['HDA_ID'];
|
||||
$debit_ddpb = $dataddpb[0]['DEBIT_DDPB'];
|
||||
$kode_ddpb = $dataddpb[0]['KODE_DDPB'];
|
||||
$datadpb = $this->DpPembelian->getDpPembelian($id_dpb);
|
||||
$id_supplier = $datadpb[0]['SUPPLIER_ID'];
|
||||
$blockcon_dpb = $datadpb[0]['BLOCKCON'];
|
||||
$blockcon_dpb = $blockcon_dpb-$debit_ddpb;
|
||||
$datahda = $this->DpPembelian->getDataHutangDagang($id_hda);
|
||||
$blockcon_hda = $datahda[0]['BLOCKCON'];
|
||||
$blockcon_hda = $blockcon_hda-$debit_ddpb;
|
||||
$datasupplier = $this->DpPembelian->getDataSupplier($id_supplier);
|
||||
$piutang_supplier = $datasupplier[0]['PIUTANG_SUPPLIER'];
|
||||
$saldo_supplier = $datasupplier[0]['SALDO_SUPPLIER'];
|
||||
$piutang_supplier = $piutang_supplier+$debit_ddpb;
|
||||
$saldo_supplier = $saldo_supplier+$debit_ddpb;
|
||||
$update = [
|
||||
'BLOCKCON' => $blockcon_dpb
|
||||
];
|
||||
$action = $this->DpPembelian->update('dp_pembelian', $update, 'ID_DPB', $id_dpb);
|
||||
$update = [
|
||||
'BLOCKCON' => $blockcon_hda
|
||||
];
|
||||
$action = $this->DpPembelian->update('hutang_dagang', $update, 'ID_HDA', $id_hda);
|
||||
$update = [
|
||||
'PIUTANG_SUPPLIER' => $piutang_supplier,
|
||||
'SALDO_SUPPLIER' => $saldo_supplier
|
||||
];
|
||||
$action = $this->DpPembelian->update('supplier', $update, 'ID_SUPPLIER', $id_supplier);
|
||||
|
||||
//Step Hapus Data
|
||||
$action = $this->DpPembelian->delete('detail_dpb',$id,'ID_DDPB');
|
||||
$action = $this->DpPembelian->hapusDetailHda($kode_ddpb);
|
||||
|
||||
$this->session->set_flashdata('flash', 'direset');
|
||||
redirect($_SERVER['HTTP_REFERER']);
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user