API
This commit is contained in:
@ -20,18 +20,37 @@ class Proyectos {
|
||||
}
|
||||
public function show(Request $request, Response $response, $id_proyecto): Response {
|
||||
$proyecto = Model::factory(Proyecto::class)->find_one($id_proyecto);
|
||||
$output = ['proyecto' => $proyecto->as_array()];
|
||||
$output = ['proyecto' => null];
|
||||
if ($proyecto) {
|
||||
$output = ['proyecto' => $proyecto->as_array()];
|
||||
}
|
||||
return $this->withJson($response, $output);
|
||||
}
|
||||
public function ventas(Request $request, Response $response, $id_proyecto): Response {
|
||||
$proyecto = Model::factory(Proyecto::class)->find_one($id_proyecto);
|
||||
$ventas = $proyecto->ventas();
|
||||
usort($ventas, function($a, $b) {
|
||||
return strcmp(str_pad($a->propiedad()->unidades()[0]->descripcion, 4, '0', \STR_PAD_LEFT), str_pad($b->propiedad()->unidades()[0]->descripcion, 4, '0', \STR_PAD_LEFT));
|
||||
});
|
||||
$output = [
|
||||
'proyecto' => $proyecto->as_array(),
|
||||
'ventas' => array_map(function($item) {
|
||||
if ($item) {
|
||||
return $item->as_array();
|
||||
}
|
||||
}, $proyecto->ventas())
|
||||
}, $ventas)
|
||||
];
|
||||
return $this->withJson($response, $output);
|
||||
}
|
||||
public function operadores(Request $request, Response $response, $id_proyecto): Response {
|
||||
$proyecto = Model::factory(Proyecto::class)->find_one($id_proyecto);
|
||||
$output = [
|
||||
'proyecto' => $proyecto->as_array(),
|
||||
'operadores' => $proyecto->operadores() ? array_map(function($item) {
|
||||
if ($item) {
|
||||
return $item->as_array();
|
||||
}
|
||||
}, $proyecto->operadores()) : null
|
||||
];
|
||||
return $this->withJson($response, $output);
|
||||
}
|
||||
|
Reference in New Issue
Block a user