diff --git a/gestaoRaul/clients/__pycache__/views.cpython-312.pyc b/gestaoRaul/clients/__pycache__/views.cpython-312.pyc
index c419774..efcd208 100644
Binary files a/gestaoRaul/clients/__pycache__/views.cpython-312.pyc and b/gestaoRaul/clients/__pycache__/views.cpython-312.pyc differ
diff --git a/gestaoRaul/clients/templates/viewclient.html b/gestaoRaul/clients/templates/viewclient.html
index 44d5b53..6c86a00 100644
--- a/gestaoRaul/clients/templates/viewclient.html
+++ b/gestaoRaul/clients/templates/viewclient.html
@@ -17,10 +17,10 @@ Comandas
{{client.name}}
R$ {{client.id | totalFiado}}
- R$
+
diff --git a/gestaoRaul/clients/views.py b/gestaoRaul/clients/views.py
index bc29762..43d7c1c 100644
--- a/gestaoRaul/clients/views.py
+++ b/gestaoRaul/clients/views.py
@@ -96,13 +96,13 @@ def payDebt(request):
except Comanda.DoesNotExist:
return JsonResponse({'error': f'Comanda com ID {comanda_id} não encontrada'}, status=404)
- return redirect(f'/clients/viewClient/{comanda.client.id}')
+ # return redirect(f'/clients/viewClient/{comanda.client.id}')
- # return JsonResponse({
- # 'success': True,
- # 'message': f'{len(comanda_ids)} comandas processadas',
- # 'ids': comanda_ids
- # }, status=200)
+ return JsonResponse({
+ 'success': True,
+ 'message': f'{len(comanda_ids)} comandas processadas',
+ 'ids': comanda_ids
+ }, status=200)
except Exception as e:
return JsonResponse({
diff --git a/gestaoRaul/db.sqlite3 b/gestaoRaul/db.sqlite3
index 9c8c9f3..84ae8ba 100644
Binary files a/gestaoRaul/db.sqlite3 and b/gestaoRaul/db.sqlite3 differ
diff --git a/gestaoRaul/gestaoRaul/__pycache__/settings.cpython-312.pyc b/gestaoRaul/gestaoRaul/__pycache__/settings.cpython-312.pyc
index 75a8458..70cbf39 100644
Binary files a/gestaoRaul/gestaoRaul/__pycache__/settings.cpython-312.pyc and b/gestaoRaul/gestaoRaul/__pycache__/settings.cpython-312.pyc differ
diff --git a/gestaoRaul/templates/base.html b/gestaoRaul/templates/base.html
index 3f98daa..32fbb0d 100644
--- a/gestaoRaul/templates/base.html
+++ b/gestaoRaul/templates/base.html
@@ -156,6 +156,8 @@
+
+
diff --git a/gestaoRaul/templates/static/base.js b/gestaoRaul/templates/static/base.js
index ae5c2c8..f1b797a 100644
--- a/gestaoRaul/templates/static/base.js
+++ b/gestaoRaul/templates/static/base.js
@@ -174,4 +174,16 @@ function openFullscreen() {
setTimeout(() => {
toast.classList.remove('show');
}, duration);
- }
\ No newline at end of file
+ }
+
+
+ function feedback(message, status, subMessage) {
+ var feedbackMsg = Swal.fire({
+ title: message,
+ text: subMessage || '',
+ icon: status,
+ background: 'rgba(8, 9, 10, 0.75)',
+ confirmButtonColor: 'linear-gradient(145deg, #1E2A3B, #2C3E50)',
+ });
+return feedbackMsg;
+}
\ No newline at end of file
diff --git a/gestaoRaul/templates/static/clients/js/clients.js b/gestaoRaul/templates/static/clients/js/clients.js
index 38ca6c5..dd7f7fa 100644
--- a/gestaoRaul/templates/static/clients/js/clients.js
+++ b/gestaoRaul/templates/static/clients/js/clients.js
@@ -57,6 +57,8 @@ function editclient(id) {
function calcularTotalSelecionado() {
+ const btn = document.getElementById('btn-fechar-comandas');
+
let total = 0;
// Seleciona todos os checkboxes marcados (exceto o "selectAll")
const checkboxes = document.querySelectorAll('input[type="checkbox"]:checked:not(#selectAll)');
@@ -79,12 +81,10 @@ function calcularTotalSelecionado() {
}
}
});
- console.log(total)
- // Exibe o total na tela (você pode ajustar onde mostrar)
- const totalElement = document.getElementById('total-selecionado');
- if (totalElement) {
- totalElement.textContent = total.toLocaleString('pt-BR', {style: 'currency', currency: 'BRL'});
+ // Exibe o total no botão de receber
+ if (btn) {
+ btn.innerHTML = 'Receber '+total.toLocaleString('pt-BR', {style: 'currency', currency: 'BRL'});
} else {
// Cria um elemento para mostrar o total se não existir
const display = document.createElement('div');
@@ -141,9 +141,9 @@ document.addEventListener('DOMContentLoaded', function() {
+
async function enviarComandasSelecionadas() {
const btn = document.getElementById('btn-fechar-comandas');
- const feedback = document.getElementById('api-feedback');
btn.disabled = true;
btn.innerHTML = '⏳ Processando...';
@@ -160,8 +160,8 @@ async function enviarComandasSelecionadas() {
});
if (ids.length === 0) {
- feedback.textContent = 'Nenhuma comanda válida selecionada.';
- feedback.className = 'feedback-message error';
+ feedback('Nenhuma comanda selecionada.', 'error', 'Selecione uma comanda e tente novamente.');
+
return;
}
@@ -188,8 +188,8 @@ async function enviarComandasSelecionadas() {
throw new Error(data.error || `Erro HTTP: ${response.status}`);
}
- feedback.textContent = data.message || `${ids.length} comandas processadas com sucesso!`;
- feedback.className = 'feedback-message success';
+ feedback(`${ids.length} comandas pagas com sucesso!`, 'success');
+
setTimeout(() => {
window.location.reload();
@@ -197,15 +197,14 @@ async function enviarComandasSelecionadas() {
} catch (error) {
console.error('Erro:', error);
- feedback.textContent = error.message || 'Erro ao processar comandas. Verifique o console para mais detalhes.';
- feedback.className = 'feedback-message error';
+ feedback('Erro', 'error', error);
+
} finally {
btn.disabled = false;
- btn.innerHTML = '✓ Fechar Comandas Selecionadas';
+ btn.innerHTML = 'Receber';
}
}
-// Função auxiliar para pegar o token CSRF
function getCookie(name) {
let cookieValue = null;
if (document.cookie && document.cookie !== '') {
@@ -221,5 +220,3 @@ function getCookie(name) {
return cookieValue;
}
-// Exemplo de como chamar a função (pode ser vinculada a um botão)
-// document.getElementById('btn-fechar-comandas').addEventListener('click', enviarComandasSelecionadas);
\ No newline at end of file