Merge pull request 'No sincronizar subpedidos aprobados' (#21) from funcion/congelar-pedidos-aprobados into master

Reviewed-on: #21
This commit is contained in:
Rodrigo 2023-09-04 20:33:09 -03:00
commit b58261bbf0
3 changed files with 9 additions and 2 deletions

View File

@ -74,6 +74,8 @@ class SubpedidoController extends Controller
// recibe request, saca producto y cantidad, valida, y pasa a syncProducto en Subpedido
public function syncProductos(Subpedido $subpedido) {
if ($subpedido->aprobado) return new SubpedidoResource($subpedido);
$valid = request()->validate([
'cantidad' => 'required|min:0',
'producto_id' => [

8
resources/js/app.js vendored
View File

@ -33,10 +33,10 @@ Vue.prototype.$rootMiga = {
Vue.prototype.$settearProducto = function(cantidad, id) {
Event.$emit("sync-subpedido", this.cant, this.producto.id)
}
Vue.prototype.$toast = function(mensaje) {
Vue.prototype.$toast = function(mensaje, duration = 1000) {
return window.bulmaToast.toast({
message: mensaje,
duration: 1000,
duration: duration,
type: 'is-danger',
position: 'bottom-center',
animate: { in: 'fadeIn', out: 'fadeOut' }
@ -69,6 +69,10 @@ const app = new Vue({
})
})
Event.$on('sync-subpedido', (cantidad, id) => {
if (this.pedido.aprobado) {
this.$toast('No se puede modificar un pedido ya aprobado', 2000);
return;
}
axios.post("/api/subpedidos/" + this.pedido.id + "/sync", {
cantidad: cantidad,
producto_id: id

View File

@ -1,5 +1,6 @@
<template>
<div v-show="visible" class="container">
<div v-show="this.$root.pedido.aprobado" class="notification is-warning has-text-centered">Tu pedido fue <strong>aprobado</strong>, por lo que no puede ser modificado</div>
<div class="columns is-multiline is-mobile">
<div v-for="(categoria,i) in categorias" :key="i" class="block column is-one-quarter-desktop is-one-third-tablet is-half-mobile">
<div @click.capture="seleccionarCategoria(categoria)" class="card" style="height:100%" >