public function execute(array $args) { if (isset($args['e_id'])) { /** * @var Empleado */ $empleado = new Empleado($args['e_id']); $body = ['cedula' => trim($empleado->cedula), 'apellido1' => trim($empleado->apellido1), 'apellido2' => trim($empleado->apellido2), 'nombres' => trim($empleado->nombres)]; } else { $empleados = EmpleadosMaper::all(); $body = []; foreach ($empleados as $empleado) { $body[] = ['cedula' => trim($empleado->cedula), 'apellido1' => trim($empleado->apellido1), 'apellido2' => trim($empleado->apellido2), 'nombres' => trim($empleado->nombres)]; } } return $this->responseInfo = ['body' => $body, 'status' => self::STATUS_CREATED]; }
public function execute(array $args) { $usersMaper = MySQLEntityManager::createMaper(User::class); $rolesMaper = MySQLEntityManager::createMaper(Rol::class); $count_nuevos = 0; $count_actualizados = 0; $empleados = EmpleadosMaper::all(); $rolEmpleados = $rolesMaper->first(['nombre' => 'EMPL_ORD']); $rolEmpleadosTemporales = $rolesMaper->first(['nombre' => 'EMPL_ORD_TEMP']); $rolEmpleadosInactivos = $rolesMaper->first(['nombre' => 'EMPL_ORD_INACTIVO']); foreach ($empleados as $empleado) { $usuario = null; if (!($usuario = $usersMaper->first(['nombre' => $empleado->cedula]))) { $vinculacion_empleado = $empleado->vinculacion(); if ($vinculacion_empleado['CODIGO'] == '01') { if ($empleado->estadoC() == 'R') { $usuario = $usersMaper->build(['nombre' => $empleado->cedula, 'contrasena' => password_hash($empleado->cedula, PASSWORD_BCRYPT), 'rol_id' => $rolEmpleadosInactivos->id]); } else { $usuario = $usersMaper->build(['nombre' => $empleado->cedula, 'contrasena' => password_hash($empleado->cedula, PASSWORD_BCRYPT), 'rol_id' => $rolEmpleados->id]); } } else { $usuario = $usersMaper->build(['nombre' => $empleado->cedula, 'contrasena' => password_hash($empleado->cedula, PASSWORD_BCRYPT), 'rol_id' => $rolEmpleadosTemporales->id]); } $usersMaper->save($usuario); ++$count_nuevos; } else { $vinculacion_empleado = $empleado->vinculacion(); if ($vinculacion_empleado['CODIGO'] == '01') { if ($empleado->estadoC() == 'R') { $usuario->rol_id = $rolEmpleadosInactivos->id; } else { $usuario->rol_id = $rolEmpleados->id; } } else { $usuario->rol_id = $rolEmpleadosTemporales->id; } $usersMaper->save($usuario); ++$count_actualizados; } } $body = ['empleados agregados' => $count_nuevos, 'empleados actualizados' => $count_actualizados, 'total_empleados' => count($empleados)]; return $this->responseInfo = ['body' => $body, 'status' => self::STATUS_CREATED]; }