copy dari repo om Irfan
This commit is contained in:
@@ -0,0 +1,407 @@
|
||||
<?php
|
||||
|
||||
use Restserver\Libraries\REST_Controller;
|
||||
|
||||
defined('BASEPATH') or exit('No direct script access allowed');
|
||||
require APPPATH . 'libraries/REST_Controller.php';
|
||||
require APPPATH . 'libraries/Format.php';
|
||||
|
||||
class ManageSetStock extends CI_Controller
|
||||
{
|
||||
function __construct()
|
||||
{
|
||||
parent::__construct();
|
||||
$this->load->model('ModelBarang', 'Barang');
|
||||
$this->load->model('ModelGudang', 'Gudang');
|
||||
$this->load->model('ModelNeraca', 'Neraca');
|
||||
$this->load->model('ModelStock', 'Stock');
|
||||
$this->load->library(['datatables', 'form_validation']);
|
||||
$this->form_validation->set_error_delimiters('', '');
|
||||
}
|
||||
public function output_json($data, $encode = true)
|
||||
{
|
||||
if ($encode) $data = json_encode($data);
|
||||
$this->output->set_content_type('application/json')->set_output($data);
|
||||
}
|
||||
|
||||
public function index() {
|
||||
$datStock = $this->Stock->getDataSetStock();
|
||||
$datBarang = $this->Barang->getDataBarangDb();
|
||||
$datGudang = $this->Gudang->getDataGudangPembelian();
|
||||
$data = [
|
||||
'sidebar' => "set data",
|
||||
'navChild' => "",
|
||||
'barang' => $datBarang,
|
||||
'gudang' => $datGudang,
|
||||
'stock' => $datStock
|
||||
];
|
||||
|
||||
$this->load->view('proses/SetStock', $data);
|
||||
}
|
||||
|
||||
public function save() {
|
||||
$method = $this->input->post('method');
|
||||
$id = $this->input->post('id_stock');
|
||||
$id_barang = $this->input->post('id_barang');
|
||||
$id_gudang = $this->input->post('id_gudang');
|
||||
$qty_stock = $this->input->post('qty_stock');
|
||||
$harga_stock = $this->input->post('harga_stock');
|
||||
|
||||
$totalharga = $harga_stock*$qty_stock;
|
||||
$nilai = $this->Neraca->getDataNeraca(4);
|
||||
$nilai = $nilai[0]['NILAI_NERACA'];
|
||||
$nilai_neraca = $nilai+$totalharga;
|
||||
$id_neraca = 4;
|
||||
$update = [
|
||||
'NILAI_NERACA' => $nilai_neraca
|
||||
];
|
||||
$action = $this->Neraca->update('neraca', $update, 'ID_NERACA',$id_neraca);
|
||||
|
||||
$dh = $this->Stock->getID_DH($id_barang);
|
||||
$id_dh = $dh[0]['ID_DH'];
|
||||
|
||||
$update = [
|
||||
'AVG_DH' => $harga_stock
|
||||
];
|
||||
$action = $this->Stock->update('daftar_harga', $update, 'ID_DH',$id_dh);
|
||||
|
||||
$input = [
|
||||
'BARANG_ID' => $id_barang,
|
||||
'QTY_DB' => $qty_stock,
|
||||
'HARGA_DB' => $harga_stock
|
||||
];
|
||||
$action = $this->Stock->create('daftar_beli', $input);
|
||||
$datadb = $this->Stock->getID_DB();
|
||||
$id_db = $datadb[0]['ID_DB'];
|
||||
$input = [
|
||||
'DB_ID' => $id_db,
|
||||
'QTY_STOCK' => $qty_stock,
|
||||
'GUDANG_ID' => $id_gudang
|
||||
];
|
||||
$action = $this->Stock->create('stock', $input);
|
||||
|
||||
$jenis = $this->Stock->getDataJenis($id_barang);
|
||||
$type_jenis = $jenis[0]['TYPE_JENIS'];
|
||||
|
||||
if ($type_jenis=="0") {
|
||||
$stock = $this->Stock->getID_STOCK();
|
||||
$id_stock = $stock[0]['ID_STOCK'];
|
||||
$kuantiti = $this->Stock->getDataKuantiti($id_stock);
|
||||
$id_kuantiti = $kuantiti[0]['ID_KUANTITI'];
|
||||
$ready_kuantiti = $kuantiti[0]['READY_KUANTITI'];
|
||||
$qty_real = $ready_kuantiti+$qty_stock;
|
||||
$update = [
|
||||
'READY_KUANTITI' => $qty_real,
|
||||
'GLOBAL_KUANTITI' => $qty_real
|
||||
];
|
||||
$action = $this->Stock->update('kuantiti', $update, 'ID_KUANTITI', $id_kuantiti);
|
||||
$this->session->set_flashdata('flash', 'dilakukan');
|
||||
redirect($_SERVER['HTTP_REFERER']);
|
||||
} else if ($action) {
|
||||
$this->session->set_flashdata('flash', 'dilakukan');
|
||||
redirect($_SERVER['HTTP_REFERER']);
|
||||
} else {
|
||||
$this->session->set_flashdata('flashgagal', 'dilakukan');
|
||||
redirect($_SERVER['HTTP_REFERER']);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public function edit() {
|
||||
$method = $this->input->post('method');
|
||||
$id_stock = $this->input->post('id_stock');
|
||||
$id_gudang = $this->input->post('id_gudanged');
|
||||
$qty_stock = $this->input->post('qty_stocked');
|
||||
$harga_stock = $this->input->post('harga_stocked');
|
||||
|
||||
$stock = $this->Stock->getDataStock($id_stock);
|
||||
$harga = $stock[0]['HARGA_DB'];
|
||||
$qty = $stock[0]['QTY_DB'];
|
||||
$id_barang = $stock[0]['BARANG_ID'];
|
||||
$jenis = $this->Stock->getDataJenis($id_barang);
|
||||
$type_jenis = $jenis[0]['TYPE_JENIS'];
|
||||
if ($type_jenis=="0") {
|
||||
$kuantiti = $this->Stock->getDataKuantiti($id_stock);
|
||||
$id_kuantiti = $kuantiti[0]['ID_KUANTITI'];
|
||||
$ready_kuantiti = $kuantiti[0]['READY_KUANTITI'];
|
||||
$qty_real = $ready_kuantiti-$qty;
|
||||
$update = [
|
||||
'READY_KUANTITI' => $qty_real,
|
||||
'GLOBAL_KUANTITI' => $qty_real
|
||||
];
|
||||
$action = $this->Stock->update('kuantiti', $update, 'ID_KUANTITI', $id_kuantiti);
|
||||
} else if ($type_jenis=="1") {
|
||||
$real = $this->Stock->getQtyReal($id_stock);
|
||||
$kuantiti = $this->Stock->getDataKuantiti($id_stock);
|
||||
$id_kuantiti = $kuantiti[0]['ID_KUANTITI'];
|
||||
$ready_kuantiti = $kuantiti[0]['READY_KUANTITI'];
|
||||
$qty_real = $ready_kuantiti-$real;
|
||||
$update = [
|
||||
'READY_KUANTITI' => $qty_real,
|
||||
'GLOBAL_KUANTITI' => $qty_real
|
||||
];
|
||||
$action = $this->Stock->update('kuantiti', $update, 'ID_KUANTITI', $id_kuantiti);
|
||||
$action = $this->Stock->delSn($id_stock);
|
||||
}
|
||||
|
||||
$totalharga = $harga*$qty;
|
||||
$nilai = $this->Neraca->getDataNeraca(4);
|
||||
$nilai = $nilai[0]['NILAI_NERACA'];
|
||||
$nilai_neraca = $nilai-$totalharga;
|
||||
$id_neraca = 4;
|
||||
$update = [
|
||||
'NILAI_NERACA' => $nilai_neraca
|
||||
];
|
||||
$action = $this->Neraca->update('neraca', $update, 'ID_NERACA',$id_neraca);
|
||||
$nilai = $this->Neraca->getDataNeraca(4);
|
||||
$nilai = $nilai[0]['NILAI_NERACA'];
|
||||
$totalharga = $harga_stock*$qty_stock;
|
||||
$nilai_neraca = $nilai+$totalharga;
|
||||
$id_neraca = 4;
|
||||
$update = [
|
||||
'NILAI_NERACA' => $nilai_neraca
|
||||
];
|
||||
$action = $this->Neraca->update('neraca', $update, 'ID_NERACA',$id_neraca);
|
||||
|
||||
$datadb = $this->Stock->getDataSetStock($id_stock);
|
||||
$id_db = $datadb[0]['DB_ID'];
|
||||
|
||||
$dh = $this->Stock->getID_DH($id_barang);
|
||||
$id_dh = $dh[0]['ID_DH'];
|
||||
|
||||
$update = [
|
||||
'AVG_DH' => $harga_stock
|
||||
];
|
||||
$action = $this->Stock->update('daftar_harga', $update, 'ID_DH',$id_dh);
|
||||
|
||||
$update = [
|
||||
'GUDANG_ID' => $id_gudang,
|
||||
'QTY_STOCK' => $qty_stock
|
||||
];
|
||||
$action = $this->Stock->update('stock', $update,'ID_STOCK',$id_stock);
|
||||
|
||||
$update = [
|
||||
'QTY_DB' => $qty_stock,
|
||||
'HARGA_DB' => $harga_stock
|
||||
];
|
||||
$action = $this->Stock->update('daftar_beli', $update,'ID_DB',$id_db);
|
||||
|
||||
$stock = $this->Stock->getDataStock($id_stock);
|
||||
$id_barang = $stock[0]['BARANG_ID'];
|
||||
$jenis = $this->Stock->getDataJenis($id_barang);
|
||||
$type_jenis = $jenis[0]['TYPE_JENIS'];
|
||||
|
||||
if ($type_jenis=="0") {
|
||||
$kuantiti = $this->Stock->getDataKuantiti($id_stock);
|
||||
$id_kuantiti = $kuantiti[0]['ID_KUANTITI'];
|
||||
$ready_kuantiti = $kuantiti[0]['READY_KUANTITI'];
|
||||
$qty_real = $ready_kuantiti+$qty_stock;
|
||||
$update = [
|
||||
'READY_KUANTITI' => $qty_real,
|
||||
'GLOBAL_KUANTITI' => $qty_real
|
||||
];
|
||||
$action = $this->Stock->update('kuantiti', $update, 'ID_KUANTITI', $id_kuantiti);
|
||||
$this->session->set_flashdata('flash', 'diubah');
|
||||
redirect($_SERVER['HTTP_REFERER']);
|
||||
} else if ($action) {
|
||||
$this->session->set_flashdata('flash', 'diubah');
|
||||
redirect($_SERVER['HTTP_REFERER']);
|
||||
} else {
|
||||
$this->session->set_flashdata('flashgagal', 'diubah');
|
||||
redirect($_SERVER['HTTP_REFERER']);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public function hapus() {
|
||||
$id = $this->input->post('id');
|
||||
|
||||
$stock = $this->Stock->getDataStock($id);
|
||||
$harga = $stock[0]['HARGA_DB'];
|
||||
$qty = $stock[0]['QTY_DB'];
|
||||
$id_barang = $stock[0]['BARANG_ID'];
|
||||
$id_db = $stock[0]['DB_ID'];
|
||||
|
||||
$jenis = $this->Stock->getDataJenis($id_barang);
|
||||
$type_jenis = $jenis[0]['TYPE_JENIS'];
|
||||
if ($type_jenis=="0") {
|
||||
$kuantiti = $this->Stock->getDataKuantiti($id);
|
||||
$id_kuantiti = $kuantiti[0]['ID_KUANTITI'];
|
||||
$ready_kuantiti = $kuantiti[0]['READY_KUANTITI'];
|
||||
$qty_real = $ready_kuantiti-$qty;
|
||||
$update = [
|
||||
'READY_KUANTITI' => $qty_real,
|
||||
'GLOBAL_KUANTITI' => $qty_real
|
||||
];
|
||||
$action = $this->Stock->update('kuantiti', $update, 'ID_KUANTITI', $id_kuantiti);
|
||||
} else if ($type_jenis=="1") {
|
||||
$kuantiti = $this->Stock->getDataKuantiti($id);
|
||||
$id_kuantiti = $kuantiti[0]['ID_KUANTITI'];
|
||||
$ready_kuantiti = $kuantiti[0]['READY_KUANTITI'];
|
||||
$real = $this->Stock->getQtyReal($id);
|
||||
$qty_real = $ready_kuantiti-$real;
|
||||
$update = [
|
||||
'READY_KUANTITI' => $qty_real,
|
||||
'GLOBAL_KUANTITI' => $qty_real
|
||||
];
|
||||
$action = $this->Stock->update('kuantiti', $update, 'ID_KUANTITI', $id_kuantiti);
|
||||
$action = $this->Stock->delSn($id);
|
||||
}
|
||||
|
||||
$totalharga = $harga*$qty;
|
||||
$nilai = $this->Neraca->getDataNeraca(4);
|
||||
$nilai = $nilai[0]['NILAI_NERACA'];
|
||||
$nilai_neraca = $nilai-$totalharga;
|
||||
$id_neraca = 4;
|
||||
$update = [
|
||||
'NILAI_NERACA' => $nilai_neraca
|
||||
];
|
||||
$action = $this->Neraca->update('neraca', $update, 'ID_NERACA',$id_neraca);
|
||||
|
||||
$dh = $this->Stock->getID_DH($id_barang);
|
||||
$id_dh = $dh[0]['ID_DH'];
|
||||
|
||||
$update = [
|
||||
'AVG_DH' => '0'
|
||||
];
|
||||
$action = $this->Stock->update('daftar_harga', $update, 'ID_DH',$id_dh);
|
||||
|
||||
$action = $this->Stock->delete('stock',$id,'ID_STOCK');
|
||||
$action = $this->Stock->delete('daftar_beli',$id_db,'ID_DB');
|
||||
|
||||
$this->session->set_flashdata('flash', 'dihapus');
|
||||
redirect($_SERVER['HTTP_REFERER']);
|
||||
}
|
||||
|
||||
public function tambahSn($id) {
|
||||
$stock = $this->Stock->getDataSetStock($id);
|
||||
$max = $this->Stock->getQtyReal($id);
|
||||
$data = [
|
||||
'sidebar' => "set data",
|
||||
'navChild' => "",
|
||||
'stock' => $stock,
|
||||
'id_stock' => $id,
|
||||
'qty' => $stock[0]['QTY_STOCK'],
|
||||
'title' => $stock[0]['NAMA_BARANG'],
|
||||
'max' => $max,
|
||||
];
|
||||
|
||||
$this->load->view('proses/SetSn', $data);
|
||||
}
|
||||
|
||||
public function datasn() {
|
||||
$id = $this->input->post('id');
|
||||
$data = $this->Stock->getDataSn($id);
|
||||
$this->output_json(['value' => 1, 'total' => sizeof($data), 'data' => $data]);
|
||||
}
|
||||
|
||||
public function jumlahdatasn() {
|
||||
$id = $this->input->post('id');
|
||||
$data = $this->Stock->getDataSn($id);
|
||||
$this->output_json(['value' => 1, 'jumlah_data' => sizeof($data)]);
|
||||
}
|
||||
|
||||
public function savesn() {
|
||||
$id = $this->input->post('id_sn');
|
||||
$nama_sn = $this->input->post('nama_sn');
|
||||
$nama_sn = strtoupper($nama_sn);
|
||||
$id_stock = $this->input->post('id_stock');
|
||||
$qtyStock = $this->Stock->getDataSetStock($id_stock);
|
||||
$qtyStock = $qtyStock[0]['QTY_STOCK'];
|
||||
$qtyReal = $this->Stock->getQtyReal($id_stock);
|
||||
|
||||
if ($id != null) {
|
||||
$data = [
|
||||
'NAMA_SN' => $nama_sn,
|
||||
'STOCK_ID' => $id_stock,
|
||||
'STATUS_SN' => '0'
|
||||
];
|
||||
$action = $this->Stock->update('sn', $data, 'ID_SN', $id);
|
||||
$id_gudang = $this->Stock->getDataSnStock($id);
|
||||
$id_gudang = $id_gudang[0]['GUDANG_ID'];
|
||||
$update = [
|
||||
'GUDANG_ID' => $id_gudang
|
||||
];
|
||||
$action = $this->Stock->update('sn', $update, 'ID_SN', $id);
|
||||
|
||||
if ($action) {
|
||||
$this->output_json(['value' => 1, 'id' => $id, 'nama_sn' => $nama_sn]);
|
||||
$this->session->set_flashdata('flash', 'diedit');
|
||||
} else {
|
||||
$this->output_json(['value' => 0, 'id' => $id, 'nama_sn' => $nama_sn]);
|
||||
}
|
||||
} else {
|
||||
//Fungsi Tambah SN
|
||||
$data = [
|
||||
'NAMA_SN' => $nama_sn,
|
||||
'STOCK_ID' => $id_stock,
|
||||
'STATUS_SN' => '0'
|
||||
];
|
||||
$action = $this->Stock->create('sn', $data);
|
||||
$id_sn = $this->Stock->getID_SN();
|
||||
$id_sn = $id_sn[0]['ID_SN'];
|
||||
$id_gudang = $this->Stock->getDataSnStock($id_sn);
|
||||
$id_gudang = $id_gudang[0]['GUDANG_ID'];
|
||||
$update = [
|
||||
'GUDANG_ID' => $id_gudang
|
||||
];
|
||||
$action = $this->Stock->update('sn', $update, 'ID_SN', $id_sn);
|
||||
|
||||
//Fungsi update Qty Real Tabel Barang
|
||||
$kuantiti = $this->Stock->getKuantitiData($id_stock);
|
||||
$id_kuantiti = $kuantiti[0]['ID_KUANTITI'];
|
||||
$ready_kuantiti = $kuantiti[0]['READY_KUANTITI'];
|
||||
$qty_real = $ready_kuantiti+1;
|
||||
$update = [
|
||||
'READY_KUANTITI' => $qty_real,
|
||||
'GLOBAL_KUANTITI' => $qty_real
|
||||
];
|
||||
$action = $this->Stock->update('kuantiti', $update, 'ID_KUANTITI', $id_kuantiti);
|
||||
$qtyReal = $this->Stock->getQtyReal($id_stock);
|
||||
if ($qtyReal==$qtyStock){
|
||||
$this->output_json(['value' => 2, 'id' => $id, 'nama_sn' => $nama_sn]);
|
||||
$this->session->set_flashdata('flashkunci', 'dilakukan');
|
||||
} else if ($action) {
|
||||
$this->output_json(['value' => 1, 'id' => $id, 'nama_sn' => $nama_sn]);
|
||||
} else {
|
||||
$this->output_json(['value' => 0, 'id' => $id, 'nama_sn' => $nama_sn]);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public function hapussn()
|
||||
{
|
||||
$id = $this->input->post('id_sn');
|
||||
$id_stock = $this->Stock->getDataSnStock($id);
|
||||
$id_stock = $id_stock[0]['STOCK_ID'];
|
||||
$qtyStock = $this->Stock->getDataSetStock($id_stock);
|
||||
$qtyReal = $this->Stock->getQtyReal($id_stock);
|
||||
|
||||
$action = $this->Stock->delete('sn', $id, 'ID_SN');
|
||||
|
||||
//Fungsi update Qty Real Tabel Barang
|
||||
$kuantiti = $this->Stock->getKuantitiData($id_stock);
|
||||
$id_kuantiti = $kuantiti[0]['ID_KUANTITI'];
|
||||
$ready_kuantiti = $kuantiti[0]['READY_KUANTITI'];
|
||||
$qty_real = $ready_kuantiti-1;
|
||||
$update = [
|
||||
'READY_KUANTITI' => $qty_real,
|
||||
'GLOBAL_KUANTITI' => $qty_real
|
||||
];
|
||||
$action = $this->Stock->update('kuantiti', $update, 'ID_KUANTITI', $id_kuantiti);
|
||||
|
||||
if ($qtyReal==$qtyStock[0]['QTY_STOCK']){
|
||||
$this->output_json(['value' => 2, 'message' => 'Berhasil', 'dt' => $action]);
|
||||
$this->session->set_flashdata('flashkurang', 'dilakukan');
|
||||
} else {
|
||||
if ($action) {
|
||||
$this->output_json(['value' => 1, 'message' => 'Berhasil', 'dt' => $action]);
|
||||
} else {
|
||||
$this->output_json(['value' => 0, 'message' => "gagal", 'dt' => $action]);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user