| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135 |
- <?php
- namespace App\Http\Controllers\Api;
- use App\Http\Controllers\Controller;
- use Illuminate\Http\Request;
- use Illuminate\Support\Facades\DB;
- class AsistenciaController extends Controller
- {
- public function findOne($id)
- {
- $id = base64_decode($id);
- $asistencia = DB::table('niveles')->where('idNivel', $id)->first();
- return response()->json($asistencia, 200);
- }
- public function mostrar()
- {
- $asistencia = DB::table('asistencia')
- ->select(
- 'asistencia.*',
- 'materias.nombreMateria as nombreMateria',
- DB::raw("CONCAT(COALESCE(usuarios.primerNombre, ''), ' ', COALESCE(usuarios.segundoNombre, ''), ' ', COALESCE(usuarios.apellidoPaterno, ''), ' ', COALESCE(usuarios.apellidoMaterno, '')) AS nombreCompleto")
- )
- ->where('asistencia.idEscuela', 'COLEGIOABC')
- ->join('materias', 'asistencia.idMateria', '=', 'materias.idMateria')
- ->join('usuarios', 'asistencia.idUsuario', '=', 'usuarios.idUsuario')
- ->get();
- return response()->json($asistencia, 200);
- }
- public function nivelesHabilitados()
- {
- $asistencia = DB::table('niveles')
- ->where('idEscuela', 'COLEGIOABC')
- ->where('estado', 'Activo')
- ->get();
- return response()->json($asistencia, 200);
- }
- public function crear(Request $request)
- {
- try {
- DB::table('asistencia')->insert([
- 'idEscuela' => 'COLEGIOABC',
- 'idMateria' => $request->idMateria,
- 'idFechaHora' => $request->idFechaHora,
- 'estado' => 'Borrador',
- 'version' => 1,
- 'versionActiva' => 'Si',
- 'listaAsistencia' => json_encode(json_decode($request->listaAsistencia)),
- 'tAlumnos' => $request->tAlumnos,
- 'tAsistencia' => 0,
- 'tFalta' => 0,
- 'tJustificada' => 0,
- 'idUsuario' => $request->idUsuario,
- 'ulActualizacion' => $request->ulActualizacion,
- ]);
- return response()->json([
- 'mensaje' => 'Asistencia creada exitosamente',
- 'idLista' => DB::getPdo()->lastInsertId()
- ], 201);
- } catch (\Exception $e) {
- return response()->json(['mensaje' => 'Error al crear el asistencia: ' . $e->getMessage()], 500);
- }
- }
- public function actualizar(Request $request)
- {
- try {
- DB::table('asistencia')
- ->updateOrInsert(
- ['idAsistencia' => $request->idLista],
- [
- 'listaAsistencia' => $request->listaAsistencia,
- 'tAsistencia' => $request->tAsistencia,
- 'tFalta' => $request->tFalta,
- 'tJustificada' => $request->tJustificada,
- 'estado' => $request->estado,
- ]
- );
- return response()->json(['mensaje' => 'Registro actualizado exitosamente'], 201);
- } catch (\Exception $e) {
- return response()->json(['mensaje' => 'Error al actualizar el registro: ' . $e->getMessage()], 500);
- }
- }
- public function eliminar($id)
- {
- try {
- DB::table('asistencia')
- ->updateOrInsert(
- ['idAsistencia' => $id],
- ['estado' => 'Eliminada']
- );
- return response()->json(['mensaje' => 'Asistencia eliminada exitosamente'], 200);
- } catch (\Exception $e) {
- return response()->json(['mensaje' => 'Error al eliminar la asistencia: ' . $e->getMessage()], 500);
- }
- }
- public function habilitar($id)
- {
- $id = base64_decode($id);
- try {
- //code...
- DB::table('niveles')
- ->updateOrInsert(
- ['idNivel' => $id],
- ['estado' => 'Activo']
- );
- return response()->json(['mensaje' => 'Nivel eliminado exitosamente'], 201);
- } catch (\Exception $e) {
- //throw $th;
- return response()->json(['mensaje' => 'Error al eliminar el asistencia: ' . $e->getMessage()], 500);
- }
- }
-
- }
|