Files
CKB/public/js/warehouse_management/stock_audit/index.js

2 lines
7.8 KiB
JavaScript

console.log("Stock audit JS loaded"),$(document).ready((function(){console.log("Initializing stock audit table..."),$(".select2").select2({placeholder:"Pilih...",allowClear:!0,width:"100%"}),$(".datepicker").datepicker({format:"yyyy-mm-dd",autoclose:!0,todayHighlight:!0,orientation:"bottom auto",language:"id",clearBtn:!0,container:"body"});var e=$("#stock-audit-table"),t=e.data("route");console.log("Table route:",t);var a=e.DataTable({processing:!0,serverSide:!0,language:{processing:'<div class="d-flex justify-content-center"><div class="spinner-border text-primary" role="status"><span class="sr-only">Memproses...</span></div></div>',loadingRecords:"Memuat data...",zeroRecords:"Tidak ada data yang ditemukan",emptyTable:"Tidak ada data tersedia"},ajax:{url:t,data:function(e){e.dealer=$("#filter-dealer").val(),e.product=$("#filter-product").val(),e.change_type=$("#filter-change-type").val(),e.date=$("#filter-date").val(),console.log("Ajax data with ordering:",e),console.log("Order info:",e.order),console.log("Columns info:",e.columns)},error:function(e,t,a){console.error("Ajax error:",t),console.error("Response:",e.responseText)}},columns:[{data:"DT_RowIndex",name:"DT_RowIndex",orderable:!1,searchable:!1,width:"5%"},{data:"product_name",name:"product_name",orderable:!0},{data:"dealer_name",name:"dealer_name",orderable:!0},{data:"change_type",name:"change_type",orderable:!0},{data:"quantity_change",name:"quantity_change",className:"text-center",orderable:!0},{data:"stock_before_after",name:"stock_before_after",className:"text-center",orderable:!0},{data:"source_info",name:"source_info",orderable:!0},{data:"user_name",name:"user_name",orderable:!0},{data:"created_at",name:"created_at",orderable:!0},{data:"action",name:"action",orderable:!1,searchable:!1,width:"10%"}],order:[[8,"desc"]],pageLength:10,responsive:!0,ordering:!0,orderMulti:!1});console.log("Table initialized:",a),a.on("processing.dt",(function(e,t,a){a?console.log("DataTable processing started (ordering/filtering)"):console.log("DataTable processing finished")})),a.on("order.dt",(function(){console.log("Order changed:",a.order())})),$(document).on("click","#modal-close-btn, #modal-close-footer-btn",(function(){console.log("Manual close button clicked"),$("#auditDetailModal").modal("hide")})),$(document).on("click","#auditDetailModal",(function(e){e.target===this&&(console.log("Modal backdrop clicked"),$("#auditDetailModal").modal("hide"))})),$(document).on("keydown",(function(e){27===e.keyCode&&$("#auditDetailModal").hasClass("show")&&(console.log("ESC key pressed"),$("#auditDetailModal").modal("hide"))})),$("#auditDetailModal").on("hidden.bs.modal",(function(){console.log("Modal hidden"),$("#modal-loading").show(),$("#modal-error").hide(),$("#modal-content").hide()})),$("#apply-filters").click((function(){console.log("Apply filters clicked, reloading table..."),console.log("Current filter values:",{dealer:$("#filter-dealer").val(),product:$("#filter-product").val(),change_type:$("#filter-change-type").val(),date:$("#filter-date").val()}),a.ajax.reload()})),$("#filter-date").keypress((function(e){13==e.which&&(console.log("Enter pressed on date filter, applying filters..."),a.ajax.reload())})),$("#reset-filters").click((function(){console.log("Resetting filters..."),$("#filter-dealer").val(null).trigger("change.select2"),$("#filter-product").val(null).trigger("change.select2"),$("#filter-change-type").val(null).trigger("change.select2"),$("#filter-date").val("").datepicker("update"),console.log("Filters reset, values after reset:",{dealer:$("#filter-dealer").val(),product:$("#filter-product").val(),change_type:$("#filter-change-type").val(),date:$("#filter-date").val()}),console.log("Reloading table after reset..."),a.ajax.reload()}))})),window.showAuditDetail=function(e){console.log("Showing audit detail for ID:",e),$("#modal-loading").show(),$("#modal-error").hide(),$("#modal-content").hide(),$("#auditDetailModal").modal("show"),$.ajax({url:"/warehouse/stock-audit/".concat(e,"/detail"),method:"GET",success:function(e){console.log("Detail response:",e),$("#modal-loading").hide(),e.success?(function(e,t){console.log("Populating modal content:",e),$("#product-name").text(e.stock.product.name),$("#dealer-name").text(e.stock.dealer.name),$("#previous-quantity").text(e.previous_quantity),$("#new-quantity").text(e.new_quantity),$("#user-name").text(e.user?e.user.name:"-"),$("#created-at").text(e.created_at_formatted),$("#description").text(e.description||"-");var a="",o="";e.quantity_change>0?(a="text-success",o="+"):e.quantity_change<0?(a="text-danger",o=""):(a="text-muted",o=""),$("#quantity-change").html('<span class="'.concat(a,'">').concat(o).concat(e.quantity_change,"</span>"));var n="";switch(e.change_type){case"increase":n="text-success";break;case"decrease":n="text-danger";break;case"adjustment":n="text-warning";break;default:n="text-muted"}if($("#change-type").html('<span class="font-weight-bold '.concat(n,'">').concat(e.change_type_label,"</span>")),t){if($("#source-detail").show(),"mutation"===t.type){var r=t.data;$("#source-title").text("Mutasi Stock: ".concat(r.mutation_number));var l='\n <div class="row">\n <div class="col-md-6">\n <table class="table table-sm">\n <tr>\n <td><strong>Dari Dealer:</strong></td>\n <td>'.concat(r.from_dealer?r.from_dealer.name:"-","</td>\n </tr>\n <tr>\n <td><strong>Ke Dealer:</strong></td>\n <td>").concat(r.to_dealer?r.to_dealer.name:"-","</td>\n </tr>\n <tr>\n <td><strong>Status:</strong></td>\n <td>").concat(r.status,'</td>\n </tr>\n </table>\n </div>\n <div class="col-md-6">\n <table class="table table-sm">\n <tr>\n <td><strong>Diminta oleh:</strong></td>\n <td>').concat(r.requested_by?r.requested_by.name:"-","</td>\n </tr>\n <tr>\n <td><strong>Disetujui oleh:</strong></td>\n <td>").concat(r.approved_by?r.approved_by.name:"-","</td>\n </tr>\n <tr>\n <td><strong>Tanggal Disetujui:</strong></td>\n <td>").concat(r.approved_at_formatted||"-","</td>\n </tr>\n </table>\n </div>\n </div>\n ");$("#source-content").html(l)}else if("opname"===t.type){var d=t.data;$("#source-title").text("Opname");var s='\n <table class="table table-sm">\n <tr>\n <td><strong>Dealer:</strong></td>\n <td>'.concat(d.dealer?d.dealer.name:"-","</td>\n </tr>\n <tr>\n <td><strong>User:</strong></td>\n <td>").concat(d.user?d.user.name:"-","</td>\n </tr>\n <tr>\n <td><strong>Status:</strong></td>\n <td>").concat(d.status||"-","</td>\n </tr>\n </table>\n ");$("#source-content").html(s)}}else $("#source-detail").hide()}(e.data,e.source_detail),$("#modal-content").show()):($("#error-message").text(e.message),$("#modal-error").show())},error:function(e){console.error("Detail AJAX error:",e),$("#modal-loading").hide(),$("#error-message").text("Gagal memuat detail audit"),$("#modal-error").show()}})};
//# sourceMappingURL=index.js.map