File: /www/wwwroot/erp.nhatnamsst.com/storage/framework/views/5feb00f9cc47c4382026b9fc72e2e99b.php
<?php $__env->startSection('title', $pageTitle ?? __('Đơn đặt hàng')); ?>
<?php $__env->startPush('libs-css'); ?>
<link href="<?php echo e(asset('/libs/select2/css/select2.min.css')); ?>" rel="stylesheet">
<link href="<?php echo e(asset('/libs/select2/css/select2-bootstrap-5-theme.min.css')); ?>" rel="stylesheet">
<?php $__env->stopPush(); ?>
<?php $__env->startPush('libs-js'); ?>
<script src="<?php echo e(asset('/libs/select2/js/select2.min.js')); ?>"></script>
<?php $__env->stopPush(); ?>
<?php $__env->startSection('datatable'); ?>
<?php
$currentAdmin = get_auth_admin();
$canCreate = $currentAdmin && (
$currentAdmin->checkIsSuperAdmin() ||
($currentAdmin->role && in_array($currentAdmin->role, [
\Domains\Core\Enums\AdminRole::ADMIN,
\Domains\Core\Enums\AdminRole::SALE,
\Domains\Core\Enums\AdminRole::LEADER_SALE
]))
);
?>
<div class="mb-3">
<div class="d-flex justify-content-between align-items-center mb-2">
<div class="d-flex align-items-center gap-2">
<button type="button" class="btn small btn-primary" id="btn-toggle-search">
<i class="ti ti-search"></i> Tìm kiếm
</button>
</div>
<div class="d-flex align-items-center gap-2">
<button type="button" class="btn small btn-primary" id="btn-export">
<i class="ti ti-file-export"></i> Export
</button>
<?php if($canCreate): ?>
<a href="<?php echo e(route('cms.purchase_order.create')); ?>" class="btn small btn-primary">
<i class="ti ti-plus"></i> Nhập ĐƠN ĐẶT HÀNG
</a>
<?php endif; ?>
</div>
</div>
<div id="filter-form" style="display: none; background: white; padding: 15px; border-radius: 4px; margin-bottom: 20px;">
<div class="row">
<div class="col-md-4 mb-3">
<label for="filter_po_number" class="form-label">Số đơn đặt hàng:</label>
<select class="form-select select2-bs5-ajax" id="filter_po_number" name="filter_po_number" data-url="<?php echo e(route('cms.purchase_order.get-purchase-order-numbers')); ?>">
<option value="">-- Chọn số PO --</option>
</select>
</div>
<div class="col-md-4 mb-3">
<label for="filter_brand" class="form-label">Hãng:</label>
<select class="form-select" id="filter_brand" name="filter_brand">
<option value="">-- Chọn hãng --</option>
<?php $__currentLoopData = $brands ?? []; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $brand): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
<option value="<?php echo e($brand->id); ?>"><?php echo e($brand->name); ?></option>
<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>
</select>
</div>
<div class="col-md-4 mb-3">
<label for="filter_customer" class="form-label">Khách hàng:</label>
<select class="form-select" id="filter_customer" name="filter_customer">
<option value="">-- Chọn khách hàng --</option>
<?php $__currentLoopData = $customers ?? []; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $customer): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
<option value="<?php echo e($customer->id); ?>"><?php echo e($customer->name); ?></option>
<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>
</select>
</div>
</div>
<div class="row">
<div class="col-12">
<button type="button" class="btn small btn-primary" id="btn-search">
<i class="ti ti-search"></i> Tìm
</button>
<button type="button" class="btn small btn-secondary" id="btn-clear-search">
<i class="ti ti-x"></i> Xóa tìm
</button>
</div>
</div>
</div>
</div>
<div class="table-responsive position-relative">
<?php echo $dataTable->table(['class' => 'table table-bordered'], true); ?>
</div>
<?php $__env->stopSection(); ?>
<?php $__env->startPush('js'); ?>
<script>
$(document).ready(function() {
var tableId = '<?php echo e($dataTable->getTableAttribute('id')); ?>';
var datatable = window.LaravelDataTables[tableId];
var originalUrl = datatable.ajax.url();
// Initialize select2 for filter_po_number
// Wait for select2 library to be loaded
function initSelect2() {
if (typeof $.fn.select2 === 'undefined') {
setTimeout(initSelect2, 100);
return;
}
$('#filter_po_number').select2({
theme: 'bootstrap-5',
placeholder: '-- Chọn số PO --',
allowClear: true,
ajax: {
url: '<?php echo e(route('cms.purchase_order.get-purchase-order-numbers')); ?>',
dataType: 'json',
delay: 250,
data: function (params) {
return {
q: params.term || ''
};
},
processResults: function (data) {
return {
results: data.results || []
};
},
cache: true
},
minimumInputLength: 0
});
}
initSelect2();
// Toggle filter form
$('#btn-toggle-search').on('click', function() {
$('#filter-form').slideToggle();
});
// Search button
$('#btn-search').on('click', function() {
var poNumber = $('#filter_po_number').val();
var brand = $('#filter_brand').val();
var customer = $('#filter_customer').val();
var params = [];
if (poNumber) params.push('filter_po_number=' + encodeURIComponent(poNumber));
if (brand) params.push('filter_brand=' + encodeURIComponent(brand));
if (customer) params.push('filter_customer=' + encodeURIComponent(customer));
var newUrl = originalUrl;
if (params.length > 0) {
var separator = originalUrl.indexOf('?') > -1 ? '&' : '?';
newUrl = originalUrl.split('?')[0] + separator + params.join('&');
} else {
newUrl = originalUrl.split('?')[0];
}
datatable.ajax.url(newUrl).load();
});
// Clear search button
$('#btn-clear-search').on('click', function() {
$('#filter_po_number').val(null).trigger('change');
$('#filter_brand').val('');
$('#filter_customer').val('');
datatable.ajax.url(originalUrl.split('?')[0]).load();
});
// Export button
$('#btn-export').on('click', function() {
var poNumber = $('#filter_po_number').val();
var brand = $('#filter_brand').val();
var customer = $('#filter_customer').val();
var params = [];
if (poNumber) params.push('filter_po_number=' + encodeURIComponent(poNumber));
if (brand) params.push('filter_brand=' + encodeURIComponent(brand));
if (customer) params.push('filter_customer=' + encodeURIComponent(customer));
var exportUrl = '<?php echo e(route('cms.purchase_order.export')); ?>';
if (params.length > 0) {
exportUrl += '?' + params.join('&');
}
window.location.href = exportUrl;
});
});
</script>
<?php $__env->stopPush(); ?>
<?php echo $__env->make('cms.layouts.datatable', array_diff_key(get_defined_vars(), ['__data' => 1, '__path' => 1]))->render(); ?><?php /**PATH /www/wwwroot/erp.nhatnamsst.com/resources/views/cms/purchase_orders/index.blade.php ENDPATH**/ ?>