Files
intranet/app/Controller/Postventas.php
2020-12-01 17:23:13 -03:00

70 lines
1.9 KiB
PHP

<?php
namespace App\Controller;
use App\Definition\Controller;
use Incoviba\old\Venta\Venta;
use Carbon\Carbon;
use Incoviba\nuevo\Venta\Observacion;
use Incoviba\nuevo\Venta\EstadoObservacion;
use Incoviba\nuevo\Venta\Postventa;
use Incoviba\nuevo\Venta\PostventaObservacion;
use Incoviba\nuevo\Venta\EstadoPostventa;
class Postventas
{
use Controller;
public static function add()
{
$id = get('venta');
$venta = model(Venta::class)->findOne($id);
return view('ventas.postventas.add', compact('venta'));
}
public static function agregar()
{
$id = get('venta');
$venta = model(Venta::class)->findOne($id);
$f = Carbon::createFromDate(post('year'), post('month'), post('day'), config('app.timezone'));
$observaciones = json_decode(post('observaciones'));
$postventa = model(Postventa::class)->create();
$postventa->venta_id = $venta->id;
$postventa->save();
$estado = model(EstadoPostventa::class)->create();
$estado->postventa_id = $postventa->id;
$estado->tipo_estado_postventa_id = 1;
$estado->fecha = $f->format('Y-m-d');
$estado->save();
foreach ($observaciones as $o) {
$observacion = model(Observacion::class)->create();
$observacion->texto = post('observacion' . $o);
$observacion->save();
$estado = model(EstadoObservacion::class)->create();
$estado->observacion_id = $observacion->id;
$estado->tipo_estado_observacion_id = 1;
$estado->fecha = $f->format('Y-m-d');
$estado->save();
$po = model(PostventaObservacion::class)->create();
$po->postventa_id = $postventa->id;
$po->observacion_id = $observacion->id;
$po->save();
}
header('Location: ' . url('', ['p' => 'ventas', 'a' => 'show', 'venta' => $venta->id]));
}
public static function show()
{
$id = get('postventa');
$postventa = model(Postventa::class)->findOne($id);
$venta = model(Venta::class)->findOne($postventa->venta_id);
return view('ventas.postventas.show', compact('postventa', 'venta'));
}
}
?>