You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
119 lines
4.3 KiB
119 lines
4.3 KiB
<?php |
|
|
|
namespace App\Http\Controllers; |
|
|
|
use App\Models\UaderMapuchePersona; |
|
use App\Models\UaderDjPersona; |
|
use Illuminate\Http\Request; |
|
|
|
class ApiPersonaController extends Controller |
|
{ |
|
/** |
|
* Display a listing of the resource. |
|
*/ |
|
public function index() |
|
{ |
|
return json_encode(['reply' => 'hola']); |
|
} |
|
|
|
|
|
public function store(Request $request) |
|
{ |
|
$input = $request->input(); |
|
$persona = UaderMapuchePersona::BuscarPersonaPorTelefono($input['cel']); |
|
if (!empty($persona)) { |
|
$funciones = array(); |
|
$uas = array(); |
|
$horarios = array(); |
|
$dj = UaderDjPersona::find($persona->id_dj_persona); |
|
$designaciones = $dj->CargosGrupo()->where('estado', 'A')->get(); |
|
foreach ($designaciones as $designacion) { |
|
$funciones[] = ['funcion' => $designacion->id_funcion, 'ua' => intval($designacion->Sede->ua_guarani)]; |
|
$grupo_horarios = $designacion->GrupoHorario; |
|
foreach ($grupo_horarios as $gh) { |
|
$horarios_dias = $gh->Horarios; |
|
foreach ($horarios_dias as $hd) |
|
if ($hd->dia_semanal == date('w')) |
|
$horarios[$hd->dia_semanal] = ['hora_entra' => $hd->hora_entra, 'funcion' => $designacion->id_funcion, 'ua' => intval($designacion->Sede->ua_guarani)]; |
|
} |
|
} |
|
$datos = array( |
|
'id' => $dj->id_persona, |
|
'dni' => $persona->nro_docum, |
|
'apellido' => ucwords(strtolower(trim($persona->desc_appat))), |
|
'nombres' => ucwords(strtolower(trim($persona->desc_nombr))), |
|
'telefono' => '549'.preg_replace('([^0-9])', '', trim($persona->telefono_celular)), |
|
'email' => strtolower(trim($persona->correo_electronico)), |
|
'funciones' => $funciones, |
|
'horarios' => $horarios, |
|
); |
|
return response()->json($datos); |
|
} else { |
|
return response()->json(array(), 404); |
|
} |
|
} |
|
|
|
public function buscar($dni) |
|
{ |
|
$persona = UaderMapuchePersona::buscarPersonaPorDni($dni); |
|
if (!empty($persona)) { |
|
$dj = UaderDjPersona::find($persona->id_dj_persona); |
|
$datos = array( |
|
'id' => $dj->id_persona, |
|
'dni' => $persona->nro_docum, |
|
'apellido' => ucwords(strtolower(trim($persona->desc_appat))), |
|
'nombres' => ucwords(strtolower(trim($persona->desc_nombr))), |
|
'telefono' => '549'.preg_replace('([^0-9])', '', trim($persona->telefono_celular)), |
|
'email' => strtolower(trim($persona->correo_electronico)), |
|
'domicilio' => array( |
|
'calle' => strtolower(trim($persona->calle)), |
|
'numero' => strtolower(trim($persona->numero)), |
|
'piso' => strtolower(trim($persona->piso)), |
|
'dpto_oficina' => strtolower(trim($persona->dpto_oficina)), |
|
'calles_entre' => strtolower(trim($persona->calles_entre)), |
|
'domicilio_referencia' => strtolower(trim($persona->domicilio_referencia)), |
|
'zona_paraje' => strtolower(trim($persona->zona_paraje)), |
|
'casa_nro' => strtolower(trim($persona->casa_nro)), |
|
'casa_manzana' => strtolower(trim($persona->casa_manzana)), |
|
'localidad' => ucfirst(strtolower(trim($persona->Localidad->desc_localidad))), |
|
'provincia' => trim($persona->Provincia->descripcion_pcia), |
|
) |
|
); |
|
return response()->json($datos); |
|
} else { |
|
return response()->json(array(), 404); |
|
} |
|
} |
|
|
|
/** |
|
* Display the specified resource. |
|
*/ |
|
public function show(UaderDjPersona $uaderDjPersona) |
|
{ |
|
// |
|
} |
|
|
|
/** |
|
* Show the form for editing the specified resource. |
|
*/ |
|
public function edit(UaderDjPersona $uaderDjPersona) |
|
{ |
|
// |
|
} |
|
|
|
/** |
|
* Update the specified resource in storage. |
|
*/ |
|
public function update(Request $request, UaderDjPersona $uaderDjPersona) |
|
{ |
|
// |
|
} |
|
|
|
/** |
|
* Remove the specified resource from storage. |
|
*/ |
|
public function destroy(UaderDjPersona $uaderDjPersona) |
|
{ |
|
// |
|
} |
|
}
|
|
|