api.php 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280
  1. <?php
  2. use App\Http\Controllers\AlumnosBitacoraController;
  3. use App\Http\Controllers\Api\ActividadController;
  4. use App\Http\Controllers\Api\AsistenciaController;
  5. use App\Http\Controllers\Api\CategoriasMateriasController;
  6. use App\Http\Controllers\Api\CircularesController;
  7. use App\Http\Controllers\Api\EventosController;
  8. use App\Http\Controllers\Api\GradoEducativoController;
  9. use App\Http\Controllers\Api\GrupoController;
  10. use App\Http\Controllers\Api\MateriaController;
  11. use App\Http\Controllers\Api\PeriodoController;
  12. use App\Http\Controllers\Api\UserController;
  13. use App\Http\Controllers\auth\LoginController;
  14. use App\Http\Controllers\MailController;
  15. use App\Http\Controllers\PersonalizarController;
  16. use Illuminate\Http\Request;
  17. use Illuminate\Support\Facades\Route;
  18. use App\Http\Controllers\Api\AlumnosController;
  19. use App\Http\Controllers\Api\ProfesoresController;
  20. use App\Http\Controllers\Api\PeriodosBoletaController;
  21. use App\Http\Controllers\Api\TiposInfoGeneralController;
  22. use App\Http\Controllers\Api\TiposRegistroBitacoraController;
  23. use App\Http\Controllers\Api\TiposTareasController;
  24. use App\Http\Controllers\Api\NivelEducativoController;
  25. use App\Http\Controllers\Api\RegistroAcademico;
  26. use App\Http\Controllers\Api\profesorRegistroBitacora;
  27. use App\Http\Controllers\Api\RegistroCalicaciones;
  28. use App\Http\Controllers\NivelExportController;
  29. use App\Http\Controllers\FormController;
  30. use App\Http\Controllers\RespuestasController;
  31. use App\Http\Controllers\s3;
  32. /*
  33. |--------------------------------------------------------------------------
  34. | API Routes
  35. |--------------------------------------------------------------------------
  36. |
  37. | Here is where you can register API routes for your application. These
  38. | routes are loaded by the RouteServiceProvider and all of them will
  39. | be assigned to the "api" middleware group. Make something great!
  40. |
  41. */
  42. // Route::middleware('auth:sanctum')->get('/user', function (Request $request) {
  43. // return $request->user();
  44. // });
  45. //RUTAS QUE NO NECESITAN TOKENS
  46. Route::post('/subir-archivo', [s3::class, 'subirArchivo']);
  47. Route::post('login', [LoginController::class, 'login']);
  48. Route::post('register', [UserController::class, 'register']);
  49. Route::post('/verifyTokens', [LoginController::class, 'checkUserTokens']);
  50. Route::post('actividad', [ActividadController::class, 'store']);
  51. Route::get('ipLocal', [ActividadController::class, 'localIP']);
  52. Route::put('changePassword', [LoginController::class, 'updatePassword']);
  53. Route::get('personalizarInfo', [PersonalizarController::class, 'show']);
  54. Route::post('/send-test-email', [MailController::class, 'sendTestEmail']);
  55. Route::get('/exportar-excel', [NivelExportController::class, 'exportarExcel']);
  56. //protección de rutas
  57. Route::middleware(['auth:sanctum'])->group(function () {
  58. Route::get('logout', [LoginController::class, 'logout']);
  59. // Rutas Periodos
  60. Route::post('crearPeriodo', [PeriodoController::class, 'crearPeriodo']);
  61. //Rutas de Usuarios
  62. Route::get('count', [ActividadController::class, 'count']);
  63. Route::get('usuarioAll', [UserController::class, 'mostrar']);
  64. Route::get('usuarioHabilitados', [UserController::class, 'materiasHabilitadas']);
  65. Route::get('usuarioOne/{id}', [UserController::class, 'findOne']);
  66. Route::put('usuarioE', [UserController::class, 'actualizar']);
  67. Route::put('usuarioDelete/{id}', [UserController::class, 'eliminar']);
  68. Route::put('usuarioEnable/{id}', [UserController::class, 'habilitar']);
  69. //Rutas de Circulares
  70. Route::get('circularAll', [CircularesController::class, 'mostrar']);
  71. Route::post('eliminarArchivoS3', [CircularesController::class, 'eliminarArchivo']);
  72. Route::get('circularUlt', [CircularesController::class, 'ultimasCirc']);
  73. Route::post('circularSave', [CircularesController::class, 'crear']);
  74. Route::get('circularOne/{id}', [CircularesController::class, 'findOne']);
  75. Route::get('extraInfo/{id}', [CircularesController::class, 'extraInfo']);
  76. Route::put('circularE', [CircularesController::class, 'actualizar']);
  77. Route::put('circularDelete/{id}', [CircularesController::class, 'eliminar']);
  78. Route::put('circularEnable/{id}', [CircularesController::class, 'habilitar']);
  79. Route::get('download/{id}', [CircularesController::class, 'download']);
  80. Route::post('idUserCircular',[CircularesController::class,'getUsuariosCircular']); //Obtener usuarios para enviar circulares
  81. Route::post('crearDestino',[CircularesController::class,'crearDestinoCircular']); //crear destino de usuarios para enviar circulares
  82. Route::get('getByUser/{id}',[CircularesController::class,'getByUser']); //Obtener circulares por usuario
  83. Route::get('estadisticas/{id}',[CircularesController::class,'estadisticas']); //Obtener estadisticas de circulares
  84. Route::post('actualizarVisto',[CircularesController::class,'actualizarVisto']); //Actualizar visto de circulares
  85. //actividad - Sesión
  86. Route::get('actividades', [ActividadController::class, 'index']);
  87. Route::get('actividad/{id}', [ActividadController::class, 'show']);
  88. //personalizar
  89. Route::put('personalizar', [PersonalizarController::class, 'update']);
  90. //Rutas de Nivel Educativo
  91. Route::get('nivelEducativoAll', [NivelEducativoController::class, 'mostrar']);
  92. Route::get('nivelEducativoHabilitado', [NivelEducativoController::class, 'nivelesHabilitados']);
  93. Route::get('nivelEducativoOne/{id}', [NivelEducativoController::class, 'findOne']);
  94. Route::post('nivelEducativoSave', [NivelEducativoController::class, 'crear']);
  95. Route::put('nivelEducativoE', [NivelEducativoController::class, 'actualizar']);
  96. Route::put('nivelEducativoDelete/{id}', [NivelEducativoController::class, 'eliminar']);
  97. Route::put('nivelEducativoEnable/{id}', [NivelEducativoController::class, 'habilitar']);
  98. //Rutas de Eventos
  99. Route::post('eventoSave', [EventosController::class, 'crear']);
  100. Route::post('savecalendarioUsuarios', [EventosController::class, 'savecalendarioUsuarios']);
  101. Route::get('eventosAll', [EventosController::class, 'eventosActivos']);
  102. Route::get('eventosSemana', [EventosController::class, 'getWeekEvents']);
  103. //Rutas de Grados Educativos
  104. Route::get('gradoEducativoAll', [GradoEducativoController::class, 'mostrar']);
  105. Route::get('gradoEducativoHabilitado', [GradoEducativoController::class, 'gradosHabilitados']);
  106. Route::get('gradoEducativoOne/{id}', [GradoEducativoController::class, 'findOne']);
  107. Route::post('gradoEducativoSave', [GradoEducativoController::class, 'crear']);
  108. Route::put('gradoEducativoE', [GradoEducativoController::class, 'actualizar']);
  109. Route::put('gradoEducativoDelete/{id}', [GradoEducativoController::class, 'eliminar']);
  110. Route::put('gradoEducativoEnable/{id}', [GradoEducativoController::class, 'habilitar']);
  111. //Rutas de Grupos
  112. Route::get('grupoAll', [GrupoController::class, 'mostrar']);
  113. Route::get('grupoHabilitado', [GrupoController::class, 'gruposHabilitados']);
  114. Route::get('grupoOne/{id}', [GrupoController::class, 'findOne']);
  115. Route::post('grupoSave', [GrupoController::class, 'crear']);
  116. Route::put('grupoE', [GrupoController::class, 'actualizar']);
  117. Route::put('grupoDelete/{id}', [GrupoController::class, 'eliminar']);
  118. Route::put('grupoEnable/{id}', [GrupoController::class, 'habilitar']);
  119. //Rutas de Categorias de Materias
  120. Route::get('categoriaAll', [CategoriasMateriasController::class, 'mostrar']);
  121. Route::get('categoriaHabilitado', [CategoriasMateriasController::class, 'categoriasHabilitadas']);
  122. Route::get('categoriaOne/{id}', [CategoriasMateriasController::class, 'findOne']);
  123. Route::post('categoriaSave', [CategoriasMateriasController::class, 'crear']);
  124. Route::put('categoriaE', [CategoriasMateriasController::class, 'actualizar']);
  125. Route::put('categoriaDelete/{id}', [CategoriasMateriasController::class, 'eliminar']);
  126. Route::put('categoriaEnable/{id}', [CategoriasMateriasController::class, 'habilitar']);
  127. //Rutas de Materias
  128. Route::get('materiaAll', [MateriaController::class, 'mostrar']);
  129. Route::get('materiaHabilitado', [MateriaController::class, 'materiasHabilitadas']);
  130. Route::get('materiaOne/{id}', [MateriaController::class, 'findOne']);
  131. Route::post('materiaSave', [MateriaController::class, 'crear']);
  132. Route::put('materiaE', [MateriaController::class, 'actualizar']);
  133. Route::put('materiaDelete/{id}', [MateriaController::class, 'eliminar']);
  134. Route::put('materiaEnable/{id}', [MateriaController::class, 'habilitar']);
  135. //Anuncios
  136. Route::get('getProfes/{id}', [MateriaController::class, 'getProfes']);
  137. Route::post('crearAnuncio', [MateriaController::class, 'crearAnuncio']);
  138. Route::put('anuncioE', [MateriaController::class, 'editarAnuncio']);
  139. Route::put('anuncioEliminar/{id}', [MateriaController::class, 'eliminarAnuncio']);
  140. //Rutas de Asistencia
  141. Route::get('asistenciaAll', [AsistenciaController::class, 'mostrar']);
  142. Route::post('asistenciaSave', [AsistenciaController::class, 'crear']);
  143. Route::put('actualizarRegistro', [AsistenciaController::class, 'actualizar']);
  144. Route::put('asistenciaDelete/{id}', [AsistenciaController::class, 'eliminar']);
  145. // ---------------------------------------------------------------------------------------------------------------------------------------------------
  146. //Rutas de Tipos de tareas
  147. Route::get('tipoTarea', [TiposTareasController::class, 'mostrarTodos']);
  148. Route::post('tipoTareas', [TiposTareasController::class, 'crear']);
  149. Route::put('tipoTareas/{idTareasTipos}', [TiposTareasController::class, 'editar']);
  150. Route::put('eliminar/{id}', [TiposTareasController::class, 'Actualizar']);
  151. Route::put('habilitar/{id}', [TiposTareasController::class, 'Habilitar']);
  152. //Rutas de Tipos de registro de bitacora
  153. Route::get('registroBitacoraT', [TiposRegistroBitacoraController::class, 'mostrarTodos']);
  154. Route::post('registroBitacora', [TiposRegistroBitacoraController::class, 'crear']);
  155. Route::put('registroBitacora/{idBitacorasTipos}', [TiposRegistroBitacoraController::class, 'editar']);
  156. Route::put('habilitarEstadoRB/{id}', [TiposRegistroBitacoraController::class, 'HabilitarE']);
  157. Route::put('eliminarEstadoRB/{id}', [TiposRegistroBitacoraController::class, 'EliminarE']);
  158. //Rutas de Tipos de informacion general
  159. Route::get('infoGeneralT', [TiposInfoGeneralController::class, 'mostrarTodos']);
  160. Route::post('infoGeneral', [TiposInfoGeneralController::class, 'crear']);
  161. Route::put('infoGeneral/{id}', [TiposInfoGeneralController::class, 'editar']);
  162. Route::put('eliminarEstado/{id}', [TiposInfoGeneralController::class, 'eliminarEstado']);
  163. Route::put('habilitarEstado/{id}', [TiposInfoGeneralController::class, 'habilitarEstado']);
  164. //Rutas de periodos boleta
  165. Route::get('periodoBoletaT', [PeriodosBoletaController::class, 'mostrarTodos']);
  166. Route::post('periodoBoleta', [PeriodosBoletaController::class, 'crear']);
  167. Route::put('periodoBoleta/{id}', [PeriodosBoletaController::class, 'editar']);
  168. Route::put('eliminarEstadoPB/{id}', [PeriodosBoletaController::class, 'eliminarEstado']);
  169. Route::put('habilitarEstadoPB/{id}', [PeriodosBoletaController::class, 'habilitarEstado']);
  170. // ---------------------------------------------------------------------------------------------------------------------------------------------------
  171. //Rutas Para relacionar Alumnos
  172. Route::get('alumnos', [AlumnosController::class, 'getAlumnos']);
  173. Route::get('alumnosRegistro', [AlumnosController::class, 'alumnosRegistro']);
  174. Route::get('getPadres', [AlumnosController::class, 'getPadres']);
  175. Route::post('AlumnoGrupo', [AlumnosController::class, 'RelacionAlumnosGrupo']);
  176. Route::post('AlumnoPadre', [AlumnosController::class, 'RelacionAlumnosPadre']);
  177. Route::delete('eliminarGrupo', [AlumnosController::class, 'eliminarGrupo']);
  178. Route::delete('eliminarPadre', [AlumnosController::class, 'eliminarPadre']);
  179. Route::get('/alumnos/bitacora/{id}', [AlumnosBitacoraController::class, 'index']);
  180. Route::get('getByUser/{id}',[AlumnosBitacoraController::class,'getByUser']); //Obtener circulares por usuario
  181. Route::get('UserOne/{id}', [AlumnosBitacoraController::class, 'findOne']);
  182. // Rutas para Relacionar Profesores
  183. Route::get('profesores', [ProfesoresController::class, 'mostrarProfesores']);
  184. Route::post('RelacionarProfesor', [ProfesoresController::class, 'RelacionarProfesor']);
  185. Route::get('getMaterias', [ProfesoresController::class, 'getMaterias']);
  186. Route::delete('eliminarRelacion', [ProfesoresController::class, 'eliminarRelacion']);
  187. Route::get('getGrupos/{id}', [ProfesoresController::class, 'getGrupos']);
  188. //Ruta para Registro Academico
  189. Route::get('getOneRegistro/{id}',[RegistroAcademico::class,'getOneRegistro']);
  190. Route::get('UserOne/{id}', [RegistroAcademico::class, 'findOne']);
  191. Route::get('getAll',[RegistroAcademico::class,'getAll']);
  192. Route::post('registroAca',[RegistroAcademico::class,'registroAca']);
  193. Route::put('updateRegistro/{id}',[RegistroAcademico::class,'ActualizarRegistroAca']);
  194. //Ruta para Registro Administrativo
  195. Route::get('getAllAd',[RegistroAcademico::class,'getAllAd']);
  196. Route::post('registroAdministrativo',[RegistroAcademico::class,'registroAdministrativo']);
  197. Route::get('getRegistroAdmin/{id}',[RegistroAcademico::class,'getOneRegistroAdmi']);
  198. Route::put('editarRegistroAdmin/{id}',[RegistroAcademico::class,'editarRegistroAdmin']);
  199. Route::get('getAllPlanPago',[RegistroAcademico::class,'getAllPlanPago']);
  200. Route::get('getAllPorcentajeBeca',[RegistroAcademico::class,'getAllPorcentajeBeca']);
  201. Route::get('getAllMetodoPago',[RegistroAcademico::class,'getAllMetoPago']);
  202. Route::get('/constancia-fiscal/descargar/{idAlumno}', [RegistroAcademico::class, 'descargarConstanciaFiscal']);
  203. //Ruta para Profesor Registro Bitacora
  204. Route::get('getRegistrosP',[profesorRegistroBitacora::class, 'getRegistrosP']);
  205. Route::get('getMateriasP',[profesorRegistroBitacora::class, 'getMateriasP']);
  206. Route::get('getTiposP',[profesorRegistroBitacora::class, 'Tipos']);
  207. Route::get('getAlumnosP',[profesorRegistroBitacora::class, 'getAlumnos']);
  208. Route::post('crearBitacoraP',[profesorRegistroBitacora::class, 'crearBitacora']);
  209. Route::put('editarBitacoraP/{id}',[profesorRegistroBitacora::class, 'editarBitacora']);
  210. Route::put('eliminarBitacoraP/{id}',[profesorRegistroBitacora::class, 'eliminarBitacora']);
  211. Route::put('habilitarBitacoraP/{id}',[profesorRegistroBitacora::class, 'habilitarBitacora']);
  212. //Ruta para registroCalificaciones
  213. Route::get('getCalificaciones',[RegistroCalicaciones::class,'getCalificaciones']);
  214. Route::get('getPeriodosCalificacion',[RegistroCalicaciones::class,'getPeriodos']);
  215. Route::post('registrarCalificacion',[RegistroCalicaciones::class,'registrarCalificacion']);
  216. Route::post('registrarCalificacionesMasivas',[RegistroCalicaciones::class,'registrarCalificacionesMasivas']);
  217. Route::put('editarCalificacion',[RegistroCalicaciones::class,'editarCalificacion']);
  218. Route::put('elminarEstadoCalificacion',[RegistroCalicaciones::class,'eliminarEstado']);
  219. Route::put('habilitarEstadoCalificacion',[RegistroCalicaciones::class,'habilitarEstado']);
  220. Route::get('getAlumnosCalificacion',[RegistroCalicaciones::class,'getCalificacionesMateria']);
  221. //ADMINISTRADOR DE FORMULARIOS RUTAS
  222. Route::post('/createForm', [FormController::class, 'store']); // Crear un nuevo formulario
  223. Route::get('/formularios',[FormController::class,'getAll']);
  224. Route::get('/formulario/{id}', [FormController::class, 'getFormById']);
  225. Route::put('/updateForm/{id}', [FormController::class, 'update']);
  226. Route::delete('/forms/{id}', [FormController::class, 'destroy']);
  227. Route::put('formularios/{id}/publish', [FormController::class, 'publish']);
  228. Route::put('formularios/{id}/unpublish', [FormController::class, 'unpublish']);
  229. Route::get('/formularios/publicado', [FormController::class, 'getPublicado']);
  230. //Respuestas de Formularios creados
  231. Route::post('/recibirRespuesta', [RespuestasController::class, 'recibirRespuesta']);
  232. Route::get('/generar-pdf/{id_usuario}/{form_id}', [RespuestasController::class, 'generarPDF']);
  233. Route::get('/respuestas/check', [RespuestasController::class, 'tieneRespuesta']);
  234. Route::get('/respuestas/formulario', [RespuestasController::class, 'obtenerRespuesta']);
  235. Route::put('/actualizarRespuesta', [RespuestasController::class, 'actualizarRespuesta']);
  236. });