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']); } } }