forked from nathalie/pedi2
Se ven los productos en una tabla al clickear en la chismosa
This commit is contained in:
parent
8b4e07d66e
commit
86d2c0e9f6
|
@ -0,0 +1,24 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class ChismosaController extends Controller
|
||||
{
|
||||
/**
|
||||
* Create a new controller instance.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function __construct()
|
||||
{
|
||||
$this->middleware(['auth','subpedido']);
|
||||
}
|
||||
|
||||
|
||||
public function show()
|
||||
{
|
||||
return view('chismosa');
|
||||
}
|
||||
}
|
|
@ -8,7 +8,7 @@ Vue.component('nav-bar', {
|
|||
<img src="/assets/logoMPS.png" height="28">
|
||||
</a>
|
||||
<p style="margin:0 auto" class="navbar-item"><slot name="subpedido"></slot></p>
|
||||
<a class="navbar-item" href="#">
|
||||
<a class="navbar-item" href="/chismosa">
|
||||
<img style="padding:0 0.3em;" src="/assets/chismosa.png" height="28">
|
||||
<p style="margin:0 auto; color:white">$ <span v-text="subpedido == null ? 0 : subpedido.total"></span></p>
|
||||
</a>
|
||||
|
|
|
@ -0,0 +1,82 @@
|
|||
Vue.component('chismosa', {
|
||||
template: `
|
||||
<div class="container">
|
||||
<table class="table is-fullwidth">
|
||||
<thead>
|
||||
<tr>
|
||||
<th><abbr title="Producto">Prod</abbr></th>
|
||||
<th><abbr title="Cantidad">Cant</abbr></th>
|
||||
<th><abbr title="Precio Total">$</abbr></th>
|
||||
<th>Editar</th>
|
||||
<th><abbr title="Eliminar">X</abbr></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tfoot>
|
||||
<tr>
|
||||
<th><abbr title="Bonos de Transporte">BTR</abbr></th>
|
||||
<th>{{ this.subpedido.bonos_de_transporte }}</th>
|
||||
<th>{{ this.subpedido.subtotal_bonos_de_transporte }}</th>
|
||||
<th></th>
|
||||
<th></th>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>Total total</th>
|
||||
<th></th>
|
||||
<th>{{ this.subpedido.total }}</th>
|
||||
<th></th>
|
||||
<th></th>
|
||||
</tr>
|
||||
</tfoot>
|
||||
<tbody>
|
||||
<producto-row v-for="producto in this.subpedido.productos" :producto="producto" :key="producto.id"></producto-row>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
`,
|
||||
data() {
|
||||
return {
|
||||
subpedido: {
|
||||
productos:[]
|
||||
},
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
/* TODO: tener el camino que se había hecho antes de abrir la chismosa para volver atrás */
|
||||
miga: function() {
|
||||
return {
|
||||
nombre: "Chismosa de " + this.subpedido.nombre,
|
||||
href: "/chismosa"
|
||||
}
|
||||
}
|
||||
},
|
||||
beforeCreate() {
|
||||
axios.get("/subpedidos/obtener_sesion").then(response => {
|
||||
this.subpedido = response.data.subpedido;
|
||||
this.fetchSubpedido();
|
||||
Event.$emit("migas-agregar",this.miga);
|
||||
});
|
||||
},
|
||||
methods: {
|
||||
fetchSubpedido() {
|
||||
axios.get("/api/subpedidos/" + this.subpedido.id)
|
||||
.then(response => {
|
||||
this.subpedido = response.data.data;
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
Vue.component('producto-row', {
|
||||
template: `
|
||||
<tr>
|
||||
<th>{{ this.producto.nombre }}</th>
|
||||
<td>{{ this.producto.pivot.cantidad }}</td>
|
||||
<td>{{ this.producto.pivot.total }}</td>
|
||||
<td>ACÁ VA BOTON PA EDITAR</td>
|
||||
<td>ACÁ VA BOTON PA BORRAR</td>
|
||||
</tr>
|
||||
`,
|
||||
props: {
|
||||
producto: Object
|
||||
}
|
||||
})
|
|
@ -0,0 +1,13 @@
|
|||
@extends('layouts.app')
|
||||
|
||||
@section('stylesheets')
|
||||
|
||||
@endsection
|
||||
|
||||
@section('content')
|
||||
<chismosa></chismosa>
|
||||
@endsection
|
||||
|
||||
@section('scripts')
|
||||
<script src="{{ asset('js/chismosa.js') }}"></script>
|
||||
@endsection
|
|
@ -19,6 +19,8 @@ Auth::routes(['register' => false]);
|
|||
|
||||
Route::get('/productos', 'ProductoController@index')->name('productos.index');
|
||||
|
||||
Route::get('/chismosa', 'ChismosaController@show')->name('chismosa.show');
|
||||
|
||||
Route::middleware('auth')->group( function() {
|
||||
|
||||
Route::name('subpedidos.')->prefix("subpedidos")->group( function() {
|
||||
|
|
Loading…
Reference in New Issue