feat(Purchase): warn user when try eliminate the last line
This commit is contained in:
		| @@ -104,8 +104,11 @@ | ||||
|             <v-col> | ||||
|               <v-btn @click="removeLine(index)" color="red">Eliminar</v-btn> | ||||
|             </v-col> | ||||
|           </v-row> | ||||
|         </v-container> | ||||
|         </v-row> | ||||
|         <v-alert type="warning" :duration="2000" closable v-model="show_alert_lines"> | ||||
|           No se puede eliminar la única línea. | ||||
|         </v-alert> | ||||
|       </v-container> | ||||
|         <v-btn @click="addLine" color="blue">Agregar</v-btn> | ||||
|         </v-container> | ||||
|         <v-divider></v-divider> | ||||
| @@ -150,6 +153,7 @@ | ||||
|    data() { | ||||
|      return { | ||||
|        valid: false, | ||||
|        show_alert_lines: false, | ||||
|        client_search: '', | ||||
|        product_search: '', | ||||
|        payment_methods: null, | ||||
| @@ -266,12 +270,13 @@ | ||||
|        this.purchase.saleline_set.push({ product: '', unit_price: 0, quantity:0, measuring_unit: ''}); | ||||
|      }, | ||||
|      removeLine(index) { | ||||
|          // Solo elimina si hay más de una línea | ||||
|          if (this.purchase.saleline_set.length > 1) { | ||||
|              this.purchase.saleline_set.splice(index, 1); | ||||
|          } else { | ||||
|          // Opcional: puedes mostrar un mensaje o alerta si lo deseas | ||||
|              console.log("No se puede eliminar la única línea."); | ||||
|            this.show_alert_lines = true; | ||||
|            setTimeout(() => { | ||||
|              this.show_alert_lines = false; | ||||
|            }, 2000); | ||||
|          } | ||||
|      }, | ||||
|      calculateSubtotal(line) { | ||||
| @@ -280,16 +285,6 @@ | ||||
|      async submit() { | ||||
|        this.$refs.purchase.validate(); | ||||
|        if (this.valid) { | ||||
|          const hasInvalidQuantity = this.purchase.saleline_set.some(line => line.quantity <= 0); | ||||
|          if (hasInvalidQuantity) { | ||||
|                this.errorMessage = 'La cantidad de cada línea de compra debe ser mayor que cero.'; | ||||
|  | ||||
|                console.log(this.errorMessage); | ||||
|                return; // Detener el submit si hay cantidades inválidas | ||||
|            } | ||||
|  | ||||
|            this.errorMessage = ''; // Limpiar el mensaje de error | ||||
|  | ||||
|            try { | ||||
|                const response = await fetch('/don_confiao/api/sales/', { | ||||
|                    method: 'POST', | ||||
|   | ||||
		Reference in New Issue
	
	Block a user