修复分类锁的bug

This commit is contained in:
2026-05-29 23:41:58 +08:00
parent 26e42dd2a4
commit 5abb8277e3
11 changed files with 251 additions and 28 deletions
@@ -21,7 +21,7 @@
</div>
<div class="col-12 mt-3 text-center">
@if(!$url)
<a href="javascript:history.back(-1);" class="btn btn-outline-dark">{{ __('dujiaoka.callback') }}</a>
<a href="{{ url('/') }}" class="btn btn-outline-dark">{{ __('dujiaoka.callback') }}</a>
@else
<a href="{{ $url }}" class="btn btn-outline-dark">{{ __('dujiaoka.callback') }}</a>
@endif
@@ -226,17 +226,73 @@
});
$('#group-password-submit').click(function() {
var groupId = $('#group-password-id').val();
$.post("{{ url('verify-group-password') }}", {
_token: "{{ csrf_token() }}",
group_id: $('#group-password-id').val(),
group_id: groupId,
password: $('#group-password-input').val()
}, function(res) {
if (res.code === 200) {
window.location.reload();
unlockGroup(groupId, res.data);
hideGroupPasswordModal();
} else {
alert(res.msg);
}
});
});
function hideGroupPasswordModal() {
var modalEl = document.getElementById('group-password-modal');
if (typeof bootstrap !== 'undefined' && bootstrap.Modal) {
bootstrap.Modal.getOrCreateInstance(modalEl).hide();
} else {
$('#group-password-modal').modal('hide');
}
}
function unlockGroup(groupId, group) {
var $link = $('.group-password-link[data-group-id="' + groupId + '"]');
$link.removeClass('group-password-link')
.attr('href', '#group-' + groupId)
.attr('data-bs-toggle', 'tab')
.find('.ali-icon')
.remove();
$('#group-' + groupId + ' .row').html(renderGroupGoods(group.goods || []));
if (typeof bootstrap !== 'undefined' && bootstrap.Tab) {
bootstrap.Tab.getOrCreateInstance($link[0]).show();
} else if (typeof $link.tab === 'function') {
$link.tab('show');
} else {
$('.category-menus a').removeClass('active');
$('.tab-pane').removeClass('active show');
$link.addClass('active');
$('#group-' + groupId).addClass('active show');
}
}
function renderGroupGoods(goodsList) {
var html = '';
$.each(goodsList, function(index, goods) {
html += '<div class="col"><div class="card position-relative">';
if (parseInt(goods.type) === {{ \App\Models\Goods::AUTOMATIC_DELIVERY }}) {
html += '<span class="badge bg-success position-absolute top-0 start-0"><i class="ali-icon">&#xe7db;</i> {{ __('goods.fields.automatic_delivery') }}</span>';
} else {
html += '<span class="badge bg-warning position-absolute top-0 start-0"><i class="ali-icon">&#xe74b;</i> {{ __('goods.fields.manual_processing') }}</span>';
}
html += '<img src="' + goods.picture_url + '" class="card-img-top" alt="' + goods.gd_name + '">';
html += '<div class="card-body"><h6 class="card-title text-truncate">' + goods.gd_name + '</h6>';
html += '<button type="button" class="btn btn-sm btn-outline-success"><i class="ali-icon">&#xe703;</i> <strong>' + goods.actual_price + '</strong></button>';
if (goods.wholesale_price_cnf) {
html += ' <button type="button" class="btn btn-sm btn-outline-warning"><i class="ali-icon">&#xe77d;</i> {{ __('dujiaoka.home_discount') }}</button>';
}
html += '<h6 class="mt-2"><small class="text-muted">{{ __('goods.fields.in_stock') }}' + goods.in_stock + '</small></h6>';
html += '<a href="/buy/' + goods.id + '" class="btn btn-primary fr"><i class="ali-icon">&#xe7d8;</i> {{ __('dujiaoka.order_now') }}</a>';
html += '</div></div></div>';
});
return html;
}
</script>
@stop