Untitled
unknown
php
4 years ago
18 kB
30
Indexable
<link rel="stylesheet" href="<?= getAssetURL() ?>adminLTE/bower_components/datatables.net-bs/css/dataTables.bootstrap.min.css"> <link rel="stylesheet" href="<?= getAssetURL() ?>adminLTE/bower_components/jquery-ui/themes/base/jquery-ui.css"> <style> .example-modal .modal { position: relative; top: auto; bottom: auto; right: auto; left: auto; display: block; z-index: 1; } .example-modal .modal { background: transparent !important; } .fa-eye::before { font-size: 25px; } .grey-header { background-color: #d4d9dd; } .right-position { /*text-align: right;*/ float: right; } .left-position { /*text-align: left;*/ float: left; } /* .cellRed { background-color: red; color: white; } .cellLightGray { background-color: lightgray; color: black; } .cellOrange { background-color: darkorange; color: white; } .cellGreen { background-color: darkgreen; color: white; }*/ .cellRed { color: darkred; font-weight: bold; } .cellLightGray { font-weight: bold; color: darkgray; } .cellOrange { font-weight: bold; color: darkorange; } .cellGreen { font-weight: bold; color: darkgreen; } .radio-toolbar { margin: auto; margin-top: 10px; margin-left: 40%; } .radio-toolbar input[type="radio"] { opacity: 0; position: fixed; width: 0; } .radio-toolbar label { display: inline-block; background-color: #ddd; padding: 10px 20px; font-family: sans-serif, Arial; font-size: 16px; border: 2px solid #444; border-radius: 4px; } .radio-toolbar label:hover { background-color: #dfd; } .radio-toolbar input[type="radio"]:focus + label { border: 2px dashed #444; } .radio-toolbar input[type="radio"]:checked + label { background-color: #bfb; border-color: #4c4; } </style> <script src="<?= getAssetURL() ?>adminLTE/bower_components/datatables.net/js/jquery.dataTables.min.js"></script> <script src="<?= getAssetURL() ?>adminLTE/bower_components/datatables.net-bs/js/dataTables.bootstrap.min.js"></script> <!--<script src="https://code.jquery.com/jquery-migrate-3.0.1.js"></script>--> <script src="<?= getAssetURL() ?>adminLTE/bower_components/jquery-ui/jquery-ui.min.js"></script> <script> var table; $(function() { var BASE_URL = '<?= BASE_URL ?>'; $('#insertNewUr').on('click', function() { alert('insertNewUr'); }); $('#createPR').on('click', function() { var value = $(this).val(); // alert(value); }); filldatatables(); }); function filldatatables(){ table = $('#urList').DataTable({ 'paging': false, 'pageLength': 50, 'lengthChange': false, 'searching': false, 'order': [], 'info': true, 'autoWidth': true, 'alengthMenu': [ [-1, 25, 50, 100], ['All', 25, 50, 100] ], 'sScrollX': '100%', 'sScrollXInner': '100%', "columnDefs": [ { "targets": [ 8 ], "visible": false }, { "targets": [ 9 ], "visible": false }, { "targets": [ 10 ], "visible": false }, { "targets": [ 11 ], "visible": false } ] }); } </script> <!-- Content Wrapper. Contains page content --> <div class="content-wrapper" id="purchaseListBody"> <!-- Content Header (Page header) --> <section class="content-header"> <h1> Picking Slip <small>Stock Analysis</small> </h1> <ol class="breadcrumb"> <li><a href="#"><i class="fa fa-dashboard"></i> Home</a></li> <li class="active">PS - Stock Analysis</li> </ol> <hr /> </section> <section class="content"> <div class="row"> <div class="col-xs-12"> <div class="box box-primary"> <form method="post" action="<?= BASE_URL ?>pickingSlip/createFromPS"> <div class="radio-toolbar"> <input type="radio" id="radioPR" name="radioStockAnalysis" value="PR"> <label for="radioPR">Purchase Request</label> <input type="radio" id="radioGI" name="radioStockAnalysis" value="GI"> <label for="radioGI">Good Issue</label> </div> <div class="box-header "> <h3 class="box-title"></h3> <div class="left-position"> <!-- <btn class="btn btn-success" id="insertNewUr" >Insert New UR</btn>--> PS Number : <?= $psNo ?> </div> <div class="right-position"> <button type="submit" class="btn btn-success rowPR" style="display:none" id="createFromPS" name="action" value="createPR">Create Purchase Request</button> <!-- style="visibility:hidden" --> <button type="submit" class="btn btn-warning rowGI" style="display:none" id="createGI" name="action" value="createGI">Create Goods Issued</button> <input type="hidden" name="psNumber" value="<?= $psNo ?>"> </div> </div> <div class="box-header"> <table id="urList" class="table table-bordered table-striped"> <thead> <tr> <th>Material Code<br />Part Code</th> <th>Description</th> <th>Brand</th> <th>Request</th> <th>SOH</th> <th>Available</th> <th>GIT</th> <th>UOM</th> <th>History PR</th> <th>Purchase Req</th> <th>History GI</th> <th>Goods Issued</th> </tr> </thead> <tbody> <?php //$count = 0; // if($resultApi['code'] == 200) { if ($code == 200) { // $dataDecode = json_decode($data,true); $count = 0; foreach ($data as $i => $ra) { // $docDate = date('j F Y',strtotime($ra['doc_date'])); $partCode = $ra['part_code']; if (count(explode(' ', $partCode)) > 1) { $partCodeArray = explode(' ', $partCode); $partCode = implode('|-----|', $partCodeArray); } $partCode = str_replace(".", "|", $partCode); $partCode = str_replace(",", "|COMMASIGN|", $partCode); // $partCode = str_replace('"', '|QUOTESIGN|', $partCode); // $partCode = str_replace('(', '|KURUNGBUKASIGN|', $partCode); // $partCode = str_replace(')', '|KURUNGTUTUPSIGN|', $partCode); // $partCode = str_replace('@', '|ATSIGN|', $partCode); $qtyReq = $ra['part_qty']; $qtyPR = $ra['QtyPR']; $qtyGI = $ra['Qtygs']; $disable = ''; if ($qtyReq == ($qtyPR + $qtyGI) || $qtyReq < ($qtyPR + $qtyGI)) { $disable = 'disabled'; } else { $count = $count + 1; } $param = $ra['qtysoh'] . "--" . "detail[GI][" . $partCode . "]"; ?> <tr> <td><?= $ra['part_code'] ?></td> <td><?= $ra['part_desc'] ?></td> <td><?= $ra['brand_name'] ?></td> <td><?= number_format($ra['part_qty'],2) ?></td> <td id="detail[GI][<?= $ra['qtysoh'] ?>]"><?= number_format($ra['qtysoh'],2) ?></td> <td id="detail[GI][<?= $ra['qty_doc_avai'] ?>]"><?= number_format($ra['qty_doc_avai'],2) ?></td> <td><?= number_format($ra['qtygit'],0) ?></td> <td><?= $ra['part_unit'] ?></td> <td><?= number_format($ra['QtyPR'],2) ?></td> <td><input type="number" name="detail[PR][<?= $partCode ?>]" class="inpt_pr" id="detail[PR][<?= $partCode ?>]" min="0" onkeypress="return hanyaAngka(event)" onchange="checkQtyPR(<?= $ra['qtysoh'] . ",'" . $partCode . "','" . $ra['Qtygs'] . "','" . $ra['part_qty'] . "','" . $ra['QtyPR'] . "'" ?>)" <?php echo $disable; ?>></td> <td><?= number_format($ra['Qtygs'],2) ?></td> <td><input type="number" name="detail[GI][<?= $partCode ?>]" class="inpt_gi" id="detail[GI][<?= $partCode ?>]" min="0" onkeypress="return hanyaAngka(event)" onchange="checkQtyGI( <?= $ra['qtysoh'] . ",'" . $partCode . "','" . $ra['Qtygs'] . "','" . $ra['part_qty'] . "','" . $ra['QtyPR'] . "'" ?>)" <?php echo $disable; ?>></td> </tr> <?php } } if ($count <= 0) { ?> <script> document.getElementById('createFromPS').disabled = true; document.getElementById('createGI').disabled = true; </script> <?php } ?> </tbody> </table> <div class="col-md-3 col-xs-12"> </div> <div class="col-md-3 col-xs-12"> </div> </div> <!-- /.box-header --> <div class="box-body" id="fullTable"> </div> <!-- /.box-body --> </form> </div> <!-- /.box --> </div> </div> </section> </div> <script type="text/javascript"> $(document).ready(function() { $(window).keydown(function(event){ if(event.keyCode == 13) { event.preventDefault(); return false; } }); }); function checkQtyPR(a, b, c, d, e) { var idQty = b; var qtyReq = d; var qtyPRReq = e; var strPRInput = 'detail[PR][' + idQty + ']'; var qtyPRInput = document.getElementById(strPRInput).value; // Input PR var qtyHistori = Number(qtyPRReq); // Histori PR var totalQty = Number(qtyPRInput) + Number(qtyPRReq); var maxQty = Number(qtyReq) - Number(qtyPRReq); if (totalQty <= qtyReq) { document.getElementById('createFromPS').disabled = false; document.getElementById('createGI').disabled = false; } else { alert("Anda sudah melakukan transaksi histori sebanyak " + qtyHistori + ". Maksimal adalah " + maxQty); document.getElementById(strPRInput).value = ""; document.getElementById('createFromPS').disabled = true; return false; } } function checkQtyGI(a, b, c, d, e) { var qtyAvailable = a; var idQty = b; var qtyHisGI = c; var strInput = 'detail[GI][' + idQty + ']'; var qtyInput = document.getElementById(strInput).value; //Input GI var qtyHistori = Number(qtyHisGI); // Histori GI var totalQty = Number(qtyInput) + Number(qtyHisGI) ; if (qtyInput > qtyAvailable) { alert("Anda memasukan angka melebihi nilai Stock on Hand"); document.getElementById(strInput).value = ""; document.getElementById('createGI').disabled = true; return false; } else { document.getElementById('createGI').disabled = false; } } // function checkQty(a, b, c, d, e) { // var qtyAvailable = a; // var idQty = b; // var qtyHisGI = c; // var qtyReq = d; // var qtyPRReq = e; // var strInput = 'detail[GI][' + idQty + ']'; // var strPRInput = 'detail[PR][' + idQty + ']'; // var qtyPRInput = document.getElementById(strPRInput).value; // Input PR // var qtyInput = document.getElementById(strInput).value; // // var qtyHistori = Number(qtyPRReq) + Number(qtyHisGI); // Histori PR + Histori GI // var totalQty = Number(qtyInput) + Number(qtyHisGI) + Number(qtyPRInput) + Number(qtyPRReq); // Number(qtyInput) + // var maxQty = Number(qtyReq) - Number(qtyHisGI) - Number(qtyPRReq); // if (totalQty <= qtyReq) { // document.getElementById('createFromPS').disabled = false; // document.getElementById('createGI').disabled = false; // if (qtyInput > qtyAvailable) { // alert("Anda memasukan angka melebihi nilai Stock on Hand"); // document.getElementById(strInput).value = ""; // // document.getElementById('createFromPS').disabled = true; // document.getElementById('createGI').disabled = true; // return false; // } else { // // document.getElementById('createFromPS').disabled = false; // document.getElementById('createGI').disabled = false; // } // } else { // alert("Anda sudah melakukan transaksi histori sebanyak " + qtyHistori + ". Maksimal adalah " + maxQty); // // document.getElementById(strInput).value = ""; // document.getElementById('createFromPS').disabled = true; // document.getElementById('createGI').disabled = true; // return false; // } // } function hanyaAngka(evt) { var charCode = (evt.which) ? evt.which : event.keyCode if (charCode > 31 && (charCode != 46 && charCode < 48 || charCode > 57)) return false; return true; } $("#radioPR").click(function() { var x = document.getElementsByClassName("inpt_gi"); for(var n = 0; n < x.length; n++) { x[n].value = ""; } var divsToHide = document.getElementsByClassName("rowPR"); //divsToHide is an array for(var i = 0; i < divsToHide.length; i++){ divsToHide[i].style.display = "block"; } var divsToHide = document.getElementsByClassName("rowGI"); //divsToHide is an array for(var i = 0; i < divsToHide.length; i++){ divsToHide[i].style.display = "none"; } table.columns( [8,9] ).visible( true ); table.columns( [10,11] ).visible( false ); }); $("#radioGI").click(function(){ var x = document.getElementsByClassName("inpt_pr"); for(var n = 0; n < x.length; n++) { x[n].value = ""; } var divsToHide = document.getElementsByClassName("rowPR"); //divsToHide is an array for(var i = 0; i < divsToHide.length; i++){ divsToHide[i].style.display = "none"; } var divsToHide = document.getElementsByClassName("rowGI"); //divsToHide is an array for(var i = 0; i < divsToHide.length; i++){ divsToHide[i].style.display = "block"; } table.columns( [8,9] ).visible( false ); table.columns( [10,11] ).visible( true ); }); </script> <!-- /.row --> <!-- ."---detail[GI][".$partCode."]" -->
Editor is loading...