4926 lines
145 KiB
PHP
4926 lines
145 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 ManagePersediaanQTY extends CI_Controller
|
|
{
|
|
function __construct()
|
|
{
|
|
parent::__construct();
|
|
$this->load->model('ModelPersediaan', 'Persediaan');
|
|
$this->load->model('ModelBarang', 'Barang');
|
|
$this->load->model('ModelCorp', 'Corp');
|
|
$this->load->model('ModelKaryawan', 'Karyawan');
|
|
$this->load->model('ModelNeraca', 'Neraca');
|
|
$this->load->model('ModelPelanggan', 'Pelanggan');
|
|
$this->load->model('ModelProcessor', 'Processor');
|
|
$this->load->model('ModelRam', 'Ram');
|
|
$this->load->model('ModelSsd', 'Ssd');
|
|
$this->load->model('ModelHdd', 'Hdd');
|
|
$this->load->model('ModelLain', 'Lain');
|
|
$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 dataCabutan() {
|
|
$datPersediaan = $this->Persediaan->getDataKuantitiCabutan();
|
|
$sn = $this->Persediaan->getDataSnCabutan();
|
|
$processor = $this->Processor->getDataProcessor();
|
|
$ram = $this->Ram->getDataRam();
|
|
$ssd = $this->Ssd->getDataSsd();
|
|
$hdd = $this->Hdd->getDataHdd();
|
|
$lain = $this->Lain->getDataLain();
|
|
$data = [
|
|
'sidebar' => "menu penjualan",
|
|
'navChild' => "",
|
|
'persediaan' => $datPersediaan,
|
|
'processor' => $processor,
|
|
'ram' => $ram,
|
|
'ssd' => $ssd,
|
|
'hdd' => $hdd,
|
|
'lain' => $lain,
|
|
'sn' => $sn,
|
|
];
|
|
$this->load->view('proses/PersediaanCabutan', $data);
|
|
}
|
|
|
|
public function dataCabutanView($id) {
|
|
$datPersediaan = $this->Persediaan->getDataKuantitiCabutan($id);
|
|
$data = [
|
|
'sidebar' => "menu penjualan",
|
|
'navChild' => "",
|
|
'persediaan' => $datPersediaan,
|
|
'nama_sn' => $datPersediaan[0]['NAMA_SN'],
|
|
'id_sn' => $id
|
|
];
|
|
$this->load->view('proses/PersediaanCabutanView', $data);
|
|
}
|
|
|
|
public function dataCabutanDetail($id) {
|
|
$datPersediaan = $this->Persediaan->getDataKuantitiCabutanDetail($id);
|
|
$data = [
|
|
'sidebar' => "menu penjualan",
|
|
'navChild' => "",
|
|
'persediaan' => $datPersediaan,
|
|
'id_barang' => $id,
|
|
];
|
|
$this->load->view('proses/PersediaanCabutanDetail', $data);
|
|
}
|
|
|
|
public function kodeDetailKm() {
|
|
$kk = $this->Persediaan->getKodeKeluarMasuk();
|
|
if (is_array($kk) || is_object($kk)) {
|
|
foreach ($kk as $row) {
|
|
if ($row['KODE'] == null) {
|
|
return "KM/000001";
|
|
} else {
|
|
$str = (string) $row['KODE'];
|
|
$panjang = 6;
|
|
$data = substr($str, 3, $panjang);
|
|
|
|
$ko = (int) $data + 1;
|
|
$str = (string) $ko;
|
|
|
|
$panjang = 9 - strlen($str);
|
|
$data = "KM/000000";
|
|
$data = substr($data, 0, $panjang) . $str;
|
|
return $data;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
public function kodeStockKuantiti() {
|
|
$kk = $this->Persediaan->getKodeStockKuantiti();
|
|
if (is_array($kk) || is_object($kk)) {
|
|
foreach ($kk as $row) {
|
|
if ($row['KODE'] == null) {
|
|
return "STQ/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 = "STQ/000000";
|
|
$data = substr($data, 0, $panjang) . $str;
|
|
return $data;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
public function savecabutan() {
|
|
$method = $this->input->post('method');
|
|
$id_km = $this->input->post('id');
|
|
$id_processor = $this->input->post('id_processor');
|
|
$id_ram = $this->input->post('id_ram');
|
|
$id_ssd = $this->input->post('id_ssd');
|
|
$id_hdd = $this->input->post('id_hdd');
|
|
$id_lain = $this->input->post('id_lain');
|
|
$id_sn = $this->input->post('id_sn');
|
|
$qty_km1 = $this->input->post('qty_km1');
|
|
$qty_km2 = $this->input->post('qty_km2');
|
|
$qty_km3 = $this->input->post('qty_km3');
|
|
$qty_km4 = $this->input->post('qty_km4');
|
|
$qty_km5 = $this->input->post('qty_km5');
|
|
$tgl_km = date('m/d/Y');
|
|
|
|
if ($id_processor!=NULL) {
|
|
if ($qty_km1=="") {
|
|
$this->session->set_flashdata('flashkosong', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
} else if ($qty_km1==0) {
|
|
$this->session->set_flashdata('flashzero', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
}
|
|
|
|
if ($id_ram!=NULL) {
|
|
if ($qty_km2=="") {
|
|
$this->session->set_flashdata('flashkosong', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
} else if ($qty_km2==0) {
|
|
$this->session->set_flashdata('flashzero', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
}
|
|
|
|
if ($id_ssd!=NULL) {
|
|
if ($qty_km3=="") {
|
|
$this->session->set_flashdata('flashkosong', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
} else if ($qty_km3==0) {
|
|
$this->session->set_flashdata('flashzero', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
}
|
|
|
|
if ($id_hdd!=NULL) {
|
|
if ($qty_km4=="") {
|
|
$this->session->set_flashdata('flashkosong', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
} else if ($qty_km4==0) {
|
|
$this->session->set_flashdata('flashzero', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
}
|
|
|
|
if ($id_lain!=NULL) {
|
|
if ($qty_km5=="") {
|
|
$this->session->set_flashdata('flashkosong', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
} else if ($qty_km5==0) {
|
|
$this->session->set_flashdata('flashzero', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
}
|
|
|
|
if ($qty_km1>4 OR $qty_km2>24 OR $qty_km3>12 OR $qty_km4>12 OR $qty_km5>4) {
|
|
$this->session->set_flashdata('flashlimit', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
} else if ($id_processor==0 AND $id_ram==0 AND $id_ssd==0 AND $id_hdd==0 AND $id_lain==0) {
|
|
$this->session->set_flashdata('flashnone', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
$datKm = $this->Persediaan->getID_KM($id_sn);
|
|
if ($datKm[0]['ID_KM']==NULL) {
|
|
$datSn = $this->Persediaan->getDataSn($id_sn);
|
|
$snBarang = $datSn[0]['BARANG_ID'];
|
|
$datKuantiti = $this->Persediaan->getKuantitiBarang($snBarang);
|
|
$pcm_kuantiti = $datKuantiti[0]['PCM_KUANTITI'];
|
|
$cabutan_kuantiti = $datKuantiti[0]['CABUTAN_KUANTITI'];
|
|
$pcm = $pcm_kuantiti-1;
|
|
$cabutan = $cabutan_kuantiti+1;
|
|
$update = [
|
|
'PCM_KUANTITI' => $pcm,
|
|
'CABUTAN_KUANTITI' => $cabutan
|
|
];
|
|
$action = $this->Persediaan->update('kuantiti', $update, 'BARANG_ID', $snBarang);
|
|
}
|
|
|
|
if ($id_processor!=0 OR $id_processor!="") {
|
|
$dataSn = $this->Persediaan->getNama_Sn($id_sn);
|
|
$nama_sn = $dataSn[0]['NAMA_SN'];
|
|
$kode_barang = "CAB/$nama_sn/PROC";
|
|
|
|
$stockMasuk = $this->Persediaan->getDataDetailKm();
|
|
foreach ($stockMasuk as $key) {
|
|
$dataKm = $this->Persediaan->getDataDetailKm($key['ID_KM']);
|
|
$barangID = $dataKm[0]['BARANG_ID'];
|
|
$dataBarang = $this->Persediaan->getDataBarang($barangID);
|
|
$kodeBarang = $dataBarang[0]['KODE_BARANG'];
|
|
if ($kodeBarang==$kode_barang) {
|
|
$this->session->set_flashdata('flashkembar', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
}
|
|
|
|
$dataProcessor = $this->Processor->getDataProcessor($id_processor);
|
|
$nama_barang = $dataProcessor[0]['NAMA_PROCESSOR'];
|
|
|
|
$input = [
|
|
'KODE_BARANG' => $kode_barang,
|
|
'NAMA_BARANG' => $nama_barang,
|
|
'JENIS_ID' => '6'
|
|
];
|
|
$action = $this->Persediaan->create('barang', $input);
|
|
|
|
$kode_km = $this->kodeDetailKm();
|
|
$id_barang = $this->Persediaan->getID_BarangMax();
|
|
$id_barang = $id_barang[0]['ID_BARANG'];
|
|
|
|
$input = [
|
|
'BARANG_ID' => $id_barang,
|
|
'GLOBAL_KUANTITI' => $qty_km1,
|
|
'PROSES_KUANTITI' => '0',
|
|
'PCM_KUANTITI' => $qty_km1,
|
|
'CABUTAN_KUANTITI' => '0',
|
|
'PEMINJAMAN_KUANTITI' => '0',
|
|
'PENDING_KUANTITI' => '0',
|
|
'KONSINYASI_KUANTITI' => '0',
|
|
'SEWA_KUANTITI' => '0',
|
|
'SERVICE_KUANTITI' => '0',
|
|
'THR_KUANTITI' => '0',
|
|
'ITC_KUANTITI' => '0'
|
|
];
|
|
$action = $this->Persediaan->create('kuantiti', $input);
|
|
|
|
$input = [
|
|
'BARANG_ID' => $id_barang,
|
|
'AVG_DH' => '0',
|
|
'DEALER_DH' => '0',
|
|
'USER_DH' => '0'
|
|
];
|
|
|
|
$action = $this->Persediaan->create('daftar_harga', $input);
|
|
|
|
$input = [
|
|
'JENIS_KM' => '1',
|
|
'BARANG_ID' => $id_barang,
|
|
'KODE_KM' => $kode_km,
|
|
'QTY_KM' => $qty_km1,
|
|
'TGL_KM' => $tgl_km,
|
|
'SN_ID' => $id_sn
|
|
];
|
|
$action = $this->Persediaan->create('detail_km', $input);
|
|
|
|
$datSn = $this->Persediaan->getDataSn($id_sn);
|
|
$status_sn = $datSn[0]['STATUS_SN'];
|
|
if ($status_sn!="1") {
|
|
$update = [
|
|
'STATUS_SN' => '2'
|
|
];
|
|
$action = $this->Persediaan->update('sn', $update, 'ID_SN', $id_sn);
|
|
}
|
|
|
|
$kode_stq = $this->kodeStockKuantiti();
|
|
$input = [
|
|
'KODE_STQ' => $kode_stq,
|
|
'KODE_BUKTI' => $kode_km,
|
|
'TGL_STQ' => $tgl_km,
|
|
'BARANG_ID' => $id_barang,
|
|
'QTY_BEFORE' => '0',
|
|
'QTY_IN' => $qty_km1,
|
|
'QTY_OUT' => '0',
|
|
'QTY_AFTER' => $qty_km1
|
|
];
|
|
$action = $this->Persediaan->create('stock_kuantiti', $input);
|
|
}
|
|
|
|
if ($id_ram!=0 OR $id_ram!="") {
|
|
$dataSn = $this->Persediaan->getNama_Sn($id_sn);
|
|
$nama_sn = $dataSn[0]['NAMA_SN'];
|
|
$kode_barang = "CAB/$nama_sn/RAM";
|
|
|
|
$stockMasuk = $this->Persediaan->getDataDetailKm();
|
|
foreach ($stockMasuk as $key) {
|
|
$dataKm = $this->Persediaan->getDataDetailKm($key['ID_KM']);
|
|
$barangID = $dataKm[0]['BARANG_ID'];
|
|
$dataBarang = $this->Persediaan->getDataBarang($barangID);
|
|
$kodeBarang = $dataBarang[0]['KODE_BARANG'];
|
|
if ($kodeBarang==$kode_barang) {
|
|
$this->session->set_flashdata('flashkembar', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
}
|
|
|
|
$dataRam = $this->Ram->getDataRam($id_ram);
|
|
$nama_barang = $dataRam[0]['NAMA_RAM'];
|
|
|
|
$input = [
|
|
'KODE_BARANG' => $kode_barang,
|
|
'NAMA_BARANG' => $nama_barang,
|
|
'JENIS_ID' => '6'
|
|
];
|
|
$action = $this->Persediaan->create('barang', $input);
|
|
|
|
$kode_km = $this->kodeDetailKm();
|
|
$id_barang = $this->Persediaan->getID_BarangMax();
|
|
$id_barang = $id_barang[0]['ID_BARANG'];
|
|
|
|
$input = [
|
|
'BARANG_ID' => $id_barang,
|
|
'GLOBAL_KUANTITI' => $qty_km2,
|
|
'PROSES_KUANTITI' => '0',
|
|
'PCM_KUANTITI' => $qty_km2,
|
|
'CABUTAN_KUANTITI' => '0',
|
|
'PEMINJAMAN_KUANTITI' => '0',
|
|
'PENDING_KUANTITI' => '0',
|
|
'KONSINYASI_KUANTITI' => '0',
|
|
'SEWA_KUANTITI' => '0',
|
|
'SERVICE_KUANTITI' => '0',
|
|
'THR_KUANTITI' => '0',
|
|
'ITC_KUANTITI' => '0'
|
|
];
|
|
$action = $this->Persediaan->create('kuantiti', $input);
|
|
|
|
$input = [
|
|
'BARANG_ID' => $id_barang,
|
|
'AVG_DH' => '0',
|
|
'DEALER_DH' => '0',
|
|
'USER_DH' => '0'
|
|
];
|
|
|
|
$action = $this->Persediaan->create('daftar_harga', $input);
|
|
|
|
$input = [
|
|
'JENIS_KM' => '1',
|
|
'BARANG_ID' => $id_barang,
|
|
'KODE_KM' => $kode_km,
|
|
'QTY_KM' => $qty_km2,
|
|
'TGL_KM' => $tgl_km,
|
|
'SN_ID' => $id_sn
|
|
];
|
|
$action = $this->Persediaan->create('detail_km', $input);
|
|
|
|
$datSn = $this->Persediaan->getDataSn($id_sn);
|
|
$status_sn = $datSn[0]['STATUS_SN'];
|
|
if ($status_sn!="1") {
|
|
$update = [
|
|
'STATUS_SN' => '2'
|
|
];
|
|
$action = $this->Persediaan->update('sn', $update, 'ID_SN', $id_sn);
|
|
}
|
|
|
|
$kode_stq = $this->kodeStockKuantiti();
|
|
$input = [
|
|
'KODE_STQ' => $kode_stq,
|
|
'KODE_BUKTI' => $kode_km,
|
|
'TGL_STQ' => $tgl_km,
|
|
'BARANG_ID' => $id_barang,
|
|
'QTY_BEFORE' => '0',
|
|
'QTY_IN' => $qty_km2,
|
|
'QTY_OUT' => '0',
|
|
'QTY_AFTER' => $qty_km2
|
|
];
|
|
$action = $this->Persediaan->create('stock_kuantiti', $input);
|
|
}
|
|
|
|
if ($id_ssd!=0 OR $id_ssd!="") {
|
|
$dataSn = $this->Persediaan->getNama_Sn($id_sn);
|
|
$nama_sn = $dataSn[0]['NAMA_SN'];
|
|
$kode_barang = "CAB/$nama_sn/SSD";
|
|
|
|
$stockMasuk = $this->Persediaan->getDataDetailKm();
|
|
foreach ($stockMasuk as $key) {
|
|
$dataKm = $this->Persediaan->getDataDetailKm($key['ID_KM']);
|
|
$barangID = $dataKm[0]['BARANG_ID'];
|
|
$dataBarang = $this->Persediaan->getDataBarang($barangID);
|
|
$kodeBarang = $dataBarang[0]['KODE_BARANG'];
|
|
if ($kodeBarang==$kode_barang) {
|
|
$this->session->set_flashdata('flashkembar', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
}
|
|
|
|
$dataSsd = $this->Ssd->getDataSsd($id_ssd);
|
|
$nama_barang = $dataSsd[0]['NAMA_SSD'];
|
|
|
|
$input = [
|
|
'KODE_BARANG' => $kode_barang,
|
|
'NAMA_BARANG' => $nama_barang,
|
|
'JENIS_ID' => '6'
|
|
];
|
|
$action = $this->Persediaan->create('barang', $input);
|
|
|
|
$kode_km = $this->kodeDetailKm();
|
|
$id_barang = $this->Persediaan->getID_BarangMax();
|
|
$id_barang = $id_barang[0]['ID_BARANG'];
|
|
|
|
$input = [
|
|
'BARANG_ID' => $id_barang,
|
|
'GLOBAL_KUANTITI' => $qty_km3,
|
|
'PROSES_KUANTITI' => '0',
|
|
'PCM_KUANTITI' => $qty_km3,
|
|
'CABUTAN_KUANTITI' => '0',
|
|
'PEMINJAMAN_KUANTITI' => '0',
|
|
'PENDING_KUANTITI' => '0',
|
|
'KONSINYASI_KUANTITI' => '0',
|
|
'SEWA_KUANTITI' => '0',
|
|
'SERVICE_KUANTITI' => '0',
|
|
'THR_KUANTITI' => '0',
|
|
'ITC_KUANTITI' => '0'
|
|
];
|
|
$action = $this->Persediaan->create('kuantiti', $input);
|
|
|
|
$input = [
|
|
'BARANG_ID' => $id_barang,
|
|
'AVG_DH' => '0',
|
|
'DEALER_DH' => '0',
|
|
'USER_DH' => '0'
|
|
];
|
|
|
|
$action = $this->Persediaan->create('daftar_harga', $input);
|
|
|
|
$input = [
|
|
'JENIS_KM' => '1',
|
|
'BARANG_ID' => $id_barang,
|
|
'KODE_KM' => $kode_km,
|
|
'QTY_KM' => $qty_km3,
|
|
'TGL_KM' => $tgl_km,
|
|
'SN_ID' => $id_sn
|
|
];
|
|
$action = $this->Persediaan->create('detail_km', $input);
|
|
|
|
$datSn = $this->Persediaan->getDataSn($id_sn);
|
|
$status_sn = $datSn[0]['STATUS_SN'];
|
|
if ($status_sn!="1") {
|
|
$update = [
|
|
'STATUS_SN' => '2'
|
|
];
|
|
$action = $this->Persediaan->update('sn', $update, 'ID_SN', $id_sn);
|
|
}
|
|
|
|
$kode_stq = $this->kodeStockKuantiti();
|
|
$input = [
|
|
'KODE_STQ' => $kode_stq,
|
|
'KODE_BUKTI' => $kode_km,
|
|
'TGL_STQ' => $tgl_km,
|
|
'BARANG_ID' => $id_barang,
|
|
'QTY_BEFORE' => '0',
|
|
'QTY_IN' => $qty_km3,
|
|
'QTY_OUT' => '0',
|
|
'QTY_AFTER' => $qty_km3
|
|
];
|
|
$action = $this->Persediaan->create('stock_kuantiti', $input);
|
|
}
|
|
|
|
if ($id_hdd!=0 OR $id_hdd!="") {
|
|
$dataSn = $this->Persediaan->getNama_Sn($id_sn);
|
|
$nama_sn = $dataSn[0]['NAMA_SN'];
|
|
$kode_barang = "CAB/$nama_sn/HDD";
|
|
|
|
$stockMasuk = $this->Persediaan->getDataDetailKm();
|
|
foreach ($stockMasuk as $key) {
|
|
$dataKm = $this->Persediaan->getDataDetailKm($key['ID_KM']);
|
|
$barangID = $dataKm[0]['BARANG_ID'];
|
|
$dataBarang = $this->Persediaan->getDataBarang($barangID);
|
|
$kodeBarang = $dataBarang[0]['KODE_BARANG'];
|
|
if ($kodeBarang==$kode_barang) {
|
|
$this->session->set_flashdata('flashkembar', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
}
|
|
|
|
$dataHdd = $this->Hdd->getDataHdd($id_hhd);
|
|
$nama_barang = $dataHdd[0]['NAMA_HDD'];
|
|
|
|
$input = [
|
|
'KODE_BARANG' => $kode_barang,
|
|
'NAMA_BARANG' => $nama_barang,
|
|
'JENIS_ID' => '6'
|
|
];
|
|
$action = $this->Persediaan->create('barang', $input);
|
|
|
|
$kode_km = $this->kodeDetailKm();
|
|
$id_barang = $this->Persediaan->getID_BarangMax();
|
|
$id_barang = $id_barang[0]['ID_BARANG'];
|
|
|
|
$input = [
|
|
'BARANG_ID' => $id_barang,
|
|
'GLOBAL_KUANTITI' => $qty_km4,
|
|
'PROSES_KUANTITI' => '0',
|
|
'PCM_KUANTITI' => $qty_km4,
|
|
'CABUTAN_KUANTITI' => '0',
|
|
'PEMINJAMAN_KUANTITI' => '0',
|
|
'PENDING_KUANTITI' => '0',
|
|
'KONSINYASI_KUANTITI' => '0',
|
|
'SEWA_KUANTITI' => '0',
|
|
'SERVICE_KUANTITI' => '0',
|
|
'THR_KUANTITI' => '0',
|
|
'ITC_KUANTITI' => '0'
|
|
];
|
|
$action = $this->Persediaan->create('kuantiti', $input);
|
|
|
|
$input = [
|
|
'BARANG_ID' => $id_barang,
|
|
'AVG_DH' => '0',
|
|
'DEALER_DH' => '0',
|
|
'USER_DH' => '0'
|
|
];
|
|
|
|
$action = $this->Persediaan->create('daftar_harga', $input);
|
|
|
|
$input = [
|
|
'JENIS_KM' => '1',
|
|
'BARANG_ID' => $id_barang,
|
|
'KODE_KM' => $kode_km,
|
|
'QTY_KM' => $qty_km4,
|
|
'TGL_KM' => $tgl_km,
|
|
'SN_ID' => $id_sn
|
|
];
|
|
$action = $this->Persediaan->create('detail_km', $input);
|
|
|
|
$datSn = $this->Persediaan->getDataSn($id_sn);
|
|
$status_sn = $datSn[0]['STATUS_SN'];
|
|
if ($status_sn!="1") {
|
|
$update = [
|
|
'STATUS_SN' => '2'
|
|
];
|
|
$action = $this->Persediaan->update('sn', $update, 'ID_SN', $id_sn);
|
|
}
|
|
|
|
$kode_stq = $this->kodeStockKuantiti();
|
|
$input = [
|
|
'KODE_STQ' => $kode_stq,
|
|
'KODE_BUKTI' => $kode_km,
|
|
'TGL_STQ' => $tgl_km,
|
|
'BARANG_ID' => $id_barang,
|
|
'QTY_BEFORE' => '0',
|
|
'QTY_IN' => $qty_km4,
|
|
'QTY_OUT' => '0',
|
|
'QTY_AFTER' => $qty_km4
|
|
];
|
|
$action = $this->Persediaan->create('stock_kuantiti', $input);
|
|
}
|
|
|
|
if ($id_lain!=0 OR $id_lain!="") {
|
|
$dataSn = $this->Persediaan->getNama_Sn($id_sn);
|
|
$nama_sn = $dataSn[0]['NAMA_SN'];
|
|
$kode_barang = "CAB/$nama_sn/LAIN$id_lain";
|
|
|
|
$stockMasuk = $this->Persediaan->getDataDetailKm();
|
|
foreach ($stockMasuk as $key) {
|
|
$dataKm = $this->Persediaan->getDataDetailKm($key['ID_KM']);
|
|
$barangID = $dataKm[0]['BARANG_ID'];
|
|
$dataBarang = $this->Persediaan->getDataBarang($barangID);
|
|
$kodeBarang = $dataBarang[0]['KODE_BARANG'];
|
|
if ($kodeBarang==$kode_barang) {
|
|
$this->session->set_flashdata('flashkembar', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
}
|
|
|
|
$dataLain = $this->Lain->getDataLain($id_lain);
|
|
$nama_barang = $dataLain[0]['NAMA_LAIN'];
|
|
|
|
$input = [
|
|
'KODE_BARANG' => $kode_barang,
|
|
'NAMA_BARANG' => $nama_barang,
|
|
'JENIS_ID' => '6'
|
|
];
|
|
$action = $this->Persediaan->create('barang', $input);
|
|
|
|
$kode_km = $this->kodeDetailKm();
|
|
$id_barang = $this->Persediaan->getID_BarangMax();
|
|
$id_barang = $id_barang[0]['ID_BARANG'];
|
|
|
|
$input = [
|
|
'BARANG_ID' => $id_barang,
|
|
'GLOBAL_KUANTITI' => $qty_km5,
|
|
'PROSES_KUANTITI' => '0',
|
|
'PCM_KUANTITI' => $qty_km5,
|
|
'CABUTAN_KUANTITI' => '0',
|
|
'PEMINJAMAN_KUANTITI' => '0',
|
|
'PENDING_KUANTITI' => '0',
|
|
'KONSINYASI_KUANTITI' => '0',
|
|
'SEWA_KUANTITI' => '0',
|
|
'SERVICE_KUANTITI' => '0',
|
|
'THR_KUANTITI' => '0',
|
|
'ITC_KUANTITI' => '0'
|
|
];
|
|
$action = $this->Persediaan->create('kuantiti', $input);
|
|
|
|
$input = [
|
|
'BARANG_ID' => $id_barang,
|
|
'AVG_DH' => '0',
|
|
'DEALER_DH' => '0',
|
|
'USER_DH' => '0'
|
|
];
|
|
|
|
$action = $this->Persediaan->create('daftar_harga', $input);
|
|
|
|
$input = [
|
|
'JENIS_KM' => '1',
|
|
'BARANG_ID' => $id_barang,
|
|
'KODE_KM' => $kode_km,
|
|
'QTY_KM' => $qty_km5,
|
|
'TGL_KM' => $tgl_km,
|
|
'SN_ID' => $id_sn
|
|
];
|
|
$action = $this->Persediaan->create('detail_km', $input);
|
|
|
|
$datSn = $this->Persediaan->getDataSn($id_sn);
|
|
$status_sn = $datSn[0]['STATUS_SN'];
|
|
if ($status_sn!="1") {
|
|
$update = [
|
|
'STATUS_SN' => '2'
|
|
];
|
|
$action = $this->Persediaan->update('sn', $update, 'ID_SN', $id_sn);
|
|
}
|
|
|
|
$kode_stq = $this->kodeStockKuantiti();
|
|
$input = [
|
|
'KODE_STQ' => $kode_stq,
|
|
'KODE_BUKTI' => $kode_km,
|
|
'TGL_STQ' => $tgl_km,
|
|
'BARANG_ID' => $id_barang,
|
|
'QTY_BEFORE' => '0',
|
|
'QTY_IN' => $qty_km5,
|
|
'QTY_OUT' => '0',
|
|
'QTY_AFTER' => $qty_km5
|
|
];
|
|
$action = $this->Persediaan->create('stock_kuantiti', $input);
|
|
}
|
|
|
|
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 savecabutanp() {
|
|
$method = $this->input->post('method');
|
|
$id_km = $this->input->post('id');
|
|
$id_processor = $this->input->post('id_processor');
|
|
$id_sn = $this->input->post('id_sn');
|
|
$qty_km = $this->input->post('qty_km');
|
|
$tgl_km = date('m/d/Y');
|
|
|
|
if ($qty_km>4) {
|
|
$this->session->set_flashdata('flashlimit', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
} else if ($qty_km=="") {
|
|
$this->session->set_flashdata('flashkosong', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
} else if ($qty_km==0) {
|
|
$this->session->set_flashdata('flashzero', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
if ($id_processor==0 OR $id_processor=="") {
|
|
$this->session->set_flashdata('flashnone', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
$datKm = $this->Persediaan->getID_KM($id_sn);
|
|
if ($datKm[0]['ID_KM']==NULL) {
|
|
$datSn = $this->Persediaan->getDataSn($id_sn);
|
|
$snBarang = $datSn[0]['BARANG_ID'];
|
|
$datKuantiti = $this->Persediaan->getKuantitiBarang($snBarang);
|
|
$pcm_kuantiti = $datKuantiti[0]['PCM_KUANTITI'];
|
|
$cabutan_kuantiti = $datKuantiti[0]['CABUTAN_KUANTITI'];
|
|
$pcm = $pcm_kuantiti-1;
|
|
$cabutan = $cabutan_kuantiti+1;
|
|
$update = [
|
|
'PCM_KUANTITI' => $pcm,
|
|
'CABUTAN_KUANTITI' => $cabutan
|
|
];
|
|
$action = $this->Persediaan->update('kuantiti', $update, 'BARANG_ID', $snBarang);
|
|
}
|
|
|
|
$dataSn = $this->Persediaan->getNama_Sn($id_sn);
|
|
$nama_sn = $dataSn[0]['NAMA_SN'];
|
|
$kode_barang = "CAB/$nama_sn/PROC";
|
|
|
|
$stockMasuk = $this->Persediaan->getDataDetailKm();
|
|
foreach ($stockMasuk as $key) {
|
|
$dataKm = $this->Persediaan->getDataDetailKm($key['ID_KM']);
|
|
$barangID = $dataKm[0]['BARANG_ID'];
|
|
$dataBarang = $this->Persediaan->getDataBarang($barangID);
|
|
$kodeBarang = $dataBarang[0]['KODE_BARANG'];
|
|
if ($kodeBarang==$kode_barang) {
|
|
$this->session->set_flashdata('flashkembar', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
}
|
|
|
|
$dataProcessor = $this->Processor->getDataProcessor($id_processor);
|
|
$nama_barang = $dataProcessor[0]['NAMA_PROCESSOR'];
|
|
|
|
$input = [
|
|
'KODE_BARANG' => $kode_barang,
|
|
'NAMA_BARANG' => $nama_barang,
|
|
'JENIS_ID' => '6'
|
|
];
|
|
$action = $this->Persediaan->create('barang', $input);
|
|
|
|
$kode_km = $this->kodeDetailKm();
|
|
$id_barang = $this->Persediaan->getID_BarangMax();
|
|
$id_barang = $id_barang[0]['ID_BARANG'];
|
|
|
|
$input = [
|
|
'BARANG_ID' => $id_barang,
|
|
'GLOBAL_KUANTITI' => $qty_km,
|
|
'PROSES_KUANTITI' => '0',
|
|
'PCM_KUANTITI' => $qty_km,
|
|
'CABUTAN_KUANTITI' => '0',
|
|
'PEMINJAMAN_KUANTITI' => '0',
|
|
'PENDING_KUANTITI' => '0',
|
|
'KONSINYASI_KUANTITI' => '0',
|
|
'SEWA_KUANTITI' => '0',
|
|
'SERVICE_KUANTITI' => '0',
|
|
'THR_KUANTITI' => '0',
|
|
'ITC_KUANTITI' => '0'
|
|
];
|
|
$action = $this->Persediaan->create('kuantiti', $input);
|
|
|
|
$input = [
|
|
'BARANG_ID' => $id_barang,
|
|
'AVG_DH' => '0',
|
|
'DEALER_DH' => '0',
|
|
'USER_DH' => '0'
|
|
];
|
|
|
|
$action = $this->Persediaan->create('daftar_harga', $input);
|
|
|
|
$input = [
|
|
'JENIS_KM' => '1',
|
|
'BARANG_ID' => $id_barang,
|
|
'KODE_KM' => $kode_km,
|
|
'QTY_KM' => $qty_km,
|
|
'TGL_KM' => $tgl_km,
|
|
'SN_ID' => $id_sn
|
|
];
|
|
$action = $this->Persediaan->create('detail_km', $input);
|
|
|
|
$datSn = $this->Persediaan->getDataSn($id_sn);
|
|
$status_sn = $datSn[0]['STATUS_SN'];
|
|
if ($status_sn!="1") {
|
|
$update = [
|
|
'STATUS_SN' => '2'
|
|
];
|
|
$action = $this->Persediaan->update('sn', $update, 'ID_SN', $id_sn);
|
|
}
|
|
|
|
$kode_stq = $this->kodeStockKuantiti();
|
|
$input = [
|
|
'KODE_STQ' => $kode_stq,
|
|
'KODE_BUKTI' => $kode_km,
|
|
'TGL_STQ' => $tgl_km,
|
|
'BARANG_ID' => $id_barang,
|
|
'QTY_BEFORE' => '0',
|
|
'QTY_IN' => $qty_km,
|
|
'QTY_OUT' => '0',
|
|
'QTY_AFTER' => $qty_km
|
|
];
|
|
$action = $this->Persediaan->create('stock_kuantiti', $input);
|
|
|
|
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 savecabutanr() {
|
|
$method = $this->input->post('method');
|
|
$id_km = $this->input->post('id');
|
|
$id_ram = $this->input->post('id_ram');
|
|
$id_sn = $this->input->post('id_sn');
|
|
$qty_km = $this->input->post('qty_km');
|
|
$tgl_km = date('m/d/Y');
|
|
|
|
if ($qty_km>24) {
|
|
$this->session->set_flashdata('flashlimit', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
} else if ($qty_km=="") {
|
|
$this->session->set_flashdata('flashkosong', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
} else if ($qty_km==0) {
|
|
$this->session->set_flashdata('flashzero', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
if ($id_ram==0 OR $id_ram=="") {
|
|
$this->session->set_flashdata('flashnone', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
$datKm = $this->Persediaan->getID_KM($id_sn);
|
|
if ($datKm[0]['ID_KM']==NULL) {
|
|
$datSn = $this->Persediaan->getDataSn($id_sn);
|
|
$snBarang = $datSn[0]['BARANG_ID'];
|
|
$datKuantiti = $this->Persediaan->getKuantitiBarang($snBarang);
|
|
$pcm_kuantiti = $datKuantiti[0]['PCM_KUANTITI'];
|
|
$cabutan_kuantiti = $datKuantiti[0]['CABUTAN_KUANTITI'];
|
|
$pcm = $pcm_kuantiti-1;
|
|
$cabutan = $cabutan_kuantiti+1;
|
|
$update = [
|
|
'PCM_KUANTITI' => $pcm,
|
|
'CABUTAN_KUANTITI' => $cabutan
|
|
];
|
|
$action = $this->Persediaan->update('kuantiti', $update, 'BARANG_ID', $snBarang);
|
|
}
|
|
|
|
$dataSn = $this->Persediaan->getNama_Sn($id_sn);
|
|
$nama_sn = $dataSn[0]['NAMA_SN'];
|
|
$kode_barang = "CAB/$nama_sn/RAM";
|
|
|
|
$stockMasuk = $this->Persediaan->getDataDetailKm();
|
|
foreach ($stockMasuk as $key) {
|
|
$dataKm = $this->Persediaan->getDataDetailKm($key['ID_KM']);
|
|
$barangID = $dataKm[0]['BARANG_ID'];
|
|
$dataBarang = $this->Persediaan->getDataBarang($barangID);
|
|
$kodeBarang = $dataBarang[0]['KODE_BARANG'];
|
|
if ($kodeBarang==$kode_barang) {
|
|
$this->session->set_flashdata('flashkembar', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
}
|
|
|
|
$dataRam = $this->Ram->getDataRam($id_ram);
|
|
$nama_barang = $dataRam[0]['NAMA_RAM'];
|
|
|
|
$input = [
|
|
'KODE_BARANG' => $kode_barang,
|
|
'NAMA_BARANG' => $nama_barang,
|
|
'JENIS_ID' => '6'
|
|
];
|
|
$action = $this->Persediaan->create('barang', $input);
|
|
|
|
$kode_km = $this->kodeDetailKm();
|
|
$id_barang = $this->Persediaan->getID_BarangMax();
|
|
$id_barang = $id_barang[0]['ID_BARANG'];
|
|
|
|
$input = [
|
|
'BARANG_ID' => $id_barang,
|
|
'GLOBAL_KUANTITI' => $qty_km,
|
|
'PROSES_KUANTITI' => '0',
|
|
'PCM_KUANTITI' => $qty_km,
|
|
'CABUTAN_KUANTITI' => '0',
|
|
'PEMINJAMAN_KUANTITI' => '0',
|
|
'PENDING_KUANTITI' => '0',
|
|
'KONSINYASI_KUANTITI' => '0',
|
|
'SEWA_KUANTITI' => '0',
|
|
'SERVICE_KUANTITI' => '0',
|
|
'THR_KUANTITI' => '0',
|
|
'ITC_KUANTITI' => '0'
|
|
];
|
|
$action = $this->Persediaan->create('kuantiti', $input);
|
|
|
|
$input = [
|
|
'BARANG_ID' => $id_barang,
|
|
'AVG_DH' => '0',
|
|
'DEALER_DH' => '0',
|
|
'USER_DH' => '0'
|
|
];
|
|
|
|
$action = $this->Persediaan->create('daftar_harga', $input);
|
|
|
|
$input = [
|
|
'JENIS_KM' => '1',
|
|
'BARANG_ID' => $id_barang,
|
|
'KODE_KM' => $kode_km,
|
|
'QTY_KM' => $qty_km,
|
|
'TGL_KM' => $tgl_km,
|
|
'SN_ID' => $id_sn
|
|
];
|
|
$action = $this->Persediaan->create('detail_km', $input);
|
|
|
|
$datSn = $this->Persediaan->getDataSn($id_sn);
|
|
$status_sn = $datSn[0]['STATUS_SN'];
|
|
if ($status_sn!="1") {
|
|
$update = [
|
|
'STATUS_SN' => '2'
|
|
];
|
|
$action = $this->Persediaan->update('sn', $update, 'ID_SN', $id_sn);
|
|
}
|
|
|
|
$kode_stq = $this->kodeStockKuantiti();
|
|
$input = [
|
|
'KODE_STQ' => $kode_stq,
|
|
'KODE_BUKTI' => $kode_km,
|
|
'TGL_STQ' => $tgl_km,
|
|
'BARANG_ID' => $id_barang,
|
|
'QTY_BEFORE' => '0',
|
|
'QTY_IN' => $qty_km,
|
|
'QTY_OUT' => '0',
|
|
'QTY_AFTER' => $qty_km
|
|
];
|
|
$action = $this->Persediaan->create('stock_kuantiti', $input);
|
|
|
|
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 savecabutans() {
|
|
$method = $this->input->post('method');
|
|
$id_km = $this->input->post('id');
|
|
$id_ssd = $this->input->post('id_ssd');
|
|
$id_sn = $this->input->post('id_sn');
|
|
$qty_km = $this->input->post('qty_km');
|
|
$tgl_km = date('m/d/Y');
|
|
|
|
if ($qty_km>12) {
|
|
$this->session->set_flashdata('flashlimit', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
} else if ($qty_km=="") {
|
|
$this->session->set_flashdata('flashkosong', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
} else if ($qty_km==0) {
|
|
$this->session->set_flashdata('flashzero', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
if ($id_ssd==0 OR $id_ssd=="") {
|
|
$this->session->set_flashdata('flashnone', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
$datKm = $this->Persediaan->getID_KM($id_sn);
|
|
if ($datKm[0]['ID_KM']==NULL) {
|
|
$datSn = $this->Persediaan->getDataSn($id_sn);
|
|
$snBarang = $datSn[0]['BARANG_ID'];
|
|
$datKuantiti = $this->Persediaan->getKuantitiBarang($snBarang);
|
|
$pcm_kuantiti = $datKuantiti[0]['PCM_KUANTITI'];
|
|
$cabutan_kuantiti = $datKuantiti[0]['CABUTAN_KUANTITI'];
|
|
$pcm = $pcm_kuantiti-1;
|
|
$cabutan = $cabutan_kuantiti+1;
|
|
$update = [
|
|
'PCM_KUANTITI' => $pcm,
|
|
'CABUTAN_KUANTITI' => $cabutan
|
|
];
|
|
$action = $this->Persediaan->update('kuantiti', $update, 'BARANG_ID', $snBarang);
|
|
}
|
|
|
|
$dataSn = $this->Persediaan->getNama_Sn($id_sn);
|
|
$nama_sn = $dataSn[0]['NAMA_SN'];
|
|
$kode_barang = "CAB/$nama_sn/SSD";
|
|
|
|
$stockMasuk = $this->Persediaan->getDataDetailKm();
|
|
foreach ($stockMasuk as $key) {
|
|
$dataKm = $this->Persediaan->getDataDetailKm($key['ID_KM']);
|
|
$barangID = $dataKm[0]['BARANG_ID'];
|
|
$dataBarang = $this->Persediaan->getDataBarang($barangID);
|
|
$kodeBarang = $dataBarang[0]['KODE_BARANG'];
|
|
if ($kodeBarang==$kode_barang) {
|
|
$this->session->set_flashdata('flashkembar', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
}
|
|
|
|
$dataSsd = $this->Ssd->getDataSsd($id_ssd);
|
|
$nama_barang = $dataSsd[0]['NAMA_SSD'];
|
|
|
|
$input = [
|
|
'KODE_BARANG' => $kode_barang,
|
|
'NAMA_BARANG' => $nama_barang,
|
|
'JENIS_ID' => '6'
|
|
];
|
|
$action = $this->Persediaan->create('barang', $input);
|
|
|
|
$kode_km = $this->kodeDetailKm();
|
|
$id_barang = $this->Persediaan->getID_BarangMax();
|
|
$id_barang = $id_barang[0]['ID_BARANG'];
|
|
|
|
$input = [
|
|
'BARANG_ID' => $id_barang,
|
|
'GLOBAL_KUANTITI' => $qty_km,
|
|
'PROSES_KUANTITI' => '0',
|
|
'PCM_KUANTITI' => $qty_km,
|
|
'CABUTAN_KUANTITI' => '0',
|
|
'PEMINJAMAN_KUANTITI' => '0',
|
|
'PENDING_KUANTITI' => '0',
|
|
'KONSINYASI_KUANTITI' => '0',
|
|
'SEWA_KUANTITI' => '0',
|
|
'SERVICE_KUANTITI' => '0',
|
|
'THR_KUANTITI' => '0',
|
|
'ITC_KUANTITI' => '0'
|
|
];
|
|
$action = $this->Persediaan->create('kuantiti', $input);
|
|
|
|
$input = [
|
|
'BARANG_ID' => $id_barang,
|
|
'AVG_DH' => '0',
|
|
'DEALER_DH' => '0',
|
|
'USER_DH' => '0'
|
|
];
|
|
|
|
$action = $this->Persediaan->create('daftar_harga', $input);
|
|
|
|
$input = [
|
|
'JENIS_KM' => '1',
|
|
'BARANG_ID' => $id_barang,
|
|
'KODE_KM' => $kode_km,
|
|
'QTY_KM' => $qty_km,
|
|
'TGL_KM' => $tgl_km,
|
|
'SN_ID' => $id_sn
|
|
];
|
|
$action = $this->Persediaan->create('detail_km', $input);
|
|
|
|
$datSn = $this->Persediaan->getDataSn($id_sn);
|
|
$status_sn = $datSn[0]['STATUS_SN'];
|
|
if ($status_sn!="1") {
|
|
$update = [
|
|
'STATUS_SN' => '2'
|
|
];
|
|
$action = $this->Persediaan->update('sn', $update, 'ID_SN', $id_sn);
|
|
}
|
|
|
|
$kode_stq = $this->kodeStockKuantiti();
|
|
$input = [
|
|
'KODE_STQ' => $kode_stq,
|
|
'KODE_BUKTI' => $kode_km,
|
|
'TGL_STQ' => $tgl_km,
|
|
'BARANG_ID' => $id_barang,
|
|
'QTY_BEFORE' => '0',
|
|
'QTY_IN' => $qty_km,
|
|
'QTY_OUT' => '0',
|
|
'QTY_AFTER' => $qty_km
|
|
];
|
|
$action = $this->Persediaan->create('stock_kuantiti', $input);
|
|
|
|
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 savecabutanh() {
|
|
$method = $this->input->post('method');
|
|
$id_km = $this->input->post('id');
|
|
$id_hdd = $this->input->post('id_hdd');
|
|
$id_sn = $this->input->post('id_sn');
|
|
$qty_km = $this->input->post('qty_km');
|
|
$tgl_km = date('m/d/Y');
|
|
|
|
if ($qty_km>12) {
|
|
$this->session->set_flashdata('flashlimit', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
} else if ($qty_km=="") {
|
|
$this->session->set_flashdata('flashkosong', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
} else if ($qty_km==0) {
|
|
$this->session->set_flashdata('flashzero', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
if ($id_hdd==0 OR $id_hdd=="") {
|
|
$this->session->set_flashdata('flashnone', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
$datKm = $this->Persediaan->getID_KM($id_sn);
|
|
if ($datKm[0]['ID_KM']==NULL) {
|
|
$datSn = $this->Persediaan->getDataSn($id_sn);
|
|
$snBarang = $datSn[0]['BARANG_ID'];
|
|
$datKuantiti = $this->Persediaan->getKuantitiBarang($snBarang);
|
|
$pcm_kuantiti = $datKuantiti[0]['PCM_KUANTITI'];
|
|
$cabutan_kuantiti = $datKuantiti[0]['CABUTAN_KUANTITI'];
|
|
$pcm = $pcm_kuantiti-1;
|
|
$cabutan = $cabutan_kuantiti+1;
|
|
$update = [
|
|
'PCM_KUANTITI' => $pcm,
|
|
'CABUTAN_KUANTITI' => $cabutan
|
|
];
|
|
$action = $this->Persediaan->update('kuantiti', $update, 'BARANG_ID', $snBarang);
|
|
}
|
|
|
|
$dataSn = $this->Persediaan->getNama_Sn($id_sn);
|
|
$nama_sn = $dataSn[0]['NAMA_SN'];
|
|
$kode_barang = "CAB/$nama_sn/HDD";
|
|
|
|
$stockMasuk = $this->Persediaan->getDataDetailKm();
|
|
foreach ($stockMasuk as $key) {
|
|
$dataKm = $this->Persediaan->getDataDetailKm($key['ID_KM']);
|
|
$barangID = $dataKm[0]['BARANG_ID'];
|
|
$dataBarang = $this->Persediaan->getDataBarang($barangID);
|
|
$kodeBarang = $dataBarang[0]['KODE_BARANG'];
|
|
if ($kodeBarang==$kode_barang) {
|
|
$this->session->set_flashdata('flashkembar', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
}
|
|
|
|
$dataHdd = $this->Hdd->getDataHdd($id_hdd);
|
|
$nama_barang = $dataHdd[0]['NAMA_HDD'];
|
|
|
|
$input = [
|
|
'KODE_BARANG' => $kode_barang,
|
|
'NAMA_BARANG' => $nama_barang,
|
|
'JENIS_ID' => '6'
|
|
];
|
|
$action = $this->Persediaan->create('barang', $input);
|
|
|
|
$kode_km = $this->kodeDetailKm();
|
|
$id_barang = $this->Persediaan->getID_BarangMax();
|
|
$id_barang = $id_barang[0]['ID_BARANG'];
|
|
|
|
$input = [
|
|
'BARANG_ID' => $id_barang,
|
|
'GLOBAL_KUANTITI' => $qty_km,
|
|
'PROSES_KUANTITI' => '0',
|
|
'PCM_KUANTITI' => $qty_km,
|
|
'CABUTAN_KUANTITI' => '0',
|
|
'PEMINJAMAN_KUANTITI' => '0',
|
|
'PENDING_KUANTITI' => '0',
|
|
'KONSINYASI_KUANTITI' => '0',
|
|
'SEWA_KUANTITI' => '0',
|
|
'SERVICE_KUANTITI' => '0',
|
|
'THR_KUANTITI' => '0',
|
|
'ITC_KUANTITI' => '0'
|
|
];
|
|
$action = $this->Persediaan->create('kuantiti', $input);
|
|
|
|
$input = [
|
|
'BARANG_ID' => $id_barang,
|
|
'AVG_DH' => '0',
|
|
'DEALER_DH' => '0',
|
|
'USER_DH' => '0'
|
|
];
|
|
|
|
$action = $this->Persediaan->create('daftar_harga', $input);
|
|
|
|
$input = [
|
|
'JENIS_KM' => '1',
|
|
'BARANG_ID' => $id_barang,
|
|
'KODE_KM' => $kode_km,
|
|
'QTY_KM' => $qty_km,
|
|
'TGL_KM' => $tgl_km,
|
|
'SN_ID' => $id_sn
|
|
];
|
|
$action = $this->Persediaan->create('detail_km', $input);
|
|
|
|
$datSn = $this->Persediaan->getDataSn($id_sn);
|
|
$status_sn = $datSn[0]['STATUS_SN'];
|
|
if ($status_sn!="1") {
|
|
$update = [
|
|
'STATUS_SN' => '2'
|
|
];
|
|
$action = $this->Persediaan->update('sn', $update, 'ID_SN', $id_sn);
|
|
}
|
|
|
|
$kode_stq = $this->kodeStockKuantiti();
|
|
$input = [
|
|
'KODE_STQ' => $kode_stq,
|
|
'KODE_BUKTI' => $kode_km,
|
|
'TGL_STQ' => $tgl_km,
|
|
'BARANG_ID' => $id_barang,
|
|
'QTY_BEFORE' => '0',
|
|
'QTY_IN' => $qty_km,
|
|
'QTY_OUT' => '0',
|
|
'QTY_AFTER' => $qty_km
|
|
];
|
|
$action = $this->Persediaan->create('stock_kuantiti', $input);
|
|
|
|
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 savecabutanl() {
|
|
$method = $this->input->post('method');
|
|
$id_km = $this->input->post('id');
|
|
$id_lain = $this->input->post('id_lain');
|
|
$id_sn = $this->input->post('id_sn');
|
|
$qty_km = $this->input->post('qty_km');
|
|
$tgl_km = date('m/d/Y');
|
|
|
|
if ($qty_km>4) {
|
|
$this->session->set_flashdata('flashlimit', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
} else if ($qty_km=="") {
|
|
$this->session->set_flashdata('flashkosong', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
} else if ($qty_km==0) {
|
|
$this->session->set_flashdata('flashzero', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
if ($id_lain==0 OR $id_lain=="") {
|
|
$this->session->set_flashdata('flashnone', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
$datKm = $this->Persediaan->getID_KM($id_sn);
|
|
if ($datKm[0]['ID_KM']==NULL) {
|
|
$datSn = $this->Persediaan->getDataSn($id_sn);
|
|
$snBarang = $datSn[0]['BARANG_ID'];
|
|
$datKuantiti = $this->Persediaan->getKuantitiBarang($snBarang);
|
|
$pcm_kuantiti = $datKuantiti[0]['PCM_KUANTITI'];
|
|
$cabutan_kuantiti = $datKuantiti[0]['CABUTAN_KUANTITI'];
|
|
$pcm = $pcm_kuantiti-1;
|
|
$cabutan = $cabutan_kuantiti+1;
|
|
$update = [
|
|
'PCM_KUANTITI' => $pcm,
|
|
'CABUTAN_KUANTITI' => $cabutan
|
|
];
|
|
$action = $this->Persediaan->update('kuantiti', $update, 'BARANG_ID', $snBarang);
|
|
}
|
|
|
|
$dataSn = $this->Persediaan->getNama_Sn($id_sn);
|
|
$nama_sn = $dataSn[0]['NAMA_SN'];
|
|
$kode_barang = "CAB/$nama_sn/LAIN$id_lain";
|
|
|
|
$stockMasuk = $this->Persediaan->getDataDetailKm();
|
|
foreach ($stockMasuk as $key) {
|
|
$dataKm = $this->Persediaan->getDataDetailKm($key['ID_KM']);
|
|
$barangID = $dataKm[0]['BARANG_ID'];
|
|
$dataBarang = $this->Persediaan->getDataBarang($barangID);
|
|
$kodeBarang = $dataBarang[0]['KODE_BARANG'];
|
|
if ($kodeBarang==$kode_barang) {
|
|
$this->session->set_flashdata('flashkembar', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
}
|
|
|
|
$dataLain = $this->Lain->getDataLain($id_lain);
|
|
$nama_barang = $dataLain[0]['NAMA_LAIN'];
|
|
|
|
$input = [
|
|
'KODE_BARANG' => $kode_barang,
|
|
'NAMA_BARANG' => $nama_barang,
|
|
'JENIS_ID' => '6'
|
|
];
|
|
$action = $this->Persediaan->create('barang', $input);
|
|
|
|
$kode_km = $this->kodeDetailKm();
|
|
$id_barang = $this->Persediaan->getID_BarangMax();
|
|
$id_barang = $id_barang[0]['ID_BARANG'];
|
|
|
|
$input = [
|
|
'BARANG_ID' => $id_barang,
|
|
'GLOBAL_KUANTITI' => $qty_km,
|
|
'PROSES_KUANTITI' => '0',
|
|
'PCM_KUANTITI' => $qty_km,
|
|
'CABUTAN_KUANTITI' => '0',
|
|
'PEMINJAMAN_KUANTITI' => '0',
|
|
'PENDING_KUANTITI' => '0',
|
|
'KONSINYASI_KUANTITI' => '0',
|
|
'SEWA_KUANTITI' => '0',
|
|
'SERVICE_KUANTITI' => '0',
|
|
'THR_KUANTITI' => '0',
|
|
'ITC_KUANTITI' => '0'
|
|
];
|
|
$action = $this->Persediaan->create('kuantiti', $input);
|
|
|
|
$input = [
|
|
'BARANG_ID' => $id_barang,
|
|
'AVG_DH' => '0',
|
|
'DEALER_DH' => '0',
|
|
'USER_DH' => '0'
|
|
];
|
|
|
|
$action = $this->Persediaan->create('daftar_harga', $input);
|
|
|
|
$input = [
|
|
'JENIS_KM' => '1',
|
|
'BARANG_ID' => $id_barang,
|
|
'KODE_KM' => $kode_km,
|
|
'QTY_KM' => $qty_km,
|
|
'TGL_KM' => $tgl_km,
|
|
'SN_ID' => $id_sn
|
|
];
|
|
$action = $this->Persediaan->create('detail_km', $input);
|
|
|
|
$datSn = $this->Persediaan->getDataSn($id_sn);
|
|
$status_sn = $datSn[0]['STATUS_SN'];
|
|
if ($status_sn!="1") {
|
|
$update = [
|
|
'STATUS_SN' => '2'
|
|
];
|
|
$action = $this->Persediaan->update('sn', $update, 'ID_SN', $id_sn);
|
|
}
|
|
|
|
$kode_stq = $this->kodeStockKuantiti();
|
|
$input = [
|
|
'KODE_STQ' => $kode_stq,
|
|
'KODE_BUKTI' => $kode_km,
|
|
'TGL_STQ' => $tgl_km,
|
|
'BARANG_ID' => $id_barang,
|
|
'QTY_BEFORE' => '0',
|
|
'QTY_IN' => $qty_km,
|
|
'QTY_OUT' => '0',
|
|
'QTY_AFTER' => $qty_km
|
|
];
|
|
$action = $this->Persediaan->create('stock_kuantiti', $input);
|
|
|
|
|
|
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 hapuscabutan() {
|
|
$method = $this->input->post('method');
|
|
$id_km = $this->input->post('id_km');
|
|
|
|
$detail_km = $this->Persediaan->getDataDetailKm($id_km);
|
|
$id_barang = $detail_km[0]['BARANG_ID'];
|
|
$kode_bukti = $detail_km[0]['KODE_KM'];
|
|
|
|
$datKM = $this->Persediaan->getSN_ID($kode_bukti);
|
|
$sn_id = $datKM[0]['SN_ID'];
|
|
|
|
$datDJ = $this->Persediaan->getID_DJ($id_barang);
|
|
if ($datDJ[0]['ID_DJ']==NULL) {
|
|
$action = $this->Persediaan->delete('stock_kuantiti', $kode_bukti ,'KODE_BUKTI');
|
|
}
|
|
|
|
$action = $this->Persediaan->delete('barang', $id_barang ,'ID_BARANG');
|
|
$action = $this->Persediaan->delete('kuantiti', $id_barang ,'BARANG_ID');
|
|
$action = $this->Persediaan->delete('daftar_harga', $id_barang ,'BARANG_ID');
|
|
$action = $this->Persediaan->delete('detail_km', $id_km ,'ID_KM');
|
|
|
|
$datCheck = $this->Persediaan->getID_KM($sn_id);
|
|
if ($datCheck[0]['ID_KM']==NULL) {
|
|
$update = [
|
|
'STATUS_SN' => NULL
|
|
];
|
|
$action = $this->Persediaan->update('sn', $update, 'ID_SN', $sn_id);
|
|
$datSn = $this->Persediaan->getDataSn($sn_id);
|
|
$snBarang = $datSn[0]['BARANG_ID'];
|
|
$datKuantiti = $this->Persediaan->getKuantitiBarang($snBarang);
|
|
$pcm_kuantiti = $datKuantiti[0]['PCM_KUANTITI'];
|
|
$cabutan_kuantiti = $datKuantiti[0]['CABUTAN_KUANTITI'];
|
|
$pcm = $pcm_kuantiti+1;
|
|
$cabutan = $cabutan_kuantiti-1;
|
|
$update = [
|
|
'PCM_KUANTITI' => $pcm,
|
|
'CABUTAN_KUANTITI' => $cabutan
|
|
];
|
|
$action = $this->Persediaan->update('kuantiti', $update, 'BARANG_ID', $snBarang);
|
|
}
|
|
|
|
if ($action) {
|
|
$this->session->set_flashdata('flash', 'dihapus');
|
|
redirect('ManagePersediaanQTY/dataCabutan/');
|
|
} else {
|
|
$this->session->set_flashdata('flashgagal', 'dihapus');
|
|
redirect('ManagePersediaanQTY/dataCabutan/');
|
|
}
|
|
|
|
}
|
|
|
|
//Fungsi Konsinyasi
|
|
public function dataKonsinyasi() {
|
|
$datPersediaan = $this->Persediaan->getDataKuantitiKonsinyasi();
|
|
$datPelanggan = $this->Pelanggan->getData_Pelanggan();
|
|
$tgl = date('m/d/Y');
|
|
$data = [
|
|
'sidebar' => "menu persediaan",
|
|
'navChild' => "",
|
|
'persediaan' => $datPersediaan,
|
|
'pelanggan' => $datPelanggan,
|
|
'tgl' => $tgl
|
|
];
|
|
$this->load->view('proses/PersediaanKonsinyasi', $data);
|
|
}
|
|
|
|
public function kodeKonsinyasi() {
|
|
$kk = $this->Persediaan->getKodeKonsinyasi();
|
|
if (is_array($kk) || is_object($kk)) {
|
|
foreach ($kk as $row) {
|
|
if ($row['KODE'] == null) {
|
|
return "KS/000001";
|
|
} else {
|
|
$str = (string) $row['KODE'];
|
|
$panjang = 6;
|
|
$data = substr($str, 3, $panjang);
|
|
|
|
$ko = (int) $data + 1;
|
|
$str = (string) $ko;
|
|
|
|
$panjang = 9 - strlen($str);
|
|
$data = "KS/000000";
|
|
$data = substr($data, 0, $panjang) . $str;
|
|
return $data;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
public function savekonsinyasi() {
|
|
$method = $this->input->post('method');
|
|
$id_konsinyasi = $this->input->post('id');
|
|
$id_pelanggan = $this->input->post('id_pelanggan');
|
|
$tgl_konsinyasi = $this->input->post('tgl_konsinyasi');
|
|
$tempo_konsinyasi = $this->input->post('tempo_konsinyasi');
|
|
$id_sales = $this->session->userdata('id_karyawan');
|
|
$kode_konsinyasi = $this->kodeKonsinyasi();
|
|
|
|
if ($tempo_konsinyasi=="") {
|
|
$tempo_konsinyasi = '30';
|
|
$tempo_konsinyasi = $this->Persediaan->addTempo($tgl_konsinyasi,$tempo_konsinyasi);
|
|
} else {
|
|
$tempo_konsinyasi = $this->Persediaan->addTempo($tgl_konsinyasi,$tempo_konsinyasi);
|
|
}
|
|
|
|
$input = [
|
|
'SALES_ID' => $id_sales,
|
|
'PELANGGAN_ID' => $id_pelanggan,
|
|
'KODE_KONSINYASI' => $kode_konsinyasi,
|
|
'TGL_KONSINYASI' => $tgl_konsinyasi,
|
|
'TEMPO_KONSINYASI' => $tempo_konsinyasi,
|
|
];
|
|
|
|
$action = $this->Persediaan->create('konsinyasi', $input);
|
|
|
|
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 hapuskonsinyasi() {
|
|
$id = $this->input->post('id');
|
|
|
|
$datDk = $this->Persediaan->checkDk($id);
|
|
foreach ($datDk as $key) {
|
|
if ($key['KONSINYASI_ID']!=NULL) {
|
|
$this->session->set_flashdata('flashdk', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
}
|
|
|
|
$action = $this->Persediaan->delete('konsinyasi',$id,'ID_KONSINYASI');
|
|
$this->session->set_flashdata('flash', 'dihapus');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
public function dataKonsinyasiProses() {
|
|
$datPersediaan = $this->Persediaan->getDataKuantitiKonsinyasi();
|
|
$datPelanggan = $this->Pelanggan->getData_Pelanggan();
|
|
$tgl = date('m/d/Y');
|
|
$data = [
|
|
'sidebar' => "menu persediaan",
|
|
'navChild' => "",
|
|
'persediaan' => $datPersediaan,
|
|
'pelanggan' => $datPelanggan,
|
|
'tgl' => $tgl
|
|
];
|
|
$this->load->view('proses/PersediaanKonsinyasiProses', $data);
|
|
}
|
|
|
|
public function tambahKonsi($id) {
|
|
$persediaan = $this->Persediaan->getKonsinyasiDaftarKonsinyasi($id);
|
|
$datBarang = $this->Barang->getBarangKonsinyasi();
|
|
$datKonsinyasi = $this->Persediaan->getDataKuantitiKonsinyasi($id);
|
|
$kode_konsinyasi = $datKonsinyasi[0]['KODE_KONSINYASI'];
|
|
|
|
$data = [
|
|
'sidebar' => "menu persediaan",
|
|
'navChild' => "",
|
|
'persediaan' => $persediaan,
|
|
'id_konsinyasi' => $id,
|
|
'barang' => $datBarang,
|
|
'kode_konsinyasi' => $kode_konsinyasi
|
|
];
|
|
|
|
$this->load->view('proses/PersediaanKonsi', $data);
|
|
}
|
|
|
|
public function prosesKonsi($id) {
|
|
$persediaan = $this->Persediaan->getKonsinyasiDaftarKonsinyasi($id);
|
|
$datBarang = $this->Barang->getBarangKonsinyasi();
|
|
$datKonsinyasi = $this->Persediaan->getDataKuantitiKonsinyasi($id);
|
|
$kode_konsinyasi = $datKonsinyasi[0]['KODE_KONSINYASI'];
|
|
|
|
$data = [
|
|
'sidebar' => "menu persediaan",
|
|
'navChild' => "",
|
|
'persediaan' => $persediaan,
|
|
'id_konsinyasi' => $id,
|
|
'barang' => $datBarang,
|
|
'kode_konsinyasi' => $kode_konsinyasi
|
|
];
|
|
|
|
$this->load->view('proses/PersediaanKonsiProses', $data);
|
|
}
|
|
|
|
public function savekonsi() {
|
|
$method = $this->input->post('method');
|
|
$id_dk = $this->input->post('id');
|
|
$id_barang = $this->input->post('id_barang');
|
|
$id_konsinyasi = $this->input->post('id_konsinyasi');
|
|
$qty_dk = $this->input->post('qty_dk');
|
|
$ket_dk = $this->input->post('ket_dk');
|
|
|
|
$kuantiti = $this->Persediaan->getKuantitiBarang($id_barang);
|
|
$id_kuantiti = $kuantiti[0]['ID_KUANTITI'];
|
|
$pcm_kuantiti = $kuantiti[0]['PCM_KUANTITI'];
|
|
$konsinyasi_kuantiti = $kuantiti[0]['KONSINYASI_KUANTITI'];
|
|
|
|
if ($qty_dk>$pcm_kuantiti) {
|
|
$this->session->set_flashdata('flashkuantiti', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
if ($qty_dk==0 OR $qty_dk=="") {
|
|
$this->session->set_flashdata('flashzero', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
$konsinyasi = $konsinyasi_kuantiti+$qty_dk;
|
|
$pcm = $pcm_kuantiti-$qty_dk;
|
|
|
|
$input = [
|
|
'KONSINYASI_ID' => $id_konsinyasi,
|
|
'BARANG_ID' => $id_barang,
|
|
'QTY_DK' => $qty_dk,
|
|
'KET_DK' => $ket_dk
|
|
];
|
|
|
|
$action = $this->Persediaan->create('daftar_konsinyasi', $input);
|
|
|
|
$update = [
|
|
'KONSINYASI_KUANTITI' => $konsinyasi,
|
|
'PCM_KUANTITI' => $pcm
|
|
];
|
|
|
|
$action = $this->Persediaan->update('kuantiti', $update, 'ID_KUANTITI', $id_kuantiti);
|
|
|
|
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 hapuskonsi() {
|
|
$method = $this->input->post('method');
|
|
$id_dk = $this->input->post('id');
|
|
|
|
$sn = $this->Persediaan->checkSn($id_dk);
|
|
foreach ($sn as $key) {
|
|
if ($key['DK_ID']!=NULL) {
|
|
$this->session->set_flashdata('flashsn', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
}
|
|
|
|
$konsi = $this->Persediaan->checkKonsi($id_dk);
|
|
foreach ($konsi as $key) {
|
|
if ($key['DK_ID']!=NULL) {
|
|
$this->session->set_flashdata('flashsn', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
}
|
|
|
|
$datDK = $this->Persediaan->getKonsinyasiDk($id_dk);
|
|
$id_barang = $datDK[0]['BARANG_ID'];
|
|
$qty_dk = $datDK[0]['QTY_DK'];
|
|
$pcm_kuantiti = $datDK[0]['PCM_KUANTITI'];
|
|
$konsinyasi_kuantiti = $datDK[0]['KONSINYASI_KUANTITI'];
|
|
$id_kuantiti = $datDK[0]['ID_KUANTITI'];
|
|
|
|
$konsinyasi = $konsinyasi_kuantiti-$qty_dk;
|
|
$pcm = $pcm_kuantiti+$qty_dk;
|
|
|
|
$update = [
|
|
'KONSINYASI_KUANTITI' => $konsinyasi,
|
|
'PCM_KUANTITI' => $pcm
|
|
];
|
|
|
|
$action = $this->Persediaan->update('kuantiti', $update, 'ID_KUANTITI', $id_kuantiti);
|
|
|
|
$action = $this->Persediaan->delete('daftar_konsinyasi', $id_dk ,'ID_DK');
|
|
|
|
if ($action) {
|
|
$this->session->set_flashdata('flash', 'dihapus');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
} else {
|
|
$this->session->set_flashdata('flashgagal', 'dihapus');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
}
|
|
|
|
public function konsiSn($id) {
|
|
$persediaan = $this->Persediaan->getDataKonsiSn($id);
|
|
$qty = $this->Persediaan->getMaxQtyKonsi($id);
|
|
$id_barang = $persediaan[0]['ID_BARANG'];
|
|
|
|
$data = [
|
|
'sidebar' => "menu persediaan",
|
|
'navChild' => "",
|
|
'persediaan' => $persediaan,
|
|
'id_dk' => $id,
|
|
'id_barang' => $id_barang,
|
|
'qty_dk' => $persediaan[0]['QTY_DK'],
|
|
'qty' => $qty,
|
|
];
|
|
|
|
$this->load->view('proses/PersediaanKonsiSn', $data);
|
|
}
|
|
|
|
public function datasnkonsi() {
|
|
$id = $this->input->post('id');
|
|
$data = $this->Persediaan->getDataSnDk($id);
|
|
$this->output_json(['value' => 1, 'total' => sizeof($data), 'data' => $data]);
|
|
}
|
|
|
|
public function jumlahdatasnkonsi() {
|
|
$id = $this->input->post('id');
|
|
$data = $this->Persediaan->getDataSnDk($id);
|
|
$this->output_json(['value' => 1, 'jumlah_data' => sizeof($data)]);
|
|
}
|
|
|
|
public function snkonsi() {
|
|
$id_dk = $this->input->post('id_dk');
|
|
$id_barang = $this->input->post('id_barang');
|
|
$nama_sn = $this->input->post('nama_sn');
|
|
$nama_sn = strtoupper($nama_sn);
|
|
|
|
$dataSn = $this->Persediaan->getSnBarangKonsi($id_barang);
|
|
foreach ($dataSn as $key) {
|
|
if ($nama_sn==$key['NAMA_SN']) {
|
|
$id_sn = $key['ID_SN'];
|
|
$data = [
|
|
'STATUS_SN' => '2',
|
|
'DK_ID' => $id_dk,
|
|
'GUDANG_ID' => '3'
|
|
];
|
|
$action = $this->Persediaan->update('sn', $data, 'ID_SN', $id_sn);
|
|
$input = [
|
|
'SN_ID' => $id_sn,
|
|
'DK_ID' => $id_dk
|
|
];
|
|
$action = $this->Persediaan->create('daftar_konsi', $input);
|
|
}
|
|
}
|
|
|
|
$konsi = $this->Persediaan->getKonsinyasiDk($id_dk);
|
|
$qty_dk = $konsi[0]['QTY_DK'];
|
|
|
|
$qtyReal = $this->Persediaan->getMaxQtyKonsi($id_dk);
|
|
if ($qtyReal==$qty_dk){
|
|
$this->output_json(['value' => 2, 'nama_sn' => $nama_sn]);
|
|
$this->session->set_flashdata('flashkunci', 'dikunci');
|
|
} else if ($action){
|
|
$this->output_json(['value' => 1, 'nama_sn' => $nama_sn]);
|
|
} else {
|
|
$this->output_json(['value' => 0, 'nama_sn' => $nama_sn]);
|
|
$this->session->set_flashdata('flashgagal', 'dikunci');
|
|
}
|
|
}
|
|
|
|
public function resetsnkonsi() {
|
|
$id = $this->input->post('id_sn');
|
|
$datKonsi = $this->Persediaan->getDataSnKonsi($id);
|
|
$id_dk = $datKonsi[0]['DK_ID'];
|
|
$qty_dk = $datKonsi[0]['QTY_DK'];
|
|
|
|
$data = [
|
|
'STATUS_SN' => NULL,
|
|
'DK_ID' => NULL,
|
|
'GUDANG_ID' => '1'
|
|
];
|
|
$action = $this->Persediaan->update('sn', $data, 'ID_SN', $id);
|
|
|
|
$action = $this->Persediaan->delete('daftar_konsi', $id ,'SN_ID');
|
|
|
|
$qtyReal = $this->Persediaan->getMaxQtyKonsi($id_dk);
|
|
if ($qtyReal+1==$qty_dk){
|
|
$this->output_json(['value' => 2, 'message' => 'Berhasil', 'dt' => $action]);
|
|
$this->session->set_flashdata('flashkurang', 'dikunci');
|
|
} else if ($action) {
|
|
$this->output_json(['value' => 1, 'message' => 'Berhasil', 'dt' => $action]);
|
|
} else {
|
|
$this->output_json(['value' => 0, 'message' => "gagal", 'dt' => $action]);
|
|
}
|
|
}
|
|
|
|
public function kodeSJKonsinyasi() {
|
|
$kk = $this->Persediaan->getKodeSJKonsinyasi();
|
|
$tgl = date('mdy');
|
|
if (is_array($kk) || is_object($kk)) {
|
|
foreach ($kk as $row) {
|
|
if ($row['KODE'] == null) {
|
|
return "SJ/KS/$tgl/001";
|
|
} else {
|
|
$str = (string) $row['KODE'];
|
|
$tgl_lama = substr($str, 6, -4);
|
|
if ($tgl_lama!=$tgl) {
|
|
return "SJ/KS/$tgl/001";
|
|
} else {
|
|
$panjang = 3;
|
|
$data = substr($str, 13, $panjang);
|
|
$ko = (int) $data + 1;
|
|
$str = (string) $ko;
|
|
$panjang = 16 - strlen($str);
|
|
$data = "SJ/KS/$tgl/000";
|
|
$data = substr($data, 0, $panjang) . $str;
|
|
return $data;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
public function kuncikonsinyasi() {
|
|
$id = $this->input->post('id');
|
|
|
|
$datKonsinyasi = $this->Persediaan->checkKonsinyasiStatusNull($id);
|
|
if ($datKonsinyasi==FALSE) {
|
|
$this->session->set_flashdata('flashrefresh', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
$datDk = $this->Persediaan->checkDk($id);
|
|
foreach ($datDk as $key) {
|
|
$max = $this->Persediaan->getMaxQtyKonsi($key['ID_DK']);
|
|
if ($max!=$key['QTY_DK']) {
|
|
$this->session->set_flashdata('flashsn', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
}
|
|
|
|
$sj_konsinyasi = $this->kodeSJKonsinyasi();
|
|
$update = [
|
|
'STATUS_KONSINYASI' => '0',
|
|
'STATUS_PRINTSJ' => '0',
|
|
'SJ_KONSINYASI' => $sj_konsinyasi
|
|
];
|
|
$action = $this->Persediaan->update('konsinyasi', $update, 'ID_KONSINYASI', $id);
|
|
$this->session->set_flashdata('flash', 'diproses');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
public function dataKonsinyasiLaku() {
|
|
$datPersediaan = $this->Persediaan->getDataKonsinyasiLaku();
|
|
$data = [
|
|
'sidebar' => "menu persediaan",
|
|
'navChild' => "",
|
|
'persediaan' => $datPersediaan
|
|
];
|
|
$this->load->view('proses/PersediaanKonsinyasiLaku', $data);
|
|
}
|
|
|
|
public function prosesKonsiLaku($id) {
|
|
$persediaan = $this->Persediaan->getDaftarKonsiLaku($id);
|
|
$datSn = $this->Barang->getSnKonsinyasi($id);
|
|
$datCorp = $this->Corp->getDataCorp();
|
|
$datSales = $this->Pelanggan->getDataSales();
|
|
$tgl = date('m/d/Y');
|
|
|
|
$limit = $this->Persediaan->getSisaLimit($id);
|
|
$limitAktif = '0';
|
|
foreach ($limit as $key) {
|
|
$piutang = $key['NOMINAL_PDA'];
|
|
$limitAktif = $limitAktif+$piutang;
|
|
}
|
|
|
|
$cicilanAktif = '0';
|
|
foreach ($limit as $key) {
|
|
$cicilan = $this->Persediaan->getCicilanPiutang($key['ID_PDA']);
|
|
$nominal_dpda = '0';
|
|
foreach ($cicilan as $key) {
|
|
$nominal_dpda = $nominal_dpda+$key['NOMINAL_DPDA'];
|
|
}
|
|
$cicilanAktif = $cicilanAktif+$nominal_dpda;
|
|
}
|
|
|
|
$datPelanggan = $this->Persediaan->getDataPelanggan($id);
|
|
$limit_pelanggan = $datPelanggan[0]['LIMIT_PELANGGAN'];
|
|
$limit = $limit_pelanggan-$limitAktif+$cicilanAktif;
|
|
|
|
if ($persediaan==FALSE) {
|
|
$nominal_pda='0';
|
|
} else {
|
|
$datDj = $this->Persediaan->getDataDJ($persediaan[0]['PENJUALAN_ID']);
|
|
$nominal_pda='0';
|
|
foreach ($datDj as $key) {
|
|
$piutang = $key['HARGA_DJ']*$key['QTY_DJ'];
|
|
$nominal_pda = $nominal_pda+$piutang;
|
|
}
|
|
}
|
|
|
|
if ($persediaan==FALSE) {
|
|
$id_dj=NULL;
|
|
} else {
|
|
$id_dj = $persediaan[0]['ID_DJ'];
|
|
}
|
|
|
|
if ($persediaan==FALSE) {
|
|
$id_penjualan=NULL;
|
|
} else {
|
|
$id_penjualan = $persediaan[0]['PENJUALAN_ID'];
|
|
}
|
|
|
|
$data = [
|
|
'sidebar' => "menu persediaan",
|
|
'navChild' => "",
|
|
'persediaan' => $persediaan,
|
|
'id_pelanggan' => $id,
|
|
'sales' => $datSales,
|
|
'id_dj' => $id_dj,
|
|
'id_penjualan' => $id_penjualan,
|
|
'sn' => $datSn,
|
|
'corp' => $datCorp,
|
|
'tgl' => $tgl,
|
|
'limit' => $limit,
|
|
'nominal_pda' => $nominal_pda
|
|
];
|
|
|
|
$this->load->view('proses/PersediaanKonsiLaku', $data);
|
|
}
|
|
|
|
public function kodePenjualan() {
|
|
$kk = $this->Persediaan->getKodePenjualan();
|
|
if (is_array($kk) || is_object($kk)) {
|
|
foreach ($kk as $row) {
|
|
if ($row['KODE'] == null) {
|
|
return "PJ/000001";
|
|
} else {
|
|
$str = (string) $row['KODE'];
|
|
$panjang = 6;
|
|
$data = substr($str, 3, $panjang);
|
|
|
|
$ko = (int) $data + 1;
|
|
$str = (string) $ko;
|
|
|
|
$panjang = 9 - strlen($str);
|
|
$data = "PJ/000000";
|
|
$data = substr($data, 0, $panjang) . $str;
|
|
return $data;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
public function savelaku() {
|
|
$method = $this->input->post('method');
|
|
$id_penjualan = $this->input->post('id');
|
|
$id_pelanggan = $this->input->post('id_pelanggan');
|
|
$id_sales = $this->input->post('id_sales');
|
|
$id_corp = $this->input->post('id_corp');
|
|
$tgl_penjualan = $this->input->post('tgl_penjualan');
|
|
$tempo_penjualan = $this->input->post('tempo_penjualan');
|
|
$po_penjualan = $this->input->post('po_penjualan');
|
|
$radio_ppn = $this->input->post('radio_ppn');
|
|
$radio_gp = $this->input->post('radio_gp');
|
|
$snlaku = $this->input->post('snlaku');
|
|
$kode_penjualan = $this->kodePenjualan();
|
|
|
|
foreach ($snlaku as $key) {
|
|
$datSn = $this->Persediaan->getDataSn($key);
|
|
if ($datSn[0]['DJ_ID']!=NULL) {
|
|
$this->session->set_flashdata('flashrefresh', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
if ($datSn[0]['DK_ID']==NULL) {
|
|
$this->session->set_flashdata('flashrefresh', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
}
|
|
|
|
if ($id_corp==3 AND $radio_ppn!=0) {
|
|
$this->session->set_flashdata('flashppn', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
if ($id_corp!=3 AND $radio_ppn==0) {
|
|
$this->session->set_flashdata('flashppn', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
$po_penjualan = strtoupper($po_penjualan);
|
|
if ($tempo_penjualan=="") {
|
|
$tempo_penjualan = '0';
|
|
$tempo_penjualan = $this->Persediaan->addTempo($tgl_penjualan,$tempo_penjualan);
|
|
} else {
|
|
$tempo_penjualan = $this->Persediaan->addTempo($tgl_penjualan,$tempo_penjualan);
|
|
}
|
|
|
|
$input = [
|
|
'KODE_PENJUALAN' => $kode_penjualan,
|
|
'CORP_ID' => $id_corp,
|
|
'SALES_ID' => $id_sales,
|
|
'PELANGGAN_ID' => $id_pelanggan,
|
|
'PO_PENJUALAN' => $po_penjualan,
|
|
'TGL_PENJUALAN' => $tgl_penjualan,
|
|
'TEMPO_PENJUALAN' => $tempo_penjualan,
|
|
'PPN_PENJUALAN' => $radio_ppn,
|
|
'GP_PENJUALAN' => $radio_gp,
|
|
'STATUS_PENJUALAN' => '2'
|
|
];
|
|
$action = $this->Persediaan->create('penjualan', $input);
|
|
|
|
$id_penjualan = $this->Persediaan->getID_PenjualanMax();
|
|
$id_penjualan = $id_penjualan[0]['ID_PENJUALAN'];
|
|
|
|
foreach ($snlaku as $key) {
|
|
$id_konsi = $this->Persediaan->getID_KonsiSNIDMax($key);
|
|
$id_konsi = $id_konsi[0]['ID_KONSI'];
|
|
$update = [
|
|
'STATUS_KONSI' => '0',
|
|
'PENJUALAN_ID' => $id_penjualan
|
|
];
|
|
$action = $this->Persediaan->update('daftar_konsi', $update, 'ID_KONSI', $id_konsi);
|
|
}
|
|
|
|
$datSn = $this->Persediaan->getDataSnLakuKonsi($id_penjualan);
|
|
foreach ($datSn as $key) {
|
|
$qty_dj = $this->Persediaan->getQtySnLakuKonsi($id_penjualan,$key['BARANG_ID']);
|
|
$input = [
|
|
'PENJUALAN_ID' => $id_penjualan,
|
|
'BARANG_ID' => $key['BARANG_ID'],
|
|
'QTY_DJ' => $qty_dj,
|
|
'JENIS_DJ' => '0'
|
|
];
|
|
$action = $this->Persediaan->create('daftar_jual', $input);
|
|
$id_dj = $this->Persediaan->getID_DJMax();
|
|
$id_dj = $id_dj[0]['ID_DJ'];
|
|
foreach ($snlaku as $row) {
|
|
$update = [
|
|
'STATUS_SN' => '0',
|
|
'DJ_ID' => $id_dj,
|
|
'DK_ID' => NULL,
|
|
'GUDANG_ID' => '1'
|
|
];
|
|
$action = $this->Persediaan->update('sn', $update, 'ID_SN', $row);
|
|
$datKuantiti = $this->Persediaan->getKuantitiBarang($key['BARANG_ID']);
|
|
$proses_kuantiti = $datKuantiti[0]['PROSES_KUANTITI'];
|
|
$konsinyasi_kuantiti = $datKuantiti[0]['KONSINYASI_KUANTITI'];
|
|
$proses = $proses_kuantiti+1;
|
|
$konsinyasi = $konsinyasi_kuantiti-1;
|
|
$update = [
|
|
'PROSES_KUANTITI' => $proses,
|
|
'KONSINYASI_KUANTITI' => $konsinyasi,
|
|
];
|
|
$action = $this->Persediaan->update('kuantiti', $update, 'BARANG_ID', $key['BARANG_ID']);
|
|
}
|
|
}
|
|
|
|
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 hargalaku() {
|
|
$method = $this->input->post('method');
|
|
$id_dj = $this->input->post('id_dj');
|
|
$id_penjualan = $this->input->post('id_penjualan');
|
|
$harga_dj = $this->input->post('harga_dj');
|
|
$ket_dj = $this->input->post('ket_dj');
|
|
$limit = $this->input->post('limit');
|
|
$nominal_pda = $this->input->post('nominal_pda');
|
|
|
|
$dj = $this->Persediaan->getDataDaftarJual($id_dj);
|
|
$qty_dj = $dj[0]['QTY_DJ'];
|
|
$total = $qty_dj*$harga_dj;
|
|
$totalAkhir = $total+$nominal_pda;
|
|
|
|
if ($limit<$totalAkhir) {
|
|
$this->session->set_flashdata('flashlimit', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
$update = [
|
|
'HARGA_DJ' => $harga_dj,
|
|
'KET_DJ' => $ket_dj
|
|
];
|
|
$action = $this->Persediaan->update('daftar_jual', $update, 'ID_DJ', $id_dj);
|
|
|
|
if ($action) {
|
|
$this->session->set_flashdata('flashharga', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
} else {
|
|
$this->session->set_flashdata('flashhargagagal', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
}
|
|
|
|
public function resetharga() {
|
|
$method = $this->input->post('method');
|
|
$id_dj = $this->input->post('id');
|
|
|
|
$update = [
|
|
'HARGA_DJ' => NULL,
|
|
'KET_DJ' => NULL
|
|
];
|
|
|
|
$action = $this->Persediaan->update('daftar_jual', $update, 'ID_DJ', $id_dj);
|
|
|
|
if ($action) {
|
|
$this->session->set_flashdata('flashharga', 'direset');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
} else {
|
|
$this->session->set_flashdata('flashhargagagal', 'direset');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
}
|
|
|
|
public function hapuslaku() {
|
|
$method = $this->input->post('method');
|
|
$id_penjualan = $this->input->post('id');
|
|
|
|
$datDj = $this->Persediaan->getDataDJ($id_penjualan);
|
|
foreach ($datDj as $key) {
|
|
$daftar_jual = $this->Persediaan->getDataDaftarJual($key['ID_DJ']);
|
|
$id_barang = $daftar_jual[0]['BARANG_ID'];
|
|
$qty_dj = $daftar_jual[0]['QTY_DJ'];
|
|
|
|
$datKuantiti = $this->Persediaan->getKuantitiBarang($id_barang);
|
|
$id_kuantiti = $datKuantiti[0]['ID_KUANTITI'];
|
|
$proses_kuantiti = $datKuantiti[0]['PROSES_KUANTITI'];
|
|
$konsinyasi_kuantiti = $datKuantiti[0]['KONSINYASI_KUANTITI'];
|
|
|
|
$konsinyasi = $konsinyasi_kuantiti+$qty_dj;
|
|
$proses = $proses_kuantiti-$qty_dj;
|
|
|
|
$update = [
|
|
'KONSINYASI_KUANTITI' => $konsinyasi,
|
|
'PROSES_KUANTITI' => $proses
|
|
];
|
|
$action = $this->Persediaan->update('kuantiti', $update, 'ID_KUANTITI', $id_kuantiti);
|
|
$action = $this->Persediaan->delete('daftar_jual', $key['ID_DJ'] ,'ID_DJ');
|
|
}
|
|
|
|
$datKonsi = $this->Persediaan->getDataDaftarKonsi($id_penjualan);
|
|
foreach ($datKonsi as $key) {
|
|
$update = [
|
|
'STATUS_SN' => '2',
|
|
'DK_ID' => $key['DK_ID'],
|
|
'GUDANG_ID' => '3',
|
|
'DJ_ID' => NULL
|
|
];
|
|
$action = $this->Persediaan->update('sn', $update, 'ID_SN', $key['SN_ID']);
|
|
}
|
|
|
|
$update = [
|
|
'PENJUALAN_ID' => NULL,
|
|
'STATUS_KONSI' => NULL
|
|
];
|
|
$action = $this->Persediaan->update('daftar_konsi', $update, 'PENJUALAN_ID', $id_penjualan);
|
|
|
|
$action = $this->Persediaan->delete('penjualan', $id_penjualan ,'ID_PENJUALAN');
|
|
|
|
if ($action) {
|
|
$this->session->set_flashdata('flash', 'dihapus');
|
|
redirect('ManagePersediaanQTY/dataKonsinyasiLaku');
|
|
} else {
|
|
$this->session->set_flashdata('flashgagal', 'dihapus');
|
|
redirect('ManagePersediaanQTY/dataKonsinyasiLaku');
|
|
}
|
|
|
|
}
|
|
|
|
public function kodePiutangDagang() {
|
|
$kk = $this->Persediaan->getKodePDA();
|
|
if (is_array($kk) || is_object($kk)) {
|
|
foreach ($kk as $row) {
|
|
if ($row['KODE'] == null) {
|
|
return "PDA/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 = "PDA/000000";
|
|
$data = substr($data, 0, $panjang) . $str;
|
|
return $data;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
public function kodeStockSn() {
|
|
$kk = $this->Persediaan->getKodeSTSN();
|
|
if (is_array($kk) || is_object($kk)) {
|
|
foreach ($kk as $row) {
|
|
if ($row['KODE'] == null) {
|
|
return "STSN/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 = "STSN/000000";
|
|
$data = substr($data, 0, $panjang) . $str;
|
|
return $data;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
public function kodeSJPenjualan($id) {
|
|
$kk = $this->Persediaan->getKodeSJPenjualan();
|
|
$tgl = date('mdy');
|
|
$datPenjualan = $this->Persediaan->getDataPenjualan($id);
|
|
$id_corp = $datPenjualan[0]['CORP_ID'];
|
|
if ($id_corp=="1") {
|
|
$corp="TMP";
|
|
} else if ($id_corp=="2") {
|
|
$corp="DMT";
|
|
} else if ($id_corp=="3") {
|
|
$corp="PCM";
|
|
}
|
|
if (is_array($kk) || is_object($kk)) {
|
|
foreach ($kk as $row) {
|
|
if ($row['KODE'] == null) {
|
|
return "SJ/$corp/$tgl/001";
|
|
} else {
|
|
$str = (string) $row['KODE'];
|
|
$tgl_lama = substr($str, 7, -4);
|
|
if ($tgl_lama!=$tgl) {
|
|
return "SJ/$corp/$tgl/001";
|
|
} else {
|
|
$panjang = 3;
|
|
$data = substr($str, 14, $panjang);
|
|
$ko = (int) $data + 1;
|
|
$str = (string) $ko;
|
|
$panjang = 17 - strlen($str);
|
|
$data = "SJ/$corp/$tgl/000";
|
|
$data = substr($data, 0, $panjang) . $str;
|
|
return $data;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
public function kodeINVPenjualan($id) {
|
|
$kk = $this->Persediaan->getKodeINVPenjualan();
|
|
$tgl = date('mdy');
|
|
$datPenjualan = $this->Persediaan->getDataPenjualan($id);
|
|
$id_corp = $datPenjualan[0]['CORP_ID'];
|
|
if ($id_corp=="1") {
|
|
$corp="TMP";
|
|
} else if ($id_corp=="2") {
|
|
$corp="DMT";
|
|
} else if ($id_corp=="3") {
|
|
$corp="PCM";
|
|
}
|
|
if (is_array($kk) || is_object($kk)) {
|
|
foreach ($kk as $row) {
|
|
if ($row['KODE'] == null) {
|
|
return "INV/$corp/$tgl/001";
|
|
} else {
|
|
$str = (string) $row['KODE'];
|
|
$tgl_lama = substr($str, 8, -4);
|
|
if ($tgl_lama!=$tgl) {
|
|
return "INV/$corp/$tgl/001";
|
|
} else {
|
|
$panjang = 3;
|
|
$data = substr($str, 15, $panjang);
|
|
$ko = (int) $data + 1;
|
|
$str = (string) $ko;
|
|
$panjang = 18 - strlen($str);
|
|
$data = "INV/$corp/$tgl/000";
|
|
$data = substr($data, 0, $panjang) . $str;
|
|
return $data;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
public function proseslaku() {
|
|
$method = $this->input->post('method');
|
|
$id_penjualan = $this->input->post('id');
|
|
$tgl = date('m/d/Y');
|
|
|
|
$datDj = $this->Persediaan->getDataDJ($id_penjualan);
|
|
$tempo_penjualan = $datDj[0]['TEMPO_PENJUALAN'];
|
|
$id_pelanggan = $datDj[0]['PELANGGAN_ID'];
|
|
|
|
foreach ($datDj as $key) {
|
|
if ($key['HARGA_DJ']==NULL) {
|
|
$this->session->set_flashdata('flashhargakosong', 'diproses');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
}
|
|
|
|
$nominal_pda='0';
|
|
foreach ($datDj as $key) {
|
|
$piutang = $key['HARGA_DJ']*$key['QTY_DJ'];
|
|
$nominal_pda = $nominal_pda+$piutang;
|
|
}
|
|
|
|
$kode_pda = $this->kodePiutangDagang();
|
|
|
|
$input = [
|
|
'KODE_PDA' => $kode_pda,
|
|
'PENJUALAN_ID' => $id_penjualan,
|
|
'NOMINAL_PDA' => $nominal_pda,
|
|
'TGL_PDA' => $tgl,
|
|
'TEMPO_PDA' => $tempo_penjualan
|
|
];
|
|
$action = $this->Persediaan->create('piutang_dagang', $input);
|
|
|
|
$id_setdata = $this->Neraca->getSetdata_ID();
|
|
$id_setdata = $id_setdata[0]['SETDATA_ID'];
|
|
|
|
$neraca = $this->Neraca->getDataNilaiNeraca($id_setdata,3);
|
|
$id_neraca = $neraca[0]['ID_NERACA'];
|
|
$nilai_neraca = $neraca[0]['NILAI_NERACA'];
|
|
$nilai = $nilai_neraca+$nominal_pda;
|
|
$update = [
|
|
'NILAI_NERACA' => $nilai
|
|
];
|
|
$action = $this->Neraca->update('neraca', $update, 'ID_NERACA', $id_neraca);
|
|
|
|
$neraca = $this->Neraca->getDataNilaiNeraca($id_setdata,23);
|
|
$id_neraca = $neraca[0]['ID_NERACA'];
|
|
$nilai_neraca = $neraca[0]['NILAI_NERACA'];
|
|
$nilai = $nilai_neraca+$nominal_pda;
|
|
$update = [
|
|
'NILAI_NERACA' => $nilai
|
|
];
|
|
$action = $this->Neraca->update('neraca', $update, 'ID_NERACA', $id_neraca);
|
|
|
|
foreach ($datDj as $key) {
|
|
$sn = $this->Persediaan->getDataSnDj($key['ID_DJ']);
|
|
foreach ($sn as $dat) {
|
|
$kode_stsn = $this->kodeStockSn();
|
|
$input = [
|
|
'KODE_STSN' => $kode_stsn,
|
|
'KODE_BUKTI' => $key['KODE_PENJUALAN'],
|
|
'TGL_STSN' => $key['TGL_PENJUALAN'],
|
|
'BARANG_ID' => $key['BARANG_ID'],
|
|
'PELANGGAN_ID' => $key['PELANGGAN_ID'],
|
|
'SN_ID' => $dat['ID_SN']
|
|
];
|
|
$action = $this->Persediaan->create('stock_sn', $input);
|
|
$update = [
|
|
'STATUS_SN' => '1'
|
|
];
|
|
$action = $this->Persediaan->update('sn', $update, 'ID_SN', $dat['ID_SN']);
|
|
}
|
|
|
|
$datKuantiti = $this->Persediaan->getKuantitiBarang($key['BARANG_ID']);
|
|
$id_kuantiti = $datKuantiti[0]['ID_KUANTITI'];
|
|
$global_kuantiti = $datKuantiti[0]['GLOBAL_KUANTITI'];
|
|
$proses_kuantiti = $datKuantiti[0]['PROSES_KUANTITI'];
|
|
$global = $global_kuantiti-$key['QTY_DJ'];
|
|
$proses = $proses_kuantiti-$key['QTY_DJ'];
|
|
$kode_stq = $this->kodeStockKuantiti();
|
|
$input = [
|
|
'KODE_STQ' => $kode_stq,
|
|
'KODE_BUKTI' => $key['KODE_PENJUALAN'],
|
|
'TGL_STQ' => $key['TGL_PENJUALAN'],
|
|
'BARANG_ID' => $key['BARANG_ID'],
|
|
'QTY_BEFORE' => $global_kuantiti,
|
|
'QTY_IN' => '0',
|
|
'QTY_OUT' => $key['QTY_DJ'],
|
|
'QTY_AFTER' => $global
|
|
];
|
|
$action = $this->Persediaan->create('stock_kuantiti', $input);
|
|
$update = [
|
|
'GLOBAL_KUANTITI' => $global,
|
|
'PROSES_KUANTITI' => $proses,
|
|
];
|
|
$action = $this->Persediaan->update('kuantiti', $update, 'ID_KUANTITI', $id_kuantiti);
|
|
}
|
|
|
|
$datKonsinyasi = $this->Persediaan->checkKonsinyasi($id_pelanggan);
|
|
foreach ($datKonsinyasi as $key) {
|
|
$datDK = $this->Persediaan->checkDk($key['ID_KONSINYASI']);
|
|
$qtyDk = count($datDK);
|
|
$nilaiKunci = '0';
|
|
foreach ($datDK as $row) {
|
|
$qty_dk = $row['QTY_DK'];
|
|
$qty_real = $this->Persediaan->getQtySnKonsinyasi($row['ID_DK']);
|
|
if ($qty_dk==$qty_real) {
|
|
$nilaiKunci = $nilaiKunci+1;
|
|
}
|
|
}
|
|
if ($nilaiKunci==$qtyDk) {
|
|
$datKonsinyasi = $this->Persediaan->getDataKonsinyasiLaku($key['ID_KONSINYASI']);
|
|
$status_konsinyasi = $datKonsinyasi[0]['STATUS_KONSINYASI'];
|
|
if ($status_konsinyasi=="0") {
|
|
$update = [
|
|
'STATUS_KONSINYASI' => '1'
|
|
];
|
|
$action = $this->Persediaan->update('konsinyasi', $update, 'ID_KONSINYASI', $key['ID_KONSINYASI']);
|
|
}
|
|
}
|
|
}
|
|
|
|
$sj_penjualan = $this->kodeSJPenjualan($id_penjualan);
|
|
$inv_penjualan = $this->kodeINVPenjualan($id_penjualan);
|
|
|
|
$update = [
|
|
'STATUS_PENJUALAN' => '1',
|
|
'SJ_PENJUALAN' => $sj_penjualan,
|
|
'INV_PENJUALAN' => $inv_penjualan,
|
|
'STATUS_PRINTSJ' => '0',
|
|
'STATUS_PRINTINV' => '0'
|
|
];
|
|
$action = $this->Persediaan->update('penjualan', $update, 'ID_PENJUALAN', $id_penjualan);
|
|
|
|
if ($action) {
|
|
$this->session->set_flashdata('flash', 'diproses');
|
|
redirect('ManagePersediaanQTY/dataKonsinyasiLaku');
|
|
} else {
|
|
$this->session->set_flashdata('flashgagal', 'diproses');
|
|
redirect('ManagePersediaanQTY/dataKonsinyasiLaku');
|
|
}
|
|
|
|
}
|
|
|
|
public function dataKonsinyasiTarik() {
|
|
$datPersediaan = $this->Persediaan->getDataKonsinyasiTarik();
|
|
$data = [
|
|
'sidebar' => "menu persediaan",
|
|
'navChild' => "",
|
|
'persediaan' => $datPersediaan
|
|
];
|
|
$this->load->view('proses/PersediaanKonsinyasiTarik', $data);
|
|
}
|
|
|
|
public function prosesKonsiTarik($id) {
|
|
$persediaan = $this->Persediaan->getDaftarKonsiTarik($id);
|
|
$datSn = $this->Barang->getSnKonsinyasi($id);
|
|
$tgl = date('m/d/Y');
|
|
|
|
if ($persediaan==FALSE) {
|
|
$id_pk=NULL;
|
|
} else {
|
|
$id_pk = $persediaan[0]['ID_PK'];
|
|
}
|
|
|
|
$data = [
|
|
'sidebar' => "menu persediaan",
|
|
'navChild' => "",
|
|
'persediaan' => $persediaan,
|
|
'id_pelanggan' => $id,
|
|
'id_pk' => $id_pk,
|
|
'sn' => $datSn,
|
|
'tgl' => $tgl
|
|
];
|
|
|
|
$this->load->view('proses/PersediaanKonsiTarik', $data);
|
|
}
|
|
|
|
public function kodePenarikanKonsi() {
|
|
$kk = $this->Persediaan->getKodePenarikanKonsi();
|
|
if (is_array($kk) || is_object($kk)) {
|
|
foreach ($kk as $row) {
|
|
if ($row['KODE'] == null) {
|
|
return "PK/000001";
|
|
} else {
|
|
$str = (string) $row['KODE'];
|
|
$panjang = 6;
|
|
$data = substr($str, 3, $panjang);
|
|
|
|
$ko = (int) $data + 1;
|
|
$str = (string) $ko;
|
|
|
|
$panjang = 9 - strlen($str);
|
|
$data = "PK/000000";
|
|
$data = substr($data, 0, $panjang) . $str;
|
|
return $data;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
public function savetarik() {
|
|
$method = $this->input->post('method');
|
|
$id_pk = $this->input->post('id');
|
|
$tgl_pk = $this->input->post('tgl_pk');
|
|
$sntarik = $this->input->post('sntarik');
|
|
$kode_pk = $this->kodePenarikanKonsi();
|
|
|
|
foreach ($sntarik as $key) {
|
|
$datKonsi = $this->Persediaan->getDataDaftarKonsiSn($key);
|
|
$indexKonsi = count($datKonsi);
|
|
if ($datKonsi[$indexKonsi-1]['PENJUALAN_ID']!=NULL) {
|
|
$this->session->set_flashdata('flashrefresh', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
if ($datKonsi[$indexKonsi-1]['PK_ID']!=NULL) {
|
|
$this->session->set_flashdata('flashrefresh', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
if ($datKonsi[$indexKonsi-1]['STATUS_KONSI']!=NULL) {
|
|
$this->session->set_flashdata('flashrefresh', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
}
|
|
|
|
foreach ($sntarik as $key) {
|
|
$datSn = $this->Persediaan->getDataSn($key);
|
|
if ($datSn[0]['DK_ID']==NULL) {
|
|
$this->session->set_flashdata('flashrefresh', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
if ($datSn[0]['GUDANG_ID']!="3") {
|
|
$this->session->set_flashdata('flashrefresh', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
if ($datSn[0]['STATUS_SN']!="2") {
|
|
$this->session->set_flashdata('flashrefresh', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
}
|
|
|
|
$input = [
|
|
'KODE_PK' => $kode_pk,
|
|
'TGL_PK' => $tgl_pk
|
|
];
|
|
$action = $this->Persediaan->create('penarikan_konsi', $input);
|
|
|
|
$id_pk = $this->Persediaan->getID_PKMax();
|
|
$id_pk = $id_pk[0]['ID_PK'];
|
|
|
|
foreach ($sntarik as $key) {
|
|
$id_konsi = $this->Persediaan->getID_KonsiSNIDMax($key);
|
|
$id_konsi = $id_konsi[0]['ID_KONSI'];
|
|
$update = [
|
|
'STATUS_KONSI' => '1',
|
|
'PK_ID' => $id_pk
|
|
];
|
|
$action = $this->Persediaan->update('daftar_konsi', $update, 'ID_KONSI', $id_konsi);
|
|
|
|
$update = [
|
|
'STATUS_SN' => NULL,
|
|
'GUDANG_ID' => '1',
|
|
'DK_ID' => NULL,
|
|
];
|
|
$action = $this->Persediaan->update('sn', $update, 'ID_SN', $key);
|
|
|
|
$datSn = $this->Persediaan->getDataSn($key);
|
|
$id_barang = $datSn[0]['BARANG_ID'];
|
|
$datKuantiti = $this->Persediaan->getDataKuantiti($id_barang);
|
|
$konsinyasi_kuantiti = $datKuantiti[0]['KONSINYASI_KUANTITI'];
|
|
$pcm_kuantiti = $datKuantiti[0]['PCM_KUANTITI'];
|
|
$konsinyasi = $konsinyasi_kuantiti-1;
|
|
$pcm = $pcm_kuantiti+1;
|
|
$update = [
|
|
'PCM_KUANTITI' => $pcm,
|
|
'KONSINYASI_KUANTITI' => $konsinyasi
|
|
];
|
|
$action = $this->Persediaan->update('kuantiti', $update, 'BARANG_ID', $id_barang);
|
|
}
|
|
|
|
if ($action) {
|
|
$this->session->set_flashdata('flash', 'ditarik');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
} else {
|
|
$this->session->set_flashdata('flashgagal', 'ditarik');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
}
|
|
|
|
public function hapustarik() {
|
|
$method = $this->input->post('method');
|
|
$id_pk = $this->input->post('id');
|
|
|
|
$datPenarikan = $this->Persediaan->getDataPenarikanKonsi($id_pk);
|
|
if ($datPenarikan==FALSE) {
|
|
$this->session->set_flashdata('flashrefresh', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
$datSnTarik = $this->Persediaan->getDataSnPenarikanKonsi($id_pk);
|
|
foreach ($datSnTarik as $key) {
|
|
$datSn = $this->Persediaan->getDataSn($key['SN_ID']);
|
|
if ($datSn[0]['DK_ID']!=NULL) {
|
|
$this->session->set_flashdata('flashrefresh', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
if ($datSn[0]['STATUS_SN']!=NULL) {
|
|
$this->session->set_flashdata('flashrefresh', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
}
|
|
|
|
foreach ($datSnTarik as $key) {
|
|
$id_konsi = $this->Persediaan->getID_KonsiSNIDMax($key['SN_ID']);
|
|
$id_konsi = $id_konsi[0]['ID_KONSI'];
|
|
$update = [
|
|
'PK_ID' => NULL,
|
|
'STATUS_KONSI' => NULL
|
|
];
|
|
$action = $this->Persediaan->update('daftar_konsi', $update, 'ID_KONSI', $id_konsi);
|
|
$update = [
|
|
'GUDANG_ID' => '3',
|
|
'STATUS_SN' => '2',
|
|
'DK_ID' => $key['DKKONSI']
|
|
];
|
|
$action = $this->Persediaan->update('sn', $update, 'ID_SN', $key['SN_ID']);
|
|
|
|
$datKuantiti = $this->Persediaan->getKuantitiBarang($key['BARANG_ID']);
|
|
$pcm_kuantiti = $datKuantiti[0]['PCM_KUANTITI'];
|
|
$konsinyasi_kuantiti = $datKuantiti[0]['KONSINYASI_KUANTITI'];
|
|
$konsinyasi = $konsinyasi_kuantiti+1;
|
|
$pcm = $pcm_kuantiti-1;
|
|
|
|
$update = [
|
|
'KONSINYASI_KUANTITI' => $konsinyasi,
|
|
'PCM_KUANTITI' => $pcm
|
|
];
|
|
$action = $this->Persediaan->update('kuantiti', $update, 'BARANG_ID', $key['BARANG_ID']);
|
|
}
|
|
|
|
$action = $this->Persediaan->delete('penarikan_konsi', $id_pk ,'ID_PK');
|
|
|
|
if ($action) {
|
|
$this->session->set_flashdata('flash', 'dihapus');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
} else {
|
|
$this->session->set_flashdata('flashgagal', 'dihapus');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
}
|
|
|
|
public function kodeSJPenarikan() {
|
|
$kk = $this->Persediaan->getKodeSJPenarikan();
|
|
$tgl = date('mdy');
|
|
if (is_array($kk) || is_object($kk)) {
|
|
foreach ($kk as $row) {
|
|
if ($row['KODE'] == null) {
|
|
return "SJ/PN/$tgl/001";
|
|
} else {
|
|
$str = (string) $row['KODE'];
|
|
$tgl_lama = substr($str, 6, -4);
|
|
if ($tgl_lama!=$tgl) {
|
|
return "SJ/PN/$tgl/001";
|
|
} else {
|
|
$panjang = 3;
|
|
$data = substr($str, 13, $panjang);
|
|
$ko = (int) $data + 1;
|
|
$str = (string) $ko;
|
|
$panjang = 16 - strlen($str);
|
|
$data = "SJ/PN/$tgl/000";
|
|
$data = substr($data, 0, $panjang) . $str;
|
|
return $data;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
public function prosestarik() {
|
|
$method = $this->input->post('method');
|
|
$id_pk = $this->input->post('id');
|
|
$id_pelanggan = $this->input->post('id_pelanggan');
|
|
|
|
$datPenarikan = $this->Persediaan->getDataPenarikanKonsi($id_pk);
|
|
if ($datPenarikan==FALSE) {
|
|
$this->session->set_flashdata('flashrefresh', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
if ($datPenarikan[0]['SJ_PK']!=NULL) {
|
|
$this->session->set_flashdata('flashrefresh', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
$datSnTarik = $this->Persediaan->getDataSnPenarikanKonsi($id_pk);
|
|
foreach ($datSnTarik as $key) {
|
|
$datSn = $this->Persediaan->getDataSn($key['SN_ID']);
|
|
if ($datSn[0]['DK_ID']!=NULL) {
|
|
$this->session->set_flashdata('flashrefresh', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
if ($datSn[0]['STATUS_SN']!=NULL) {
|
|
$this->session->set_flashdata('flashrefresh', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
}
|
|
|
|
$datKonsinyasi = $this->Persediaan->checkKonsinyasi($id_pelanggan);
|
|
foreach ($datKonsinyasi as $key) {
|
|
$datDK = $this->Persediaan->checkDk($key['ID_KONSINYASI']);
|
|
$qtyDk = count($datDK);
|
|
$nilaiKunci = '0';
|
|
foreach ($datDK as $row) {
|
|
$qty_dk = $row['QTY_DK'];
|
|
$qty_real = $this->Persediaan->getQtySnKonsinyasi($row['ID_DK']);
|
|
if ($qty_dk==$qty_real) {
|
|
$nilaiKunci = $nilaiKunci+1;
|
|
}
|
|
}
|
|
if ($nilaiKunci==$qtyDk) {
|
|
$datKonsinyasi = $this->Persediaan->getDataKonsinyasiLaku($key['ID_KONSINYASI']);
|
|
$status_konsinyasi = $datKonsinyasi[0]['STATUS_KONSINYASI'];
|
|
if ($status_konsinyasi=="0") {
|
|
$update = [
|
|
'STATUS_KONSINYASI' => '1'
|
|
];
|
|
$action = $this->Persediaan->update('konsinyasi', $update, 'ID_KONSINYASI', $key['ID_KONSINYASI']);
|
|
}
|
|
}
|
|
}
|
|
|
|
$sj_pk = $this->kodeSJPenarikan();
|
|
$update = [
|
|
'SJ_PK' => $sj_pk,
|
|
'STATUS_PRINTSJ' => '0'
|
|
];
|
|
$action = $this->Persediaan->update('penarikan_konsi', $update, 'ID_PK', $id_pk);
|
|
|
|
if ($action) {
|
|
$this->session->set_flashdata('flash', 'diproses');
|
|
redirect('ManagePersediaanQTY/dataKonsinyasiTarik');
|
|
} else {
|
|
$this->session->set_flashdata('flashgagal', 'diproses');
|
|
redirect('ManagePersediaanQTY/dataKonsinyasiTarik');
|
|
}
|
|
|
|
}
|
|
|
|
public function dataKonsinyasiSn($id) {
|
|
$datPersediaan = $this->Persediaan->getKonsinyasiView($id);
|
|
$data = [
|
|
'sidebar' => "menu persediaan",
|
|
'navChild' => "",
|
|
'persediaan' => $datPersediaan
|
|
];
|
|
$this->load->view('proses/PersediaanKonsinyasiViewSn', $data);
|
|
}
|
|
|
|
public function dataKonsinyasiView() {
|
|
$datPersediaan = $this->Persediaan->getKonsinyasiView();
|
|
$data = [
|
|
'sidebar' => "menu persediaan",
|
|
'navChild' => "",
|
|
'persediaan' => $datPersediaan,
|
|
];
|
|
$this->load->view('proses/PersediaanKonsinyasiViewAll', $data);
|
|
}
|
|
|
|
public function dataKonsinyasiSisa() {
|
|
$datPersediaan = $this->Persediaan->getKonsinyasiViewSisa();
|
|
$data = [
|
|
'sidebar' => "menu persediaan",
|
|
'navChild' => "",
|
|
'persediaan' => $datPersediaan,
|
|
];
|
|
$this->load->view('proses/PersediaanKonsinyasiViewSisa', $data);
|
|
}
|
|
|
|
//Peminjaman
|
|
public function dataPeminjaman() {
|
|
$datPersediaan = $this->Persediaan->getDataKuantitiPeminjaman();
|
|
$datBarang = $this->Barang->getBarangPeminjaman();
|
|
$datPeminjam = $this->Karyawan->getDataKaryawan();
|
|
$tgl = date('m/d/Y');
|
|
$data = [
|
|
'sidebar' => "menu persediaan",
|
|
'navChild' => "",
|
|
'persediaan' => $datPersediaan,
|
|
'barang' => $datBarang,
|
|
'peminjam' => $datPeminjam,
|
|
'tgl' => $tgl
|
|
];
|
|
$this->load->view('proses/PersediaanPeminjaman', $data);
|
|
}
|
|
|
|
public function kodePeminjaman() {
|
|
$kk = $this->Persediaan->getKodePeminjaman();
|
|
if (is_array($kk) || is_object($kk)) {
|
|
foreach ($kk as $row) {
|
|
if ($row['KODE'] == null) {
|
|
return "PIN/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 = "PIN/000000";
|
|
$data = substr($data, 0, $panjang) . $str;
|
|
return $data;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
public function savepeminjaman() {
|
|
$method = $this->input->post('method');
|
|
$id_peminjaman = $this->input->post('id');
|
|
$id_barang = $this->input->post('id_barang');
|
|
$id_peminjam = $this->input->post('id_peminjam');
|
|
$qty_peminjaman = $this->input->post('qty_peminjaman');
|
|
$tgl_peminjaman = $this->input->post('tgl_peminjaman');
|
|
$id_pemberi = $this->session->userdata('id_karyawan');
|
|
$kode_peminjaman = $this->kodePeminjaman();
|
|
|
|
$kuantiti = $this->Persediaan->getKuantitiBarang($id_barang);
|
|
$id_kuantiti = $kuantiti[0]['ID_KUANTITI'];
|
|
$pcm_kuantiti = $kuantiti[0]['PCM_KUANTITI'];
|
|
$peminjaman_kuantiti = $kuantiti[0]['PEMINJAMAN_KUANTITI'];
|
|
|
|
if ($qty_peminjaman>$pcm_kuantiti) {
|
|
$this->session->set_flashdata('flashkuantiti', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
if ($qty_peminjaman<=0) {
|
|
$this->session->set_flashdata('flashzero', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
$temp = $peminjaman_kuantiti+$qty_peminjaman;
|
|
$pcm = $pcm_kuantiti-$qty_peminjaman;
|
|
|
|
$input = [
|
|
'KODE_PEMINJAMAN' => $kode_peminjaman,
|
|
'BARANG_ID' => $id_barang,
|
|
'QTY_PEMINJAMAN' => $qty_peminjaman,
|
|
'TGL_PEMINJAMAN' => $tgl_peminjaman,
|
|
'PEMBERI_ID' => $id_pemberi,
|
|
'PEMINJAM_ID' => $id_peminjam
|
|
];
|
|
|
|
$action = $this->Persediaan->create('peminjaman', $input);
|
|
|
|
$update = [
|
|
'PEMINJAMAN_KUANTITI' => $temp,
|
|
'PCM_KUANTITI' => $pcm
|
|
];
|
|
|
|
$action = $this->Persediaan->update('kuantiti', $update, 'ID_KUANTITI', $id_kuantiti);
|
|
|
|
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 hapuspeminjaman() {
|
|
$method = $this->input->post('method');
|
|
$id_peminjaman = $this->input->post('id');
|
|
|
|
$datPeminjaman = $this->Persediaan->getDataKuantitiPeminjaman($id_peminjaman);
|
|
if ($datPeminjaman==FALSE) {
|
|
$this->session->set_flashdata('flashrefresh', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
if ($datPeminjaman[0]['ID_SN']!=NULL) {
|
|
$this->session->set_flashdata('flashrefresh', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
$qty_peminjaman = $datPeminjaman[0]['QTY_PEMINJAMAN'];
|
|
$pcm_kuantiti = $datPeminjaman[0]['PCM_KUANTITI'];
|
|
$peminjaman_kuantiti = $datPeminjaman[0]['PEMINJAMAN_KUANTITI'];
|
|
$id_kuantiti = $datPeminjaman[0]['ID_KUANTITI'];
|
|
|
|
$temp = $peminjaman_kuantiti-$qty_peminjaman;
|
|
$pcm = $pcm_kuantiti+$qty_peminjaman;
|
|
|
|
$update = [
|
|
'PEMINJAMAN_KUANTITI' => $temp,
|
|
'PCM_KUANTITI' => $pcm
|
|
];
|
|
|
|
$action = $this->Persediaan->update('kuantiti', $update, 'ID_KUANTITI', $id_kuantiti);
|
|
$action = $this->Persediaan->delete('peminjaman', $id_peminjaman ,'ID_PEMINJAMAN');
|
|
|
|
if ($action) {
|
|
$this->session->set_flashdata('flash', 'dihapus');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
} else {
|
|
$this->session->set_flashdata('flashgagal', 'dihapus');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
}
|
|
|
|
public function tambahSn($id) {
|
|
$persediaan = $this->Persediaan->getDataPinjamSn($id);
|
|
$qty = $this->Persediaan->getMaxQtyPinjam($id);
|
|
$id_barang = $persediaan[0]['ID_BARANG'];
|
|
|
|
$data = [
|
|
'sidebar' => "menu persediaan",
|
|
'navChild' => "",
|
|
'persediaan' => $persediaan,
|
|
'id_peminjaman' => $id,
|
|
'id_barang' => $id_barang,
|
|
'title1' => $persediaan[0]['KODE_PEMINJAMAN'],
|
|
'title2' => $persediaan[0]['NAMA_BARANG'],
|
|
'qty_peminjaman' => $persediaan[0]['QTY_PEMINJAMAN'],
|
|
'qty' => $qty,
|
|
];
|
|
|
|
$this->load->view('proses/PersediaanPeminjamanSn', $data);
|
|
}
|
|
|
|
public function datasn() {
|
|
$id = $this->input->post('id');
|
|
$data = $this->Persediaan->getDataSnDp($id);
|
|
$this->output_json(['value' => 1, 'total' => sizeof($data), 'data' => $data]);
|
|
}
|
|
|
|
public function jumlahdatasn() {
|
|
$id = $this->input->post('id');
|
|
$data = $this->Persediaan->getDataSnDp($id);
|
|
$this->output_json(['value' => 1, 'jumlah_data' => sizeof($data)]);
|
|
}
|
|
|
|
public function pinjamsn() {
|
|
$id_peminjaman = $this->input->post('id_peminjaman');
|
|
$id_barang = $this->input->post('id_barang');
|
|
$nama_sn = $this->input->post('nama_sn');
|
|
$nama_sn = strtoupper($nama_sn);
|
|
|
|
$dataSn = $this->Persediaan->getDataSnBarang($id_barang);
|
|
foreach ($dataSn as $key) {
|
|
if ($nama_sn==$key['NAMA_SN']) {
|
|
$id_sn = $key['ID_SN'];
|
|
$data = [
|
|
'STATUS_SN' => '2',
|
|
'PEMINJAMAN_ID' => $id_peminjaman,
|
|
'GUDANG_ID' => '4'
|
|
];
|
|
$action = $this->Persediaan->update('sn', $data, 'ID_SN', $id_sn);
|
|
$input = [
|
|
'SN_ID' => $id_sn,
|
|
'PEMINJAMAN_ID' => $id_peminjaman
|
|
];
|
|
$action = $this->Persediaan->create('daftar_pinjam', $input);
|
|
}
|
|
}
|
|
|
|
$peminjaman = $this->Persediaan->getDataKuantitiPeminjaman($id_peminjaman);
|
|
$qtyPeminjaman = $peminjaman[0]['QTY_PEMINJAMAN'];
|
|
|
|
$qtyReal = $this->Persediaan->getMaxQtyPinjam($id_peminjaman);
|
|
if ($qtyReal==$qtyPeminjaman){
|
|
$this->output_json(['value' => 2, 'nama_sn' => $nama_sn]);
|
|
$this->session->set_flashdata('flashkunci', 'dikunci');
|
|
} else if ($action){
|
|
$this->output_json(['value' => 1, 'nama_sn' => $nama_sn]);
|
|
} else {
|
|
$this->output_json(['value' => 0, 'nama_sn' => $nama_sn]);
|
|
$this->session->set_flashdata('flashgagal', 'dikunci');
|
|
}
|
|
}
|
|
|
|
public function resetsn() {
|
|
$id = $this->input->post('id_sn');
|
|
$datPeminjaman = $this->Persediaan->getDataSnPeminjaman($id);
|
|
$id_peminjaman = $datPeminjaman[0]['PEMINJAMAN_ID'];
|
|
$qty_peminjaman = $datPeminjaman[0]['QTY_PEMINJAMAN'];
|
|
|
|
$data = [
|
|
'STATUS_SN' => NULL,
|
|
'PEMINJAMAN_ID' => NULL,
|
|
'GUDANG_ID' => '1'
|
|
];
|
|
$action = $this->Persediaan->update('sn', $data, 'ID_SN', $id);
|
|
|
|
$action = $this->Persediaan->delete('daftar_pinjam', $id ,'SN_ID');
|
|
|
|
$qtyReal = $this->Persediaan->getMaxQtyPinjam($id_peminjaman);
|
|
if ($qtyReal+1==$qty_peminjaman){
|
|
$this->output_json(['value' => 2, 'message' => 'Berhasil', 'dt' => $action]);
|
|
$this->session->set_flashdata('flashkurang', 'dikunci');
|
|
} else if ($action) {
|
|
$this->output_json(['value' => 1, 'message' => 'Berhasil', 'dt' => $action]);
|
|
} else {
|
|
$this->output_json(['value' => 0, 'message' => "gagal", 'dt' => $action]);
|
|
}
|
|
}
|
|
|
|
public function dataPengembalian() {
|
|
$datPersediaan = $this->Persediaan->getKuantitiPeminjamanKembali();
|
|
$datPengembali = $this->Karyawan->getDataKaryawan();
|
|
$tgl = date('m/d/Y');
|
|
$data = [
|
|
'sidebar' => "menu persediaan",
|
|
'navChild' => "",
|
|
'persediaan' => $datPersediaan,
|
|
'pengembali' => $datPengembali,
|
|
'tgl' => $tgl
|
|
];
|
|
$this->load->view('proses/PersediaanPengembalian', $data);
|
|
}
|
|
|
|
public function pengembalian() {
|
|
$method = $this->input->post('method');
|
|
$id_peminjaman = $this->input->post('id');
|
|
$id_pengembali = $this->input->post('id_pengembali');
|
|
$id_penerima = $this->session->userdata('id_karyawan');
|
|
$tgl_kembali = $this->input->post('tgl_kembali');
|
|
|
|
$datPeminjaman = $this->Persediaan->getDataKuantitiPeminjaman($id_peminjaman);
|
|
if ($datPeminjaman==FALSE) {
|
|
$this->session->set_flashdata('flashrefresh', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
$qty_peminjaman = $datPeminjaman[0]['QTY_PEMINJAMAN'];
|
|
$pcm_kuantiti = $datPeminjaman[0]['PCM_KUANTITI'];
|
|
$peminjaman_kuantiti = $datPeminjaman[0]['PEMINJAMAN_KUANTITI'];
|
|
$id_kuantiti = $datPeminjaman[0]['ID_KUANTITI'];
|
|
|
|
$temp = $peminjaman_kuantiti-$qty_peminjaman;
|
|
$pcm = $pcm_kuantiti+$qty_peminjaman;
|
|
|
|
$update = [
|
|
'PEMINJAMAN_KUANTITI' => $temp,
|
|
'PCM_KUANTITI' => $pcm
|
|
];
|
|
$action = $this->Persediaan->update('kuantiti', $update, 'ID_KUANTITI', $id_kuantiti);
|
|
|
|
$update = [
|
|
'STATUS_PEMINJAMAN' => '1',
|
|
'PENGEMBALI_ID' => $id_pengembali,
|
|
'PENERIMA_ID' => $id_penerima,
|
|
'TGL_KEMBALI' => $tgl_kembali
|
|
];
|
|
$action = $this->Persediaan->update('peminjaman', $update, 'ID_PEMINJAMAN', $id_peminjaman);
|
|
|
|
$update = [
|
|
'STATUS_SN' => NULL,
|
|
'PEMINJAMAN_ID' => NULL,
|
|
];
|
|
$action = $this->Persediaan->update('sn', $update, 'PEMINJAMAN_ID', $id_peminjaman);
|
|
|
|
if ($action) {
|
|
$this->session->set_flashdata('flash', 'dikembalikan');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
} else {
|
|
$this->session->set_flashdata('flashgagal', 'dikembalikan');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
}
|
|
|
|
public function dataPeminjamanView() {
|
|
$datPersediaan = $this->Persediaan->getViewKuantitiPeminjaman();
|
|
|
|
$data = [
|
|
'sidebar' => "menu persediaan",
|
|
'navChild' => "",
|
|
'persediaan' => $datPersediaan
|
|
];
|
|
$this->load->view('proses/PersediaanPeminjamanViewAll', $data);
|
|
}
|
|
|
|
public function dataPeminjamanSisa() {
|
|
$datPersediaan = $this->Persediaan->getViewKuantitiPeminjamanSisa();
|
|
|
|
$data = [
|
|
'sidebar' => "menu persediaan",
|
|
'navChild' => "",
|
|
'persediaan' => $datPersediaan
|
|
];
|
|
$this->load->view('proses/PersediaanPeminjamanViewSisa', $data);
|
|
}
|
|
|
|
public function dataPeminjamanViewSn($id) {
|
|
$persediaan = $this->Persediaan->getDataDaftarPinjam($id);
|
|
$barang = $this->Persediaan->getDataPinjamSn($id);
|
|
|
|
$data = [
|
|
'sidebar' => "menu persediaan",
|
|
'navChild' => "",
|
|
'persediaan' => $persediaan,
|
|
'id_peminjaman' => $id,
|
|
'nama_barang' => $barang[0]['NAMA_BARANG'],
|
|
'kode_barang' => $barang[0]['KODE_BARANG'],
|
|
'qty_peminjaman' => $barang[0]['QTY_PEMINJAMAN'],
|
|
];
|
|
|
|
$this->load->view('proses/PersediaanPeminjamanSnView', $data);
|
|
}
|
|
|
|
//Fungsi Pending
|
|
public function dataPending() {
|
|
$datPersediaan = $this->Persediaan->getDataKuantitiPending();
|
|
$datBarang = $this->Barang->getBarangPeminjaman();
|
|
$datSales = $this->Karyawan->getDataSales();
|
|
$tgl = date('m/d/Y');
|
|
$data = [
|
|
'sidebar' => "menu persediaan",
|
|
'navChild' => "",
|
|
'persediaan' => $datPersediaan,
|
|
'barang' => $datBarang,
|
|
'sales' => $datSales,
|
|
'tgl' => $tgl
|
|
];
|
|
$this->load->view('proses/PersediaanPending', $data);
|
|
}
|
|
|
|
public function dataPendingPG() {
|
|
$datPersediaan = $this->Persediaan->getDataKuantitiPending();
|
|
$tgl = date('m/d/Y');
|
|
$data = [
|
|
'sidebar' => "menu persediaan",
|
|
'navChild' => "",
|
|
'persediaan' => $datPersediaan,
|
|
'tgl' => $tgl
|
|
];
|
|
$this->load->view('proses/PersediaanPendingPG', $data);
|
|
}
|
|
|
|
public function dataPendingPS() {
|
|
$id_sales = $this->session->userdata('id_karyawan');
|
|
$datPersediaan = $this->Persediaan->getPendingSales($id_sales);
|
|
$tgl = date('m/d/Y');
|
|
$data = [
|
|
'sidebar' => "menu persediaan",
|
|
'navChild' => "",
|
|
'persediaan' => $datPersediaan,
|
|
'tgl' => $tgl
|
|
];
|
|
$this->load->view('proses/PersediaanPendingPS', $data);
|
|
}
|
|
|
|
public function dataPendingView() {
|
|
$datPersediaan = $this->Persediaan->getPendingView();
|
|
$tgl = date('m/d/Y');
|
|
$data = [
|
|
'sidebar' => "menu persediaan",
|
|
'navChild' => "",
|
|
'persediaan' => $datPersediaan,
|
|
'tgl' => $tgl
|
|
];
|
|
$this->load->view('proses/PersediaanPendingView', $data);
|
|
}
|
|
|
|
public function kodePending() {
|
|
$kk = $this->Persediaan->getKodePending();
|
|
if (is_array($kk) || is_object($kk)) {
|
|
foreach ($kk as $row) {
|
|
if ($row['KODE'] == null) {
|
|
return "PEN/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 = "PEN/000000";
|
|
$data = substr($data, 0, $panjang) . $str;
|
|
return $data;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
public function savepending() {
|
|
$method = $this->input->post('method');
|
|
$id_pending = $this->input->post('id');
|
|
$id_barang = $this->input->post('id_barang');
|
|
$id_sales = $this->input->post('id_sales');
|
|
$qty_pending = $this->input->post('qty_pending');
|
|
$tgl_pending = $this->input->post('tgl_pending');
|
|
$durasi_pending = $this->input->post('durasi_pending');
|
|
$id_pemberi = $this->session->userdata('id_karyawan');
|
|
$kode_pending = $this->kodePending();
|
|
|
|
$kuantiti = $this->Persediaan->getKuantitiBarang($id_barang);
|
|
$id_kuantiti = $kuantiti[0]['ID_KUANTITI'];
|
|
$pcm_kuantiti = $kuantiti[0]['PCM_KUANTITI'];
|
|
$pending_kuantiti = $kuantiti[0]['PENDING_KUANTITI'];
|
|
|
|
if ($qty_pending>$pcm_kuantiti) {
|
|
$this->session->set_flashdata('flashkuantiti', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
if ($qty_pending==0 OR $qty_pending=="") {
|
|
$this->session->set_flashdata('flashzero', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
$temp = $pending_kuantiti+$qty_pending;
|
|
$pcm = $pcm_kuantiti-$qty_pending;
|
|
|
|
if ($durasi_pending=="") {
|
|
$durasi_pending = '7';
|
|
$durasi_pending = $this->Persediaan->addTempo($tgl_pending,$durasi_pending);
|
|
} else {
|
|
$durasi_pending = $this->Persediaan->addTempo($tgl_pending,$durasi_pending);
|
|
}
|
|
|
|
$input = [
|
|
'KODE_PENDING' => $kode_pending,
|
|
'BARANG_ID' => $id_barang,
|
|
'QTY_PENDING' => $qty_pending,
|
|
'TGL_PENDING' => $tgl_pending,
|
|
'DURASI_PENDING' => $durasi_pending,
|
|
'PEMBERI_ID' => $id_pemberi,
|
|
'SALES_ID' => $id_sales,
|
|
'STATUS_PENDING' => NULL
|
|
];
|
|
|
|
$action = $this->Persediaan->create('pending', $input);
|
|
|
|
$update = [
|
|
'PENDING_KUANTITI' => $temp,
|
|
'PCM_KUANTITI' => $pcm
|
|
];
|
|
|
|
$action = $this->Persediaan->update('kuantiti', $update, 'ID_KUANTITI', $id_kuantiti);
|
|
|
|
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 hapuspending() {
|
|
$method = $this->input->post('method');
|
|
$id_pending = $this->input->post('id');
|
|
|
|
$datPending = $this->Persediaan->getDataKuantitiPending($id_pending);
|
|
if ($datPending==FALSE) {
|
|
$this->session->set_flashdata('flashrefresh', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
$qty_pending = $datPending[0]['QTY_PENDING'];
|
|
$pcm_kuantiti = $datPending[0]['PCM_KUANTITI'];
|
|
$pending_kuantiti = $datPending[0]['PENDING_KUANTITI'];
|
|
$id_kuantiti = $datPending[0]['ID_KUANTITI'];
|
|
|
|
$temp = $pending_kuantiti-$qty_pending;
|
|
$pcm = $pcm_kuantiti+$qty_pending;
|
|
|
|
$update = [
|
|
'PENDING_KUANTITI' => $temp,
|
|
'PCM_KUANTITI' => $pcm
|
|
];
|
|
|
|
$action = $this->Persediaan->update('kuantiti', $update, 'ID_KUANTITI', $id_kuantiti);
|
|
|
|
$action = $this->Persediaan->delete('pending', $id_pending ,'ID_PENDING');
|
|
|
|
if ($action) {
|
|
$this->session->set_flashdata('flash', 'dihapus');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
} else {
|
|
$this->session->set_flashdata('flashgagal', 'dihapus');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
}
|
|
|
|
public function selesaigudang() {
|
|
$method = $this->input->post('method');
|
|
$id_pending = $this->input->post('id');
|
|
|
|
$datPending = $this->Persediaan->getDataKuantitiPending($id_pending);
|
|
if ($datPending==FALSE) {
|
|
$this->session->set_flashdata('flashrefresh', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
$qty_pending = $datPending[0]['QTY_PENDING'];
|
|
$pcm_kuantiti = $datPending[0]['PCM_KUANTITI'];
|
|
$pending_kuantiti = $datPending[0]['PENDING_KUANTITI'];
|
|
$id_kuantiti = $datPending[0]['ID_KUANTITI'];
|
|
|
|
$temp = $pending_kuantiti-$qty_pending;
|
|
$pcm = $pcm_kuantiti+$qty_pending;
|
|
|
|
$update = [
|
|
'PENDING_KUANTITI' => $temp,
|
|
'PCM_KUANTITI' => $pcm
|
|
];
|
|
|
|
$action = $this->Persediaan->update('kuantiti', $update, 'ID_KUANTITI', $id_kuantiti);
|
|
|
|
$update = [
|
|
'STATUS_PENDING' => '1'
|
|
];
|
|
|
|
$action = $this->Persediaan->update('pending', $update, 'ID_PENDING', $id_pending);
|
|
|
|
if ($action) {
|
|
$this->session->set_flashdata('flash', 'dikembalikan');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
} else {
|
|
$this->session->set_flashdata('flashgagal', 'dikembalikan');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
}
|
|
|
|
public function selesaisales() {
|
|
$method = $this->input->post('method');
|
|
$id_pending = $this->input->post('id');
|
|
|
|
$datPending = $this->Persediaan->getDataKuantitiPending($id_pending);
|
|
if ($datPending==FALSE) {
|
|
$this->session->set_flashdata('flashrefresh', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
$qty_pending = $datPending[0]['QTY_PENDING'];
|
|
$pcm_kuantiti = $datPending[0]['PCM_KUANTITI'];
|
|
$pending_kuantiti = $datPending[0]['PENDING_KUANTITI'];
|
|
$id_kuantiti = $datPending[0]['ID_KUANTITI'];
|
|
|
|
$temp = $pending_kuantiti-$qty_pending;
|
|
$pcm = $pcm_kuantiti+$qty_pending;
|
|
|
|
$update = [
|
|
'PENDING_KUANTITI' => $temp,
|
|
'PCM_KUANTITI' => $pcm
|
|
];
|
|
|
|
$action = $this->Persediaan->update('kuantiti', $update, 'ID_KUANTITI', $id_kuantiti);
|
|
|
|
$update = [
|
|
'STATUS_PENDING' => '0'
|
|
];
|
|
|
|
$action = $this->Persediaan->update('pending', $update, 'ID_PENDING', $id_pending);
|
|
|
|
if ($action) {
|
|
$this->session->set_flashdata('flash', 'dikembalikan');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
} else {
|
|
$this->session->set_flashdata('flashgagal', 'dikembalikan');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
}
|
|
|
|
//Fungsi Service Internal
|
|
public function dataServiceInternal() {
|
|
$datPersediaan = $this->Persediaan->getServiceInternal();
|
|
$datSn = $this->Persediaan->getDataSnSrvIn();
|
|
$datBarang = $this->Barang->getBarangNonSN();
|
|
$data = [
|
|
'sidebar' => "menu persediaan",
|
|
'navChild' => "",
|
|
'persediaan' => $datPersediaan,
|
|
'sn' => $datSn,
|
|
'barang' => $datBarang
|
|
];
|
|
$this->load->view('proses/PersediaanSrvIn', $data);
|
|
}
|
|
|
|
public function dataServiceView() {
|
|
$datPersediaan = $this->Persediaan->getServiceView();
|
|
$data = [
|
|
'sidebar' => "menu persediaan",
|
|
'navChild' => "",
|
|
'persediaan' => $datPersediaan,
|
|
];
|
|
$this->load->view('proses/PersediaanSrvView', $data);
|
|
}
|
|
|
|
public function kodeServiceInternal() {
|
|
$kk = $this->Persediaan->getKodeServiceInternal();
|
|
if (is_array($kk) || is_object($kk)) {
|
|
foreach ($kk as $row) {
|
|
if ($row['KODE'] == null) {
|
|
return "SVIN/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 = "SVIN/000000";
|
|
$data = substr($data, 0, $panjang) . $str;
|
|
return $data;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
public function savesrvin() {
|
|
$method = $this->input->post('method');
|
|
$id_service_in = $this->input->post('id');
|
|
$id_sn = $this->input->post('id_sn');
|
|
$id_barang = $this->input->post('id_barang');
|
|
$qty_service_in = $this->input->post('qty_service_in');
|
|
$ket_service_in = $this->input->post('ket_service_in');
|
|
$id_pemberi = $this->session->userdata('id_karyawan');
|
|
$kode_service_in = $this->kodeServiceInternal();
|
|
|
|
if ($qty_service_in=="" OR $qty_service_in==NULL) {
|
|
$qty_service_in=1;
|
|
}
|
|
|
|
if ($id_sn=="" OR $id_sn==0) {
|
|
$id_sn=NULL;
|
|
}
|
|
|
|
if ($id_barang=="" OR $id_barang==0) {
|
|
$kuantiti = $this->Persediaan->getKuantitiSn($id_sn);
|
|
$id_kuantiti = $kuantiti[0]['ID_KUANTITI'];
|
|
$pcm_kuantiti = $kuantiti[0]['PCM_KUANTITI'];
|
|
$service_kuantiti = $kuantiti[0]['SERVICE_KUANTITI'];
|
|
$id_barang = $kuantiti[0]['BARANG_ID'];
|
|
} else {
|
|
$kuantiti = $this->Persediaan->getKuantitiBarang($id_barang);
|
|
$id_kuantiti = $kuantiti[0]['ID_KUANTITI'];
|
|
$pcm_kuantiti = $kuantiti[0]['PCM_KUANTITI'];
|
|
$service_kuantiti = $kuantiti[0]['SERVICE_KUANTITI'];
|
|
}
|
|
|
|
if ($qty_service_in>$pcm_kuantiti) {
|
|
$this->session->set_flashdata('flashkuantiti', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
$input = [
|
|
'KODE_SERVICE_IN' => $kode_service_in,
|
|
'PEMBERI_ID' => $id_pemberi,
|
|
'SN_ID' => $id_sn,
|
|
'BARANG_ID' => $id_barang,
|
|
'QTY_SERVICE_IN' => $qty_service_in,
|
|
'KET_SERVICE_IN' => $ket_service_in
|
|
];
|
|
|
|
$action = $this->Persediaan->create('service_internal', $input);
|
|
|
|
if ($id_sn!=NULL) {
|
|
$service_internal = $this->Persediaan->getID_SERVIN();
|
|
$id_service_in = $service_internal[0]['ID_SERVICE_IN'];
|
|
$update = [
|
|
'GUDANG_ID' => '6',
|
|
'SERVICE_ID' => $id_service_in,
|
|
'STATUS_SN' => '2'
|
|
];
|
|
$action = $this->Persediaan->update('sn', $update, 'ID_SN', $id_sn);
|
|
}
|
|
|
|
$temp = $service_kuantiti+$qty_service_in;
|
|
$pcm = $pcm_kuantiti-$qty_service_in;
|
|
|
|
$update = [
|
|
'SERVICE_KUANTITI' => $temp,
|
|
'PCM_KUANTITI' => $pcm
|
|
];
|
|
|
|
$action = $this->Persediaan->update('kuantiti', $update, 'ID_KUANTITI', $id_kuantiti);
|
|
|
|
|
|
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 hapussrvin() {
|
|
$method = $this->input->post('method');
|
|
$id_service_in = $this->input->post('id');
|
|
|
|
$datService = $this->Persediaan->getServiceInternal($id_service_in);
|
|
if ($datService==FALSE) {
|
|
$this->session->set_flashdata('flashrefresh', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
$qty_service_in = $datService[0]['QTY_SERVICE_IN'];
|
|
$pcm_kuantiti = $datService[0]['PCM_KUANTITI'];
|
|
$service_kuantiti = $datService[0]['SERVICE_KUANTITI'];
|
|
$id_kuantiti = $datService[0]['ID_KUANTITI'];
|
|
$id_sn = $datService[0]['SN_ID'];
|
|
|
|
$temp = $service_kuantiti-$qty_service_in;
|
|
$pcm = $pcm_kuantiti+$qty_service_in;
|
|
|
|
$update = [
|
|
'SERVICE_KUANTITI' => $temp,
|
|
'PCM_KUANTITI' => $pcm
|
|
];
|
|
$action = $this->Persediaan->update('kuantiti', $update, 'ID_KUANTITI', $id_kuantiti);
|
|
|
|
if ($id_sn!=NULL) {
|
|
$update = [
|
|
'SERVICE_ID'=> NULL,
|
|
'GUDANG_ID' => '1',
|
|
'STATUS_SN' => NULL
|
|
];
|
|
$action = $this->Persediaan->update('sn', $update, 'ID_SN', $id_sn);
|
|
}
|
|
|
|
$action = $this->Persediaan->delete('service_internal', $id_service_in ,'ID_SERVICE_IN');
|
|
|
|
if ($action) {
|
|
$this->session->set_flashdata('flash', 'dihapus');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
} else {
|
|
$this->session->set_flashdata('flashgagal', 'dihapus');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
}
|
|
|
|
//Controller Persediaan Sewa
|
|
public function dataSewa_Sales_S1() {
|
|
$datPersediaan = $this->Persediaan->getData_Sewa_Null();
|
|
$datPelanggan = $this->Pelanggan->getData_Pelanggan();
|
|
$tgl = date('m/d/Y');
|
|
$data = [
|
|
'sidebar' => "menu persediaan",
|
|
'navChild' => "",
|
|
'persediaan' => $datPersediaan,
|
|
'pelanggan' => $datPelanggan,
|
|
'tgl' => $tgl
|
|
];
|
|
$this->load->view('proses/PersediaanSewa_Sales_S1', $data);
|
|
}
|
|
|
|
public function kodeSewa() {
|
|
$kk = $this->Persediaan->getKodeSewa();
|
|
if (is_array($kk) || is_object($kk)) {
|
|
foreach ($kk as $row) {
|
|
if ($row['KODE'] == null) {
|
|
return "SW/000001";
|
|
} else {
|
|
$str = (string) $row['KODE'];
|
|
$panjang = 6;
|
|
$data = substr($str, 3, $panjang);
|
|
|
|
$ko = (int) $data + 1;
|
|
$str = (string) $ko;
|
|
|
|
$panjang = 9 - strlen($str);
|
|
$data = "SW/000000";
|
|
$data = substr($data, 0, $panjang) . $str;
|
|
return $data;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
public function simpansewa_SS1() {
|
|
$method = $this->input->post('method');
|
|
$id_sewa = $this->input->post('id');
|
|
$id_pelanggan = $this->input->post('id_pelanggan');
|
|
$tgl_sewa = $this->input->post('tgl_sewa');
|
|
$durasi_sewa = $this->input->post('durasi_sewa');
|
|
$id_sales = $this->session->userdata('id_karyawan');
|
|
$kode_sewa = $this->kodeSewa();
|
|
|
|
if ($durasi_sewa<=0) {
|
|
$this->session->set_flashdata('not_zero_negative', 'error');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
$input = [
|
|
'SALES_ID' => $id_sales,
|
|
'PELANGGAN_ID' => $id_pelanggan,
|
|
'KODE_SEWA' => $kode_sewa,
|
|
'TGL_SEWA' => $tgl_sewa,
|
|
'DURASI_SEWA' => $durasi_sewa
|
|
];
|
|
$action = $this->Persediaan->create('sewa', $input);
|
|
|
|
if ($action) {
|
|
$this->session->set_flashdata('success', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
} else {
|
|
$this->session->set_flashdata('failed', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
}
|
|
|
|
public function hapussewa_SS1() {
|
|
$id = $this->input->post('id');
|
|
|
|
$datSewa = $this->Persediaan->getData_Sewa_Null($id);
|
|
if ($datSewa==FALSE) {
|
|
$this->session->set_flashdata('latest', 'error');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
$datDs = $this->Persediaan->checkData_DS($id);
|
|
foreach ($datDs as $key) {
|
|
if ($key['SEWA_ID']!=NULL) {
|
|
$this->session->set_flashdata('latest', 'error');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
}
|
|
|
|
$action = $this->Persediaan->delete('sewa',$id,'ID_SEWA');
|
|
|
|
if ($action) {
|
|
$this->session->set_flashdata('success', 'dihapus');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
} else {
|
|
$this->session->set_flashdata('failed', 'dihapus');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
}
|
|
|
|
public function tambahBarangSewa($id) {
|
|
$persediaan = $this->Persediaan->getSewaDaftarSewa($id);
|
|
$datBarang = $this->Barang->getBarangSewa();
|
|
$datSewa = $this->Persediaan->getData_Sewa_Null($id);
|
|
$kode_sewa = $datSewa[0]['KODE_SEWA'];
|
|
|
|
$data = [
|
|
'sidebar' => "menu persediaan",
|
|
'navChild' => "",
|
|
'persediaan' => $persediaan,
|
|
'id_sewa' => $id,
|
|
'barang' => $datBarang,
|
|
'kode_sewa' => $kode_sewa
|
|
];
|
|
|
|
$this->load->view('proses/PersediaanDaftarSewa', $data);
|
|
}
|
|
|
|
public function savebarangsewa() {
|
|
$method = $this->input->post('method');
|
|
$id_ds = $this->input->post('id');
|
|
$id_barang = $this->input->post('id_barang');
|
|
$id_sewa = $this->input->post('id_sewa');
|
|
$qty_ds = $this->input->post('qty_ds');
|
|
$ket_ds = $this->input->post('ket_ds');
|
|
|
|
$kuantiti = $this->Persediaan->getKuantitiBarang($id_barang);
|
|
$id_kuantiti = $kuantiti[0]['ID_KUANTITI'];
|
|
$pcm_kuantiti = $kuantiti[0]['PCM_KUANTITI'];
|
|
$sewa_kuantiti = $kuantiti[0]['SEWA_KUANTITI'];
|
|
$total = $pcm_kuantiti+$sewa_kuantiti;
|
|
|
|
if ($qty_ds>$total) {
|
|
$this->session->set_flashdata('flashkuantiti', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
if ($qty_ds<=0 OR $qty_ds=="") {
|
|
$this->session->set_flashdata('flashzero', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
$input = [
|
|
'SEWA_ID' => $id_sewa,
|
|
'BARANG_ID' => $id_barang,
|
|
'QTY_DS' => $qty_ds,
|
|
'KET_DS' => $ket_ds
|
|
];
|
|
$action = $this->Persediaan->create('daftar_sewa', $input);
|
|
|
|
if ($qty_ds>$sewa_kuantiti) {
|
|
$sewa = 0;
|
|
$pcm = $pcm_kuantiti+$sewa_kuantiti-$qty_ds;
|
|
} else if ($qty_ds<=$sewa_kuantiti) {
|
|
$sewa = $sewa_kuantiti-$qty_ds;
|
|
$pcm = $pcm_kuantiti;
|
|
}
|
|
|
|
$update = [
|
|
'SEWA_KUANTITI' => $sewa,
|
|
'PCM_KUANTITI' => $pcm
|
|
];
|
|
|
|
$action = $this->Persediaan->update('kuantiti', $update, 'ID_KUANTITI', $id_kuantiti);
|
|
|
|
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 hapusbarangsewa() {
|
|
$method = $this->input->post('method');
|
|
$id_ds = $this->input->post('id');
|
|
|
|
$sn = $this->Persediaan->checkSnSewa($id_ds);
|
|
foreach ($sn as $key) {
|
|
if ($key['DS_ID']!=NULL) {
|
|
$this->session->set_flashdata('flashsn', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
}
|
|
|
|
$datDS = $this->Persediaan->getSewaDs($id_ds);
|
|
if ($datDS==FALSE) {
|
|
$this->session->set_flashdata('flashrefresh', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
$id_barang = $datDS[0]['BARANG_ID'];
|
|
$qty_ds = $datDS[0]['QTY_DS'];
|
|
$pcm_kuantiti = $datDS[0]['PCM_KUANTITI'];
|
|
$sewa_kuantiti = $datDS[0]['SEWA_KUANTITI'];
|
|
$id_kuantiti = $datDS[0]['ID_KUANTITI'];
|
|
$qtyReal = $this->Persediaan->getQtySnBekasSewa($id_barang);
|
|
|
|
if ($qtyReal<=0) {
|
|
$sewa = $sewa_kuantiti;
|
|
$pcm = $pcm_kuantiti+$qty_ds;
|
|
} else if ($qtyReal>0) {
|
|
$sewa = $sewa_kuantiti+$qtyReal;
|
|
$pcm = $pcm_kuantiti+$s;
|
|
}
|
|
|
|
|
|
$sewa = $sewa_kuantiti-$qty_ds;
|
|
$pcm = $pcm_kuantiti+$qty_ds;
|
|
|
|
$update = [
|
|
'SEWA_KUANTITI' => $sewa,
|
|
'PCM_KUANTITI' => $pcm
|
|
];
|
|
|
|
$action = $this->Persediaan->update('kuantiti', $update, 'ID_KUANTITI', $id_kuantiti);
|
|
|
|
$action = $this->Persediaan->delete('daftar_sewa', $id_ds ,'ID_DS');
|
|
|
|
if ($action) {
|
|
$this->session->set_flashdata('flash', 'dihapus');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
} else {
|
|
$this->session->set_flashdata('flashgagal', 'dihapus');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
}
|
|
|
|
public function kuncisales() {
|
|
$id = $this->input->post('id');
|
|
|
|
$datSewa = $this->Persediaan->checkSewaStatusNull($id);
|
|
if ($datSewa==FALSE) {
|
|
$this->session->set_flashdata('flashrefresh', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
$datDs = $this->Persediaan->checkData_DS($id);
|
|
if ($datDs==FALSE) {
|
|
$this->session->set_flashdata('flashrefresh', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
$update = [
|
|
'STATUS_SEWA' => '2'
|
|
];
|
|
$action = $this->Persediaan->update('sewa', $update, 'ID_SEWA', $id);
|
|
|
|
$this->session->set_flashdata('flash', 'diproses');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
public function dataSewaProses() {
|
|
$datPersediaan = $this->Persediaan->getDataProsesKuantitiSewa();
|
|
$datPelanggan = $this->Pelanggan->getData_Pelanggan();
|
|
$tgl = date('m/d/Y');
|
|
$data = [
|
|
'sidebar' => "menu persediaan",
|
|
'navChild' => "",
|
|
'persediaan' => $datPersediaan,
|
|
'pelanggan' => $datPelanggan,
|
|
'tgl' => $tgl
|
|
];
|
|
$this->load->view('proses/PersediaanSewaProses', $data);
|
|
}
|
|
|
|
public function prosesSewa($id) {
|
|
$persediaan = $this->Persediaan->getSewaDaftarSewa($id);
|
|
$datSewa = $this->Persediaan->getDataProsesKuantitiSewa($id);
|
|
$kode_sewa = $datSewa[0]['KODE_SEWA'];
|
|
$data = [
|
|
'sidebar' => "menu persediaan",
|
|
'navChild' => "",
|
|
'persediaan' => $persediaan,
|
|
'id_sewa' => $id,
|
|
'kode_sewa' => $kode_sewa
|
|
];
|
|
|
|
$this->load->view('proses/PersediaanSnSewaProses', $data);
|
|
}
|
|
|
|
public function sewaSn($id) {
|
|
$persediaan = $this->Persediaan->getDataSewaSn($id);
|
|
$qty = $this->Persediaan->getMaxQtySewa($id);
|
|
$id_barang = $persediaan[0]['ID_BARANG'];
|
|
$datSn = $this->Persediaan->getSnBarangSewa($id_barang);
|
|
|
|
$data = [
|
|
'sidebar' => "menu persediaan",
|
|
'navChild' => "",
|
|
'persediaan' => $persediaan,
|
|
'id_ds' => $id,
|
|
'id_barang' => $id_barang,
|
|
'qty_ds' => $persediaan[0]['QTY_DS'],
|
|
'qty' => $qty,
|
|
'sn' => $datSn
|
|
];
|
|
|
|
$this->load->view('proses/PersediaanSewaSn', $data);
|
|
}
|
|
|
|
public function datasnsewa() {
|
|
$id = $this->input->post('id');
|
|
$data = $this->Persediaan->getDataSnDs($id);
|
|
$this->output_json(['value' => 1, 'total' => sizeof($data), 'data' => $data]);
|
|
}
|
|
|
|
public function jumlahdatasnsewa() {
|
|
$id = $this->input->post('id');
|
|
$data = $this->Persediaan->getDataSnDs($id);
|
|
$this->output_json(['value' => 1, 'jumlah_data' => sizeof($data)]);
|
|
}
|
|
|
|
public function snsewa() {
|
|
$id_ds = $this->input->post('id_ds');
|
|
$id_barang = $this->input->post('id_barang');
|
|
$nama_sn = $this->input->post('nama_sn');
|
|
$nama_sn = strtoupper($nama_sn);
|
|
|
|
$dataSn = $this->Persediaan->getSnBarangSewa($id_barang);
|
|
foreach ($dataSn as $key) {
|
|
if ($nama_sn==$key['NAMA_SN']) {
|
|
$id_sn = $key['ID_SN'];
|
|
$data = [
|
|
'STATUS_SN' => '2',
|
|
'DS_ID' => $id_ds,
|
|
'GUDANG_ID' => '7'
|
|
];
|
|
$action = $this->Persediaan->update('sn', $data, 'ID_SN', $id_sn);
|
|
$input = [
|
|
'SN_ID' => $id_sn,
|
|
'DS_ID' => $id_ds
|
|
];
|
|
$action = $this->Persediaan->create('daftar_snsewa', $input);
|
|
}
|
|
}
|
|
|
|
$sewa = $this->Persediaan->getSewaDs($id_ds);
|
|
$qty_ds = $sewa[0]['QTY_DS'];
|
|
|
|
$qtyReal = $this->Persediaan->getMaxQtySewa($id_ds);
|
|
if ($qtyReal==$qty_ds){
|
|
$this->output_json(['value' => 2, 'nama_sn' => $nama_sn]);
|
|
$this->session->set_flashdata('flashkunci', 'dikunci');
|
|
} else if ($action){
|
|
$this->output_json(['value' => 1, 'nama_sn' => $nama_sn]);
|
|
} else {
|
|
$this->output_json(['value' => 0, 'nama_sn' => $nama_sn]);
|
|
$this->session->set_flashdata('flashgagal', 'dikunci');
|
|
}
|
|
}
|
|
|
|
public function resetsnsewa() {
|
|
$id = $this->input->post('id_sn');
|
|
$datSewa = $this->Persediaan->getDataSnSewa($id);
|
|
$id_ds = $datSewa[0]['DS_ID'];
|
|
$qty_ds = $datSewa[0]['QTY_DS'];
|
|
|
|
$data = [
|
|
'STATUS_SN' => NULL,
|
|
'DS_ID' => NULL,
|
|
'GUDANG_ID' => '1'
|
|
];
|
|
$action = $this->Persediaan->update('sn', $data, 'ID_SN', $id);
|
|
|
|
$action = $this->Persediaan->delete('daftar_snsewa', $id ,'SN_ID');
|
|
|
|
$qtyReal = $this->Persediaan->getMaxQtySewa($id_ds);
|
|
if ($qtyReal+1==$qty_ds){
|
|
$this->output_json(['value' => 2, 'message' => 'Berhasil', 'dt' => $action]);
|
|
$this->session->set_flashdata('flashkurang', 'dikunci');
|
|
} else if ($action) {
|
|
$this->output_json(['value' => 1, 'message' => 'Berhasil', 'dt' => $action]);
|
|
} else {
|
|
$this->output_json(['value' => 0, 'message' => "gagal", 'dt' => $action]);
|
|
}
|
|
}
|
|
|
|
public function kodeSJSewa() {
|
|
$kk = $this->Persediaan->getKodeSJSewa();
|
|
$tgl = date('mdy');
|
|
if (is_array($kk) || is_object($kk)) {
|
|
foreach ($kk as $row) {
|
|
if ($row['KODE'] == null) {
|
|
return "SJ/SW/$tgl/001";
|
|
} else {
|
|
$str = (string) $row['KODE'];
|
|
$tgl_lama = substr($str, 6, -4);
|
|
if ($tgl_lama!=$tgl) {
|
|
return "SJ/SW/$tgl/001";
|
|
} else {
|
|
$panjang = 3;
|
|
$data = substr($str, 13, $panjang);
|
|
$ko = (int) $data + 1;
|
|
$str = (string) $ko;
|
|
$panjang = 16 - strlen($str);
|
|
$data = "SJ/SW/$tgl/000";
|
|
$data = substr($data, 0, $panjang) . $str;
|
|
return $data;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
public function kuncisewa() {
|
|
$id = $this->input->post('id');
|
|
|
|
$datSewa = $this->Persediaan->checkSewaStatus2($id);
|
|
if ($datSewa==FALSE) {
|
|
$this->session->set_flashdata('flashrefresh', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
$datDs = $this->Persediaan->checkData_DS($id);
|
|
if ($datDs==FALSE) {
|
|
$this->session->set_flashdata('flashrefresh', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
foreach ($datDs as $key) {
|
|
$max = $this->Persediaan->getMaxQtySewa($key['ID_DS']);
|
|
if ($max!=$key['QTY_DS']) {
|
|
$this->session->set_flashdata('flashsn', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
}
|
|
|
|
$sj_sewa = $this->kodeSJSewa();
|
|
$update = [
|
|
'STATUS_SEWA' => '0',
|
|
'STATUS_PRINTSJ'=> '0',
|
|
'SJ_SEWA' => $sj_sewa
|
|
];
|
|
$action = $this->Persediaan->update('sewa', $update, 'ID_SEWA', $id);
|
|
$this->session->set_flashdata('flash', 'diproses');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
public function dataSewaLaku() {
|
|
$datPersediaan = $this->Persediaan->getDataSewaLaku();
|
|
$data = [
|
|
'sidebar' => "menu persediaan",
|
|
'navChild' => "",
|
|
'persediaan' => $datPersediaan
|
|
];
|
|
$this->load->view('proses/PersediaanSewaLaku', $data);
|
|
}
|
|
|
|
public function prosesSnSewaLaku($id) {
|
|
$persediaan = $this->Persediaan->getDaftarSnSewaLaku($id);
|
|
$datSn = $this->Barang->getSnSewa($id);
|
|
$datCorp = $this->Corp->getDataCorp();
|
|
$datSales = $this->Pelanggan->getDataSales();
|
|
$tgl = date('m/d/Y');
|
|
|
|
$limit = $this->Persediaan->getSisaLimit($id);
|
|
$limitAktif = '0';
|
|
foreach ($limit as $key) {
|
|
$piutang = $key['NOMINAL_PDA'];
|
|
$limitAktif = $limitAktif+$piutang;
|
|
}
|
|
|
|
$cicilanAktif = '0';
|
|
foreach ($limit as $key) {
|
|
$cicilan = $this->Persediaan->getCicilanPiutang($key['ID_PDA']);
|
|
$nominal_dpda = '0';
|
|
foreach ($cicilan as $key) {
|
|
$nominal_dpda = $nominal_dpda+$key['NOMINAL_DPDA'];
|
|
}
|
|
$cicilanAktif = $cicilanAktif+$nominal_dpda;
|
|
}
|
|
|
|
$datPelanggan = $this->Persediaan->getDataPelanggan($id);
|
|
$limit_pelanggan = $datPelanggan[0]['LIMIT_PELANGGAN'];
|
|
$limit = $limit_pelanggan-$limitAktif+$cicilanAktif;
|
|
|
|
if ($persediaan==FALSE) {
|
|
$nominal_pda='0';
|
|
} else {
|
|
$datDj = $this->Persediaan->getDataDJ($persediaan[0]['PENJUALAN_ID']);
|
|
$nominal_pda='0';
|
|
foreach ($datDj as $key) {
|
|
$piutang = $key['HARGA_DJ']*$key['QTY_DJ'];
|
|
$nominal_pda = $nominal_pda+$piutang;
|
|
}
|
|
}
|
|
|
|
if ($persediaan==FALSE) {
|
|
$id_dj=NULL;
|
|
} else {
|
|
$id_dj = $persediaan[0]['ID_DJ'];
|
|
}
|
|
|
|
if ($persediaan==FALSE) {
|
|
$id_penjualan=NULL;
|
|
} else {
|
|
$id_penjualan = $persediaan[0]['PENJUALAN_ID'];
|
|
}
|
|
|
|
$data = [
|
|
'sidebar' => "menu persediaan",
|
|
'navChild' => "",
|
|
'persediaan' => $persediaan,
|
|
'id_pelanggan' => $id,
|
|
'id_dj' => $id_dj,
|
|
'id_penjualan' => $id_penjualan,
|
|
'sn' => $datSn,
|
|
'corp' => $datCorp,
|
|
'sales' => $datSales,
|
|
'tgl' => $tgl,
|
|
'limit' => $limit,
|
|
'nominal_pda' => $nominal_pda
|
|
];
|
|
|
|
$this->load->view('proses/PersediaanSnSewaLaku', $data);
|
|
}
|
|
|
|
public function savesewalaku() {
|
|
$method = $this->input->post('method');
|
|
$id_penjualan = $this->input->post('id');
|
|
$id_sales = $this->input->post('id_sales');
|
|
$id_corp = $this->input->post('id_corp');
|
|
$id_pelanggan = $this->input->post('id_pelanggan');
|
|
$tgl_penjualan = $this->input->post('tgl_penjualan');
|
|
$tempo_penjualan = $this->input->post('tempo_penjualan');
|
|
$po_penjualan = $this->input->post('po_penjualan');
|
|
$radio_ppn = $this->input->post('radio_ppn');
|
|
$radio_gp = $this->input->post('radio_gp');
|
|
$snlaku = $this->input->post('snlaku');
|
|
$kode_penjualan = $this->kodePenjualan();
|
|
|
|
foreach ($snlaku as $key) {
|
|
$datSn = $this->Persediaan->getDataSn($key);
|
|
if ($datSn[0]['DJ_ID']!=NULL) {
|
|
$this->session->set_flashdata('flashrefresh', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
if ($datSn[0]['DS_ID']==NULL) {
|
|
$this->session->set_flashdata('flashrefresh', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
}
|
|
|
|
if ($id_corp==3 AND $radio_ppn!=0) {
|
|
$this->session->set_flashdata('flashppn', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
if ($id_corp!=3 AND $radio_ppn==0) {
|
|
$this->session->set_flashdata('flashppn', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
$po_penjualan = strtoupper($po_penjualan);
|
|
if ($tempo_penjualan=="") {
|
|
$tempo_penjualan = '0';
|
|
$tempo_penjualan = $this->Persediaan->addTempo($tgl_penjualan,$tempo_penjualan);
|
|
} else {
|
|
$tempo_penjualan = $this->Persediaan->addTempo($tgl_penjualan,$tempo_penjualan);
|
|
}
|
|
|
|
$input = [
|
|
'KODE_PENJUALAN' => $kode_penjualan,
|
|
'CORP_ID' => $id_corp,
|
|
'SALES_ID' => $id_sales,
|
|
'PELANGGAN_ID' => $id_pelanggan,
|
|
'PO_PENJUALAN' => $po_penjualan,
|
|
'TGL_PENJUALAN' => $tgl_penjualan,
|
|
'TEMPO_PENJUALAN' => $tempo_penjualan,
|
|
'PPN_PENJUALAN' => $radio_ppn,
|
|
'GP_PENJUALAN' => $radio_gp,
|
|
'STATUS_PENJUALAN' => '2'
|
|
];
|
|
$action = $this->Persediaan->create('penjualan', $input);
|
|
|
|
$id_penjualan = $this->Persediaan->getID_PenjualanMax();
|
|
$id_penjualan = $id_penjualan[0]['ID_PENJUALAN'];
|
|
|
|
foreach ($snlaku as $key) {
|
|
$id_snsewa = $this->Persediaan->getID_SewaSNIDMax($key);
|
|
$id_snsewa = $id_snsewa[0]['ID_SNSEWA'];
|
|
$update = [
|
|
'STATUS_SNSEWA' => '0',
|
|
'PENJUALAN_ID' => $id_penjualan
|
|
];
|
|
$action = $this->Persediaan->update('daftar_snsewa', $update, 'ID_SNSEWA', $id_snsewa);
|
|
}
|
|
|
|
$datSn = $this->Persediaan->getDataSnLakuSewa($id_penjualan);
|
|
foreach ($datSn as $key) {
|
|
$qty_dj = $this->Persediaan->getQtySnLakuSewa($id_penjualan,$key['BARANG_ID']);
|
|
$input = [
|
|
'PENJUALAN_ID' => $id_penjualan,
|
|
'BARANG_ID' => $key['BARANG_ID'],
|
|
'QTY_DJ' => $qty_dj,
|
|
'JENIS_DJ' => '0'
|
|
];
|
|
$action = $this->Persediaan->create('daftar_jual', $input);
|
|
$id_dj = $this->Persediaan->getID_DJMax();
|
|
$id_dj = $id_dj[0]['ID_DJ'];
|
|
foreach ($snlaku as $row) {
|
|
$update = [
|
|
'STATUS_SN' => '0',
|
|
'DJ_ID' => $id_dj,
|
|
'DS_ID' => NULL,
|
|
'GUDANG_ID' => '1'
|
|
];
|
|
$action = $this->Persediaan->update('sn', $update, 'ID_SN', $row);
|
|
$datKuantiti = $this->Persediaan->getKuantitiBarang($key['BARANG_ID']);
|
|
$proses_kuantiti = $datKuantiti[0]['PROSES_KUANTITI'];
|
|
$sewa_kuantiti = $datKuantiti[0]['SEWA_KUANTITI'];
|
|
$proses = $proses_kuantiti+1;
|
|
$sewa = $sewa_kuantiti-1;
|
|
$update = [
|
|
'PROSES_KUANTITI' => $proses,
|
|
'SEWA_KUANTITI' => $sewa
|
|
];
|
|
$action = $this->Persediaan->update('kuantiti', $update, 'BARANG_ID', $key['BARANG_ID']);
|
|
}
|
|
}
|
|
|
|
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 hapussewalaku() {
|
|
$method = $this->input->post('method');
|
|
$id_penjualan = $this->input->post('id');
|
|
|
|
$datDj = $this->Persediaan->getDataDJ($id_penjualan);
|
|
foreach ($datDj as $key) {
|
|
$daftar_jual = $this->Persediaan->getDataDaftarJual($key['ID_DJ']);
|
|
$id_barang = $daftar_jual[0]['BARANG_ID'];
|
|
$qty_dj = $daftar_jual[0]['QTY_DJ'];
|
|
|
|
$datKuantiti = $this->Persediaan->getKuantitiBarang($id_barang);
|
|
$id_kuantiti = $datKuantiti[0]['ID_KUANTITI'];
|
|
$proses_kuantiti = $datKuantiti[0]['PROSES_KUANTITI'];
|
|
$sewa_kuantiti = $datKuantiti[0]['SEWA_KUANTITI'];
|
|
|
|
$sewa = $sewa_kuantiti+$qty_dj;
|
|
$proses = $proses_kuantiti-$qty_dj;
|
|
|
|
$update = [
|
|
'SEWA_KUANTITI' => $sewa,
|
|
'PROSES_KUANTITI' => $proses
|
|
];
|
|
$action = $this->Persediaan->update('kuantiti', $update, 'ID_KUANTITI', $id_kuantiti);
|
|
$action = $this->Persediaan->delete('daftar_jual', $key['ID_DJ'] ,'ID_DJ');
|
|
}
|
|
|
|
$datSewa = $this->Persediaan->getDataDaftarSnSewa($id_penjualan);
|
|
foreach ($datSewa as $key) {
|
|
$update = [
|
|
'STATUS_SN' => '2',
|
|
'DS_ID' => $key['DS_ID'],
|
|
'GUDANG_ID' => '7',
|
|
'DJ_ID' => NULL
|
|
];
|
|
$action = $this->Persediaan->update('sn', $update, 'ID_SN', $key['SN_ID']);
|
|
}
|
|
|
|
$update = [
|
|
'PENJUALAN_ID' => NULL,
|
|
'STATUS_SNSEWA' => NULL
|
|
];
|
|
$action = $this->Persediaan->update('daftar_snsewa', $update, 'PENJUALAN_ID', $id_penjualan);
|
|
|
|
$action = $this->Persediaan->delete('penjualan', $id_penjualan ,'ID_PENJUALAN');
|
|
|
|
if ($action) {
|
|
$this->session->set_flashdata('flash', 'dihapus');
|
|
redirect('ManagePersediaanQTY/dataSewaLaku');
|
|
} else {
|
|
$this->session->set_flashdata('flashgagal', 'dihapus');
|
|
redirect('ManagePersediaanQTY/dataSewaLaku');
|
|
}
|
|
|
|
}
|
|
|
|
public function prosessewalaku() {
|
|
$method = $this->input->post('method');
|
|
$id_penjualan = $this->input->post('id');
|
|
$tgl = date('m/d/Y');
|
|
|
|
$datDj = $this->Persediaan->getDataDJ($id_penjualan);
|
|
$tempo_penjualan = $datDj[0]['TEMPO_PENJUALAN'];
|
|
$id_pelanggan = $datDj[0]['PELANGGAN_ID'];
|
|
|
|
foreach ($datDj as $key) {
|
|
if ($key['HARGA_DJ']==NULL) {
|
|
$this->session->set_flashdata('flashhargakosong', 'diproses');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
}
|
|
|
|
$nominal_pda='0';
|
|
foreach ($datDj as $key) {
|
|
$piutang = $key['HARGA_DJ']*$key['QTY_DJ'];
|
|
$nominal_pda = $nominal_pda+$piutang;
|
|
}
|
|
|
|
$kode_pda = $this->kodePiutangDagang();
|
|
|
|
$input = [
|
|
'KODE_PDA' => $kode_pda,
|
|
'PENJUALAN_ID' => $id_penjualan,
|
|
'NOMINAL_PDA' => $nominal_pda,
|
|
'TGL_PDA' => $tgl,
|
|
'TEMPO_PDA' => $tempo_penjualan
|
|
];
|
|
$action = $this->Persediaan->create('piutang_dagang', $input);
|
|
|
|
$id_setdata = $this->Neraca->getSetdata_ID();
|
|
$id_setdata = $id_setdata[0]['SETDATA_ID'];
|
|
|
|
$neraca = $this->Neraca->getDataNilaiNeraca($id_setdata,3);
|
|
$id_neraca = $neraca[0]['ID_NERACA'];
|
|
$nilai_neraca = $neraca[0]['NILAI_NERACA'];
|
|
$nilai = $nilai_neraca+$nominal_pda;
|
|
$update = [
|
|
'NILAI_NERACA' => $nilai
|
|
];
|
|
$action = $this->Neraca->update('neraca', $update, 'ID_NERACA', $id_neraca);
|
|
|
|
$neraca = $this->Neraca->getDataNilaiNeraca($id_setdata,23);
|
|
$id_neraca = $neraca[0]['ID_NERACA'];
|
|
$nilai_neraca = $neraca[0]['NILAI_NERACA'];
|
|
$nilai = $nilai_neraca+$nominal_pda;
|
|
$update = [
|
|
'NILAI_NERACA' => $nilai
|
|
];
|
|
$action = $this->Neraca->update('neraca', $update, 'ID_NERACA', $id_neraca);
|
|
|
|
foreach ($datDj as $key) {
|
|
$sn = $this->Persediaan->getDataSnDj($key['ID_DJ']);
|
|
foreach ($sn as $dat) {
|
|
$kode_stsn = $this->kodeStockSn();
|
|
$input = [
|
|
'KODE_STSN' => $kode_stsn,
|
|
'KODE_BUKTI' => $key['KODE_PENJUALAN'],
|
|
'TGL_STSN' => $key['TGL_PENJUALAN'],
|
|
'BARANG_ID' => $key['BARANG_ID'],
|
|
'PELANGGAN_ID' => $key['PELANGGAN_ID'],
|
|
'SN_ID' => $dat['ID_SN']
|
|
];
|
|
$action = $this->Persediaan->create('stock_sn', $input);
|
|
$update = [
|
|
'STATUS_SN' => '1'
|
|
];
|
|
$action = $this->Persediaan->update('sn', $update, 'ID_SN', $dat['ID_SN']);
|
|
}
|
|
|
|
$datKuantiti = $this->Persediaan->getKuantitiBarang($key['BARANG_ID']);
|
|
$id_kuantiti = $datKuantiti[0]['ID_KUANTITI'];
|
|
$global_kuantiti = $datKuantiti[0]['GLOBAL_KUANTITI'];
|
|
$proses_kuantiti = $datKuantiti[0]['PROSES_KUANTITI'];
|
|
$global = $global_kuantiti-$key['QTY_DJ'];
|
|
$proses = $proses_kuantiti-$key['QTY_DJ'];
|
|
$kode_stq = $this->kodeStockKuantiti();
|
|
$input = [
|
|
'KODE_STQ' => $kode_stq,
|
|
'KODE_BUKTI' => $key['KODE_PENJUALAN'],
|
|
'TGL_STQ' => $key['TGL_PENJUALAN'],
|
|
'BARANG_ID' => $key['BARANG_ID'],
|
|
'QTY_BEFORE' => $global_kuantiti,
|
|
'QTY_IN' => '0',
|
|
'QTY_OUT' => $key['QTY_DJ'],
|
|
'QTY_AFTER' => $global
|
|
];
|
|
$action = $this->Persediaan->create('stock_kuantiti', $input);
|
|
$update = [
|
|
'GLOBAL_KUANTITI' => $global,
|
|
'PROSES_KUANTITI' => $proses,
|
|
];
|
|
$action = $this->Persediaan->update('kuantiti', $update, 'ID_KUANTITI', $id_kuantiti);
|
|
}
|
|
|
|
$datSewa = $this->Persediaan->checkSewa($id_pelanggan);
|
|
foreach ($datSewa as $key) {
|
|
$datDS = $this->Persediaan->checkData_DS($key['ID_SEWA']);
|
|
$qtyDs = count($datDS);
|
|
$nilaiKunci = '0';
|
|
foreach ($datDS as $row) {
|
|
$qty_ds = $row['QTY_DS'];
|
|
$qty_real = $this->Persediaan->getQtySnSewa($row['ID_DS']);
|
|
if ($qty_ds==$qty_real) {
|
|
$nilaiKunci = $nilaiKunci+1;
|
|
}
|
|
}
|
|
if ($nilaiKunci==$qtyDs) {
|
|
$datSewa = $this->Persediaan->getDataSewaLaku($key['ID_SEWA']);
|
|
$status_sewa = $datSewa[0]['STATUS_SEWA'];
|
|
if ($status_sewa=="0") {
|
|
$update = [
|
|
'STATUS_SEWA' => '1'
|
|
];
|
|
$action = $this->Persediaan->update('sewa', $update, 'ID_SEWA', $key['ID_SEWA']);
|
|
}
|
|
}
|
|
}
|
|
|
|
$sj_penjualan = $this->kodeSJPenjualan($id_penjualan);
|
|
$inv_penjualan = $this->kodeINVPenjualan($id_penjualan);
|
|
|
|
$update = [
|
|
'STATUS_PENJUALAN' => '1',
|
|
'SJ_PENJUALAN' => $sj_penjualan,
|
|
'INV_PENJUALAN' => $inv_penjualan,
|
|
'STATUS_PRINTSJ' => '0',
|
|
'STATUS_PRINTINV' => '0'
|
|
];
|
|
$action = $this->Persediaan->update('penjualan', $update, 'ID_PENJUALAN', $id_penjualan);
|
|
|
|
if ($action) {
|
|
$this->session->set_flashdata('flash', 'diproses');
|
|
redirect('ManagePersediaanQTY/dataSewaLaku');
|
|
} else {
|
|
$this->session->set_flashdata('flashgagal', 'diproses');
|
|
redirect('ManagePersediaanQTY/dataSewaLaku');
|
|
}
|
|
|
|
}
|
|
|
|
public function dataSewaTarik() {
|
|
$datPersediaan = $this->Persediaan->getDataSewaTarik();
|
|
$data = [
|
|
'sidebar' => "menu persediaan",
|
|
'navChild' => "",
|
|
'persediaan' => $datPersediaan
|
|
];
|
|
$this->load->view('proses/PersediaanSewaTarik', $data);
|
|
}
|
|
|
|
public function prosesSnSewaTarik($id) {
|
|
$persediaan = $this->Persediaan->getDaftarSnSewaTarik($id);
|
|
$datSn = $this->Barang->getSnSewa($id);
|
|
$tgl = date('m/d/Y');
|
|
|
|
if ($persediaan==FALSE) {
|
|
$id_ps=NULL;
|
|
} else {
|
|
$id_ps = $persediaan[0]['ID_PS'];
|
|
}
|
|
|
|
$data = [
|
|
'sidebar' => "menu persediaan",
|
|
'navChild' => "",
|
|
'persediaan' => $persediaan,
|
|
'id_pelanggan' => $id,
|
|
'id_ps' => $id_ps,
|
|
'sn' => $datSn,
|
|
'tgl' => $tgl
|
|
];
|
|
|
|
$this->load->view('proses/PersediaanSnSewaTarik', $data);
|
|
}
|
|
|
|
public function kodePenarikanSewa() {
|
|
$kk = $this->Persediaan->getKodePenarikanSewa();
|
|
if (is_array($kk) || is_object($kk)) {
|
|
foreach ($kk as $row) {
|
|
if ($row['KODE'] == null) {
|
|
return "PS/000001";
|
|
} else {
|
|
$str = (string) $row['KODE'];
|
|
$panjang = 6;
|
|
$data = substr($str, 3, $panjang);
|
|
|
|
$ko = (int) $data + 1;
|
|
$str = (string) $ko;
|
|
|
|
$panjang = 9 - strlen($str);
|
|
$data = "PS/000000";
|
|
$data = substr($data, 0, $panjang) . $str;
|
|
return $data;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
public function savesewatarik() {
|
|
$method = $this->input->post('method');
|
|
$id_ps = $this->input->post('id');
|
|
$tgl_ps = $this->input->post('tgl_ps');
|
|
$sntarik = $this->input->post('sntarik');
|
|
$kode_ps = $this->kodePenarikanSewa();
|
|
|
|
foreach ($sntarik as $key) {
|
|
$datSewa = $this->Persediaan->getDataDaftarSewaSn($key);
|
|
$indexSewa = count($datSewa);
|
|
if ($datSewa[$indexSewa-1]['PENJUALAN_ID']!=NULL) {
|
|
$this->session->set_flashdata('flashrefresh', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
if ($datSewa[$indexSewa-1]['PS_ID']!=NULL) {
|
|
$this->session->set_flashdata('flashrefresh', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
if ($datSewa[$indexSewa-1]['STATUS_SNSEWA']!=NULL) {
|
|
$this->session->set_flashdata('flashrefresh', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
}
|
|
|
|
foreach ($sntarik as $key) {
|
|
$datSn = $this->Persediaan->getDataSn($key);
|
|
if ($datSn[0]['DS_ID']==NULL) {
|
|
$this->session->set_flashdata('flashrefresh', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
if ($datSn[0]['GUDANG_ID']!="7") {
|
|
$this->session->set_flashdata('flashrefresh', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
if ($datSn[0]['STATUS_SN']!="2") {
|
|
$this->session->set_flashdata('flashrefresh', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
}
|
|
|
|
$input = [
|
|
'KODE_PS' => $kode_ps,
|
|
'TGL_PS' => $tgl_ps
|
|
];
|
|
$action = $this->Persediaan->create('penarikan_sewa', $input);
|
|
|
|
$id_ps = $this->Persediaan->getID_PSMax();
|
|
$id_ps = $id_ps[0]['ID_PS'];
|
|
|
|
foreach ($sntarik as $key) {
|
|
$id_snsewa = $this->Persediaan->getID_SewaSNIDMax($key);
|
|
$id_snsewa = $id_snsewa[0]['ID_SNSEWA'];
|
|
$update = [
|
|
'STATUS_SNSEWA' => '1',
|
|
'PS_ID' => $id_ps
|
|
];
|
|
$action = $this->Persediaan->update('daftar_snsewa', $update, 'ID_SNSEWA', $id_snsewa);
|
|
|
|
$update = [
|
|
'STATUS_SN' => NULL,
|
|
'GUDANG_ID' => '1',
|
|
'DS_ID' => NULL,
|
|
];
|
|
$action = $this->Persediaan->update('sn', $update, 'ID_SN', $key);
|
|
|
|
$datSn = $this->Persediaan->getDataSn($key);
|
|
$id_barang = $datSn[0]['BARANG_ID'];
|
|
$datKuantiti = $this->Persediaan->getDataKuantiti($id_barang);
|
|
$sewa_kuantiti = $datKuantiti[0]['SEWA_KUANTITI'];
|
|
$pcm_kuantiti = $datKuantiti[0]['PCM_KUANTITI'];
|
|
$sewa = $sewa_kuantiti-1;
|
|
$pcm = $pcm_kuantiti+1;
|
|
$update = [
|
|
'PCM_KUANTITI' => $pcm,
|
|
'SEWA_KUANTITI' => $sewa
|
|
];
|
|
$action = $this->Persediaan->update('kuantiti', $update, 'BARANG_ID', $id_barang);
|
|
}
|
|
|
|
if ($action) {
|
|
$this->session->set_flashdata('flash', 'ditarik');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
} else {
|
|
$this->session->set_flashdata('flashgagal', 'ditarik');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
}
|
|
|
|
public function hapussewatarik() {
|
|
$method = $this->input->post('method');
|
|
$id_ps = $this->input->post('id');
|
|
|
|
$datPenarikan = $this->Persediaan->getDataPenarikanSewa($id_ps);
|
|
if ($datPenarikan==FALSE) {
|
|
$this->session->set_flashdata('flashrefresh', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
$datSnTarik = $this->Persediaan->getDataSnPenarikanSewa($id_ps);
|
|
foreach ($datSnTarik as $key) {
|
|
$datSn = $this->Persediaan->getDataSn($key['SN_ID']);
|
|
if ($datSn[0]['DS_ID']!=NULL) {
|
|
$this->session->set_flashdata('flashrefresh', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
if ($datSn[0]['STATUS_SN']!=NULL) {
|
|
$this->session->set_flashdata('flashrefresh', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
}
|
|
|
|
foreach ($datSnTarik as $key) {
|
|
$id_snsewa = $this->Persediaan->getID_SewaSNIDMax($key['SN_ID']);
|
|
$id_snsewa = $id_snsewa[0]['ID_SNSEWA'];
|
|
$update = [
|
|
'PS_ID' => NULL,
|
|
'STATUS_SNSEWA' => NULL
|
|
];
|
|
$action = $this->Persediaan->update('daftar_snsewa', $update, 'ID_SNSEWA', $id_snsewa);
|
|
$update = [
|
|
'GUDANG_ID' => '7',
|
|
'STATUS_SN' => '2',
|
|
'DS_ID' => $key['DSSEWA']
|
|
];
|
|
$action = $this->Persediaan->update('sn', $update, 'ID_SN', $key['SN_ID']);
|
|
|
|
$datKuantiti = $this->Persediaan->getKuantitiBarang($key['BARANG_ID']);
|
|
$pcm_kuantiti = $datKuantiti[0]['PCM_KUANTITI'];
|
|
$sewa_kuantiti = $datKuantiti[0]['SEWA_KUANTITI'];
|
|
$sewa = $sewa_kuantiti+1;
|
|
$pcm = $pcm_kuantiti-1;
|
|
|
|
$update = [
|
|
'SEWA_KUANTITI' => $sewa,
|
|
'PCM_KUANTITI' => $pcm
|
|
];
|
|
$action = $this->Persediaan->update('kuantiti', $update, 'BARANG_ID', $key['BARANG_ID']);
|
|
}
|
|
|
|
$action = $this->Persediaan->delete('penarikan_sewa', $id_ps ,'ID_PS');
|
|
|
|
if ($action) {
|
|
$this->session->set_flashdata('flash', 'dihapus');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
} else {
|
|
$this->session->set_flashdata('flashgagal', 'dihapus');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
}
|
|
|
|
public function kodeSJPenarikanSewa() {
|
|
$kk = $this->Persediaan->getKodeSJPenarikanSewa();
|
|
$tgl = date('mdy');
|
|
if (is_array($kk) || is_object($kk)) {
|
|
foreach ($kk as $row) {
|
|
if ($row['KODE'] == null) {
|
|
return "SJ/PNS/$tgl/001";
|
|
} else {
|
|
$str = (string) $row['KODE'];
|
|
$tgl_lama = substr($str, 7, -4);
|
|
if ($tgl_lama!=$tgl) {
|
|
return "SJ/PNS/$tgl/001";
|
|
} else {
|
|
$panjang = 3;
|
|
$data = substr($str, 14, $panjang);
|
|
$ko = (int) $data + 1;
|
|
$str = (string) $ko;
|
|
$panjang = 17 - strlen($str);
|
|
$data = "SJ/PNS/$tgl/000";
|
|
$data = substr($data, 0, $panjang) . $str;
|
|
return $data;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
public function prosessewatarik() {
|
|
$method = $this->input->post('method');
|
|
$id_ps = $this->input->post('id');
|
|
$id_pelanggan = $this->input->post('id_pelanggan');
|
|
|
|
$datPenarikan = $this->Persediaan->getDataPenarikanSewa($id_ps);
|
|
if ($datPenarikan==FALSE) {
|
|
$this->session->set_flashdata('flashrefresh', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
if ($datPenarikan[0]['SJ_PS']!=NULL) {
|
|
$this->session->set_flashdata('flashrefresh', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
$datSnTarik = $this->Persediaan->getDataSnPenarikanSewa($id_ps);
|
|
foreach ($datSnTarik as $key) {
|
|
$datSn = $this->Persediaan->getDataSn($key['SN_ID']);
|
|
if ($datSn[0]['DS_ID']!=NULL) {
|
|
$this->session->set_flashdata('flashrefresh', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
if ($datSn[0]['STATUS_SN']!=NULL) {
|
|
$this->session->set_flashdata('flashrefresh', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
}
|
|
|
|
$datSewa = $this->Persediaan->checkSewa($id_pelanggan);
|
|
foreach ($datSewa as $key) {
|
|
$datDS = $this->Persediaan->checkData_DS($key['ID_SEWA']);
|
|
$qtyDs = count($datDS);
|
|
$nilaiKunci = '0';
|
|
foreach ($datDS as $row) {
|
|
$qty_ds = $row['QTY_DS'];
|
|
$qty_real = $this->Persediaan->getQtySnSewa($row['ID_DS']);
|
|
if ($qty_ds==$qty_real) {
|
|
$nilaiKunci = $nilaiKunci+1;
|
|
}
|
|
}
|
|
if ($nilaiKunci==$qtyDs) {
|
|
$datSewa = $this->Persediaan->getDataSewaLaku($key['ID_SEWA']);
|
|
$status_sewa = $datSewa[0]['STATUS_SEWA'];
|
|
if ($status_sewa=="0") {
|
|
$update = [
|
|
'STATUS_SEWA' => '1'
|
|
];
|
|
$action = $this->Persediaan->update('sewa', $update, 'ID_SEWA', $key['ID_SEWA']);
|
|
}
|
|
}
|
|
}
|
|
|
|
$sj_ps = $this->kodeSJPenarikanSewa();
|
|
$update = [
|
|
'SJ_PS' => $sj_ps,
|
|
'STATUS_PRINTSJ' => '0'
|
|
];
|
|
$action = $this->Persediaan->update('penarikan_sewa', $update, 'ID_PS', $id_ps);
|
|
|
|
if ($action) {
|
|
$this->session->set_flashdata('flash', 'diproses');
|
|
redirect('ManagePersediaanQTY/dataSewaTarik');
|
|
} else {
|
|
$this->session->set_flashdata('flashgagal', 'diproses');
|
|
redirect('ManagePersediaanQTY/dataSewaTarik');
|
|
}
|
|
|
|
}
|
|
|
|
//Operasional
|
|
public function dataOperasional() {
|
|
$datPersediaan = $this->Persediaan->getDataKuantitiOperasional();
|
|
$datBarang = $this->Barang->getBarangOperasional();
|
|
$tgl = date('m/d/Y');
|
|
$data = [
|
|
'sidebar' => "menu persediaan",
|
|
'navChild' => "",
|
|
'persediaan' => $datPersediaan,
|
|
'barang' => $datBarang,
|
|
'tgl' => $tgl
|
|
];
|
|
$this->load->view('proses/PersediaanOperasional', $data);
|
|
}
|
|
|
|
public function kodeOperasional() {
|
|
$kk = $this->Persediaan->getKodeOperasional();
|
|
if (is_array($kk) || is_object($kk)) {
|
|
foreach ($kk as $row) {
|
|
if ($row['KODE'] == null) {
|
|
return "OPR/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 = "OPR/000000";
|
|
$data = substr($data, 0, $panjang) . $str;
|
|
return $data;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
public function saveoperasional() {
|
|
$method = $this->input->post('method');
|
|
$id_operasional = $this->input->post('id');
|
|
$id_barang = $this->input->post('id_barang');
|
|
$qty_operasional = $this->input->post('qty_operasional');
|
|
$tgl_operasional = $this->input->post('tgl_operasional');
|
|
$ket_operasional = $this->input->post('ket_operasional');
|
|
$kode_operasional = $this->kodeOperasional();
|
|
|
|
$kuantiti = $this->Persediaan->getKuantitiBarang($id_barang);
|
|
$id_kuantiti = $kuantiti[0]['ID_KUANTITI'];
|
|
$pcm_kuantiti = $kuantiti[0]['PCM_KUANTITI'];
|
|
|
|
if ($qty_operasional>$pcm_kuantiti) {
|
|
$this->session->set_flashdata('flashkuantiti', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
if ($qty_operasional<=0) {
|
|
$this->session->set_flashdata('flashzero', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
$pcm = $pcm_kuantiti-$qty_operasional;
|
|
|
|
$input = [
|
|
'KODE_OPERASIONAL' => $kode_operasional,
|
|
'BARANG_ID' => $id_barang,
|
|
'QTY_OPERASIONAL' => $qty_operasional,
|
|
'TGL_OPERASIONAL' => $tgl_operasional,
|
|
'KET_OPERASIONAL' => $ket_operasional
|
|
];
|
|
|
|
$action = $this->Persediaan->create('operasional', $input);
|
|
|
|
$update = [
|
|
'PCM_KUANTITI' => $pcm
|
|
];
|
|
|
|
$action = $this->Persediaan->update('kuantiti', $update, 'ID_KUANTITI', $id_kuantiti);
|
|
|
|
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 hapusoperasional() {
|
|
$method = $this->input->post('method');
|
|
$id_operasional = $this->input->post('id');
|
|
|
|
$datOperasional = $this->Persediaan->getDataKuantitiOperasional($id_operasional);
|
|
if ($datOperasional==FALSE) {
|
|
$this->session->set_flashdata('flashrefresh', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
if ($datOperasional[0]['ID_SN']!=NULL) {
|
|
$this->session->set_flashdata('flashrefresh', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
$qty_operasional = $datOperasional[0]['QTY_OPERASIONAL'];
|
|
$pcm_kuantiti = $datOperasional[0]['PCM_KUANTITI'];
|
|
$id_kuantiti = $datOperasional[0]['ID_KUANTITI'];
|
|
$pcm = $pcm_kuantiti+$qty_operasional;
|
|
|
|
$update = [
|
|
'PCM_KUANTITI' => $pcm
|
|
];
|
|
|
|
$action = $this->Persediaan->update('kuantiti', $update, 'ID_KUANTITI', $id_kuantiti);
|
|
$action = $this->Persediaan->delete('operasional', $id_operasional ,'ID_OPERASIONAL');
|
|
|
|
if ($action) {
|
|
$this->session->set_flashdata('flash', 'dihapus');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
} else {
|
|
$this->session->set_flashdata('flashgagal', 'dihapus');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
}
|
|
|
|
public function tambahSnOperasional($id) {
|
|
$persediaan = $this->Persediaan->getDataKuantitiOperasional($id);
|
|
$qty = $this->Persediaan->getMaxQtyOperasional($id);
|
|
$id_barang = $persediaan[0]['ID_BARANG'];
|
|
|
|
$data = [
|
|
'sidebar' => "menu persediaan",
|
|
'navChild' => "",
|
|
'persediaan' => $persediaan,
|
|
'id_operasional' => $id,
|
|
'id_barang' => $id_barang,
|
|
'title1' => $persediaan[0]['KODE_OPERASIONAL'],
|
|
'title2' => $persediaan[0]['NAMA_BARANG'],
|
|
'qty_operasional' => $persediaan[0]['QTY_OPERASIONAL'],
|
|
'qty' => $qty
|
|
];
|
|
|
|
$this->load->view('proses/PersediaanOperasionalSn', $data);
|
|
}
|
|
|
|
public function datasnOPR() {
|
|
$id = $this->input->post('id');
|
|
$data = $this->Persediaan->getDataSnOPR($id);
|
|
$this->output_json(['value' => 1, 'total' => sizeof($data), 'data' => $data]);
|
|
}
|
|
|
|
public function jumlahdatasnOPR() {
|
|
$id = $this->input->post('id');
|
|
$data = $this->Persediaan->getDataSnOPR($id);
|
|
$this->output_json(['value' => 1, 'jumlah_data' => sizeof($data)]);
|
|
}
|
|
|
|
public function savesnOPR() {
|
|
$id_operasional = $this->input->post('id_operasional');
|
|
$id_barang = $this->input->post('id_barang');
|
|
$nama_sn = $this->input->post('nama_sn');
|
|
$nama_sn = strtoupper($nama_sn);
|
|
|
|
$dataSn = $this->Persediaan->getDataSnBarang($id_barang);
|
|
foreach ($dataSn as $key) {
|
|
if ($nama_sn==$key['NAMA_SN']) {
|
|
$id_sn = $key['ID_SN'];
|
|
$data = [
|
|
'STATUS_SN' => '3',
|
|
'OPERASIONAL_ID' => $id_operasional
|
|
];
|
|
$action = $this->Persediaan->update('sn', $data, 'ID_SN', $id_sn);
|
|
$input = [
|
|
'SN_ID' => $id_sn,
|
|
'OPERASIONAL_ID' => $id_operasional
|
|
];
|
|
$action = $this->Persediaan->create('daftar_operasional', $input);
|
|
}
|
|
}
|
|
|
|
$datOperasional = $this->Persediaan->getDataKuantitiOperasional($id_operasional);
|
|
$qty_operasional = $datOperasional[0]['QTY_OPERASIONAL'];
|
|
|
|
$qtyReal = $this->Persediaan->getMaxQtyOperasional($id_operasional);
|
|
if ($qtyReal==$qty_operasional){
|
|
$this->output_json(['value' => 2, 'nama_sn' => $nama_sn]);
|
|
$this->session->set_flashdata('flashkunci', 'dikunci');
|
|
} else if ($action){
|
|
$this->output_json(['value' => 1, 'nama_sn' => $nama_sn]);
|
|
} else {
|
|
$this->output_json(['value' => 0, 'nama_sn' => $nama_sn]);
|
|
$this->session->set_flashdata('flashgagal', 'dikunci');
|
|
}
|
|
}
|
|
|
|
public function resetsnOPR() {
|
|
$id = $this->input->post('id_sn');
|
|
$datOperasional = $this->Persediaan->getDataSnOperasional($id);
|
|
$id_operasional = $datOperasional[0]['OPERASIONAL_ID'];
|
|
$qty_operasional = $datOperasional[0]['QTY_OPERASIONAL'];
|
|
|
|
$data = [
|
|
'STATUS_SN' => NULL,
|
|
'OPERASIONAL_ID' => NULL
|
|
];
|
|
$action = $this->Persediaan->update('sn', $data, 'ID_SN', $id);
|
|
|
|
$action = $this->Persediaan->delete('daftar_operasional', $id ,'SN_ID');
|
|
|
|
$qtyReal = $this->Persediaan->getMaxQtyOperasional($id_operasional);
|
|
if ($qtyReal+1==$qty_operasional){
|
|
$this->output_json(['value' => 2, 'message' => 'Berhasil', 'dt' => $action]);
|
|
$this->session->set_flashdata('flashkurang', 'dikunci');
|
|
} else if ($action) {
|
|
$this->output_json(['value' => 1, 'message' => 'Berhasil', 'dt' => $action]);
|
|
} else {
|
|
$this->output_json(['value' => 0, 'message' => "gagal", 'dt' => $action]);
|
|
}
|
|
}
|
|
|
|
public function prosesOPR() {
|
|
$id_operasional = $this->input->post('id');
|
|
|
|
$datOperasional = $this->Persediaan->getDataKuantitiOperasional($id_operasional);
|
|
if ($datOperasional==FALSE) {
|
|
$this->session->set_flashdata('flashrefresh', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
if ($datOperasional[0]['TYPE_JENIS']=="1") {
|
|
$realQty = $this->Persediaan->getQtySnOperasional($id_operasional);
|
|
if ($realQty!=$datOperasional[0]['QTY_OPERASIONAL']) {
|
|
$this->session->set_flashdata('flashsn', 'ditambah');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
}
|
|
|
|
$id_kuantiti = $datOperasional[0]['ID_KUANTITI'];
|
|
$global_kuantiti = $datOperasional[0]['GLOBAL_KUANTITI'];
|
|
$qty_operasional = $datOperasional[0]['QTY_OPERASIONAL'];
|
|
$kode_operasional = $datOperasional[0]['KODE_OPERASIONAL'];
|
|
$tgl_operasional = $datOperasional[0]['TGL_OPERASIONAL'];
|
|
$id_barang = $datOperasional[0]['OPRBID'];
|
|
$global = $global_kuantiti-$qty_operasional;
|
|
$kode_stq = $this->kodeStockKuantiti();
|
|
$kode_stsn = $this->kodeStockSn();
|
|
|
|
$input = [
|
|
'KODE_STQ' => $kode_stq,
|
|
'KODE_BUKTI' => $kode_operasional,
|
|
'TGL_STQ' => $tgl_operasional,
|
|
'BARANG_ID' => $id_barang,
|
|
'QTY_BEFORE' => $global_kuantiti,
|
|
'QTY_IN' => '0',
|
|
'QTY_OUT' => $qty_operasional,
|
|
'QTY_AFTER' => $global
|
|
];
|
|
$action = $this->Persediaan->create('stock_kuantiti', $input);
|
|
|
|
if ($datOperasional[0]['TYPE_JENIS']=="1") {
|
|
$datDO = $this->Persediaan->getDataDaftarOperasional($id_operasional);
|
|
foreach ($datDO as $key) {
|
|
$input = [
|
|
'KODE_STSN' => $kode_stsn,
|
|
'KODE_BUKTI' => $kode_operasional,
|
|
'TGL_STSN' => $tgl_operasional,
|
|
'BARANG_ID' => $id_barang,
|
|
'SN_ID' => $key['SN_ID']
|
|
];
|
|
$action = $this->Persediaan->create('stock_sn', $input);
|
|
}
|
|
}
|
|
|
|
$update = [
|
|
'STATUS_OPERASIONAL' => '1'
|
|
];
|
|
$action = $this->Persediaan->update('operasional', $update, 'ID_OPERASIONAL', $id_operasional);
|
|
|
|
$update = [
|
|
'GLOBAL_KUANTITI' => $global
|
|
];
|
|
$action = $this->Persediaan->update('kuantiti', $update, 'ID_KUANTITI', $id_kuantiti);
|
|
|
|
if ($action) {
|
|
$this->session->set_flashdata('flash', 'diproses');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
} else {
|
|
$this->session->set_flashdata('flashgagal', 'diproses');
|
|
redirect($_SERVER['HTTP_REFERER']);
|
|
}
|
|
|
|
}
|
|
|
|
}
|