Base
This commit is contained in:
47
app/Controller/Operadores.php
Normal file
47
app/Controller/Operadores.php
Normal file
@ -0,0 +1,47 @@
|
||||
<?php
|
||||
namespace App\Controller;
|
||||
|
||||
use Carbon\Carbon;
|
||||
use App\Definition\Controller;
|
||||
use Incoviba\old\Proyecto\Agente;
|
||||
use Incoviba\old\Proyecto\Proyecto;
|
||||
use Incoviba\old\Proyecto\ProyectoAgente;
|
||||
|
||||
class Operadores
|
||||
{
|
||||
use Controller;
|
||||
|
||||
public static function agregar()
|
||||
{
|
||||
$proyecto = model(Proyecto::class)->findOne(get('proyecto'));
|
||||
$operadores = model(Agente::class)
|
||||
->select('agente.*')
|
||||
->join('agente_tipo', ['agente_tipo.agente', '=', 'agente.id'])
|
||||
->join('tipo_agente', ['tipo_agente.id', '=', 'agente_tipo.tipo'])
|
||||
->where('tipo_agente.descripcion', 'operador')
|
||||
->orderByAsc('agente.abreviacion')
|
||||
->findMany();
|
||||
$vigentes = array_map(function($item) {
|
||||
return $item->agente()->agente();
|
||||
}, $proyecto->operadoresVigentes());
|
||||
echo view('proyectos.operadores.add', compact('proyecto', 'operadores', 'vigentes'));
|
||||
}
|
||||
public static function add()
|
||||
{
|
||||
$proyecto = model(Proyecto::class)->findOne(get('proyecto'));
|
||||
$fecha = Carbon::today(config('app.timezone'));
|
||||
foreach (post('operadores') as $op) {
|
||||
$operador = model(Agente::class)->findOne($op);
|
||||
$at = $operador->tipos(19);
|
||||
$data = [
|
||||
'proyecto' => $proyecto->id,
|
||||
'agente' => $at->id,
|
||||
'fecha' => $fecha->format('Y-m-d'),
|
||||
'comision' => 2
|
||||
];
|
||||
$pa = model(ProyectoAgente::class)->create($data);
|
||||
$pa->new();
|
||||
}
|
||||
header('Location: ' . nUrl('proyectos', 'show', ['proyecto' => $proyecto->id]));
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user