|
Server : Apache System : Linux server.mata-lashes.com 3.10.0-1160.90.1.el7.x86_64 #1 SMP Thu May 4 15:21:22 UTC 2023 x86_64 User : matalashes ( 1004) PHP Version : 8.1.29 Disable Function : NONE Directory : /home/matalashes/.trash/app.bak.9/Controllers/Ic/ |
Upload File : |
<?php
namespace App\Controllers\Ic;
use \App\Controllers\Ps\PS_Controller;
use CodeIgniter\HTTP\RequestInterface;
use CodeIgniter\HTTP\ResponseInterface;
use Psr\Log\LoggerInterface;
use App\Libraries\Ps\Mylibpublic;
class Kirimbarangic extends PS_Controller
{
private $id_column_name = 'mb_id';
public function initController(RequestInterface $request, ResponseInterface $response, LoggerInterface $logger)
{
parent::initController($request, $response, $logger); // TODO: Change the autogenerated stub
parent::setPageTitleBreadcrumb(true, 'List Pengiriman Barang', array('l1' => 'Kirim Barang', 'l2' => 'List Pengiriman Barang'));
parent::setURLActionTable($this->class);
parent::setContentView($this->class);
parent::setBaseContAndModel($this->class, 'KirimBarangIc');
$this->validation_input = $this->validation->setRules([
"tkb_ic_status" => [
'label' => 'Status',
'rules' => 'required',
],
"tkb_ic_fpro_no" => [
'label' => 'No F.PRO.02',
'rules' => 'required',
],
"tkb_ic_fpro_date" => [
'label' => 'Tgl F.PRO.02',
'rules' => 'required',
]
]);
}
public function index()
{
parent::filterStoreLoad();
// parent::indexLoad();
$this->session->set('trash', false);
$this->session->set('keyword', '');
$start = date('Y-m-01');
$end = date('Y-m-t');
if ($_POST) {
$start = $this->request->getVar('start');
$end = $this->request->getVar('end');
}
$dtl = new \App\Models\KirimBarangIc();
$pagination = $dtl->where('deleted_at', null)
// ->where('date(created_at) >=', $start)
// ->where('date(created_at) <=', $end)
->findAll();
$this->view_data['_data'] = $pagination;
$this->view_data['start'] = $start;
$this->view_data['end'] = $end;
$this->render->viewAdmin($this->content_views['table_view'], $this);
}
public function action($state = '', $id = '')
{
$id = $this->myLib->reveal_id($id);
if ($id == 'override404') {
return redirect()->route('override404');
}
$barang = new \App\Models\MasterBarang();
$this->view_data['_barang'] = $barang->where('deleted_at', null)->findAll();
$pob = new \App\Models\MasterPob();
$this->view_data['_pob'] = $pob->where('deleted_at', null)->findAll();
$npbd = new \App\Models\KirimBarangMkt();
$this->view_data['_npbd'] = $npbd->where('deleted_at', null)->where('tkb_mkt_status_ic', 1)->where('tkb_mkt_npbdno IS NOT', null)->findAll();
if ($state == 'add') {
$this->mylib = new Mylibpublic();
$this->view_data['state'] = 'add';
$this->view_data['button'] = 'Simpan';
$this->view_data['upload_data'] = $this->upload_data;
if ($_POST) {
if (!$this->validation_input->withRequest($this->request)->run()) {
$this->view_data['error'] = true;
$this->view_data['message'] = 'Ada kesalahan dalam pengisian form!';
$this->view_data['error_list'] = $this->validation_input->getErrors();
} else {
unset($_POST['id']);
$_mdl = $this->myLib->getNewModel($this->models['base_model']);
$_datamodel = array();
$_datamodel['tkb_ic_fpro_no'] = $this->request->getVar('tkb_ic_fpro_no');
$_datamodel['tkb_ic_fpro_date'] = $this->request->getVar('tkb_ic_fpro_date');
$_datamodel['tkb_ic_status'] = 0;
if(isset($_POST['kirim'])){
$_datamodel['tkb_ic_status'] = 1;
$_datamodel['tkb_ic_status_pro'] = 0;
}
$item = count($this->request->getVar('item'));
$i = $this->request->getVar('item');
$q = $this->request->getVar('qty');
$e = $this->request->getVar('nopob');
$n = $this->request->getVar('npbd');
$tkb_ic_item = array();
$sum = 0;
for ($j=0; $j < $item; $j++) {
$val = str_replace('.',"",$q[$j]);
$data = array(
'item' => $i[$j],
'qty' => $val,
'nopob' => $e[$j],
'npbd' => $n[$j],
);
array_push($tkb_ic_item, $data);
}
$_datamodel['tkb_ic_item'] = json_encode($tkb_ic_item);
try {
if (!$_mdl->save($_datamodel)) {
throw new \CodeIgniter\Database\Exceptions\DatabaseException();
} else {
$this->setMessage(false, true, $this->msgLib->scs_add());
}
} catch (Exception $e) {
$this->setMessage(true, false, $this->msgLib->err_add());
}
}
}
$this->render->viewAdmin($this->content_views['form_add_view'], $this);
} else if ($state == 'edit') {
// parent::stateEdit($id);
$mdl = $this->myLib->getNewModel($this->models['base_model']);
$_data = $mdl->find($id);
$this->view_data['state'] = 'edit';
$this->view_data['button'] = 'Simpan';
$this->view_data['id'] = $id;
$this->view_data['_data'] = $_data;
$this->view_data['upload_data'] = $this->upload_data;
if ($_POST) {
if (!$this->validation_input->withRequest($this->request)->run()) {
$this->view_data['error'] = true;
$this->view_data['message'] = 'Ada kesalahan dalam pengisian form!';
$this->view_data['error_list'] = $this->validation_input->getErrors();
} else {
unset($_POST['id']);
$_datamodel['tkb_ic_fpro_no'] = $this->request->getVar('tkb_ic_fpro_no');
$_datamodel['tkb_ic_fpro_date'] = $this->request->getVar('tkb_ic_fpro_date');
$_datamodel['tkb_ic_status'] = 0;
$item = count($this->request->getVar('item'));
$i = $this->request->getVar('item');
$q = $this->request->getVar('qty');
$e = $this->request->getVar('nopob');
$n = $this->request->getVar('npbd');
$tkb_ic_item = array();
$sum = 0;
for ($j=0; $j < $item; $j++) {
$val = str_replace('.',"",$q[$j]);
$data = array(
'item' => $i[$j],
'qty' => $val,
'nopob' => $e[$j],
'npbd' => $n[$j],
);
array_push($tkb_ic_item, $data);
}
$_datamodel['tkb_ic_item'] = json_encode($tkb_ic_item);
if(isset($_POST['kirim'])){
$_datamodel['tkb_ic_status'] = 1;
$_datamodel['tkb_ic_status_pro'] = 0;
for ($j=0; $j < $item; $j++) {
$val = str_replace('.',"",$q[$j]);
$stok = new \App\Models\MasterStok();
$datamodel = array(
'mb_id' => $i[$j],
'ms_stok_bbwip_transit' => (int)$val,
);
$stok->save($datamodel);
}
}
try {
if (!$mdl->update($id, $_datamodel)) {
throw new \CodeIgniter\Database\Exceptions\DatabaseException();
} else {
$this->setMessage(false, true, $this->msgLib->scs_edit());
}
} catch (Exception $e) {
$this->setMessage(true, false, $this->msglib->err_edit());
}
}
}
$this->render->viewAdmin($this->content_views['form_edit_view'], $this);
} else if ($state == 'delete') {
parent::stateDelete($id);
} else if ($state == 'restore') {
parent::stateRestore($this->id_column_name, $id);
} else if ($state == 'deletepermanent') {
parent::stateDeletePermanent($this->id_column_name, $id);
} else if ($state == 'view') {
parent::stateView($id);
} else {
return redirect()->route('override404');
}
}
public function trash()
{
parent::filterStoreLoad();
parent::trashView();
}
public function cekstok(){
if(isset($_POST)){
$id=$_POST['id'];
$brg = new \App\Models\MasterStok();
$_brg = $brg->get_sum_stok_bahanbaku_transit($id);
$npbd = new \App\Models\KirimBarangMkt();
$_npbd = $npbd->where('deleted_at', null)->where('tkb_mkt_status_ic', 1)->where('tkb_mkt_npbdno IS NOT', null)->orderBy('tkb_mkt_id', 'DESC')->findAll();
$temp_npbd = array();
$npbd = '';
foreach ($_npbd as $d) {
$json = json_decode($d->tkb_mkt_item);
foreach($json as $j){
$i = $j->item;
if ($i == $id && !in_array($d->tkb_mkt_npbdno, $temp_npbd)){
array_push($temp_npbd,$d->tkb_mkt_npbdno);
$npbd .= "<option value='".$d->tkb_mkt_npbdno."'>".$d->tkb_mkt_npbdno."</option>";
}
}
}
// foreach ($query as $value) {
// $data .= "<option value='".$value->mbm_id."'>".$value->mbm_item."</option>";
// }
if ($_brg->stok != 0) {
echo json_encode(array(
"statusCode"=>200,
"npbd"=>$npbd,
"stok"=>$_brg->stok
));
} else {
echo json_encode(array(
"statusCode"=>400,
"npbd"=>$npbd,
"stok"=>0
));
}
}
}
}