feat: enhance competencia loading logic in DiplomasVista based on tipo_formacion
This commit is contained in:
parent
74cb6015dc
commit
b6e916c679
|
@ -51,16 +51,38 @@ export default function DiplomasVista() {
|
|||
};
|
||||
|
||||
useEffect(() => {
|
||||
if (alumnoSeleccionado && alumnoSeleccionado.curso?.id) {
|
||||
supabaseClient
|
||||
.from("curso_competencia")
|
||||
.select("competencia(id, descripcion)")
|
||||
.eq("curso_id", alumnoSeleccionado.curso.id)
|
||||
.then(({ data }) => {
|
||||
const comps = data?.map((c) => c.competencia).filter(Boolean) || [];
|
||||
setCompetencias(comps);
|
||||
setCompetenciasAcreditadas(comps.map((c) => c.id)); // Opcional: selecciona todas por default
|
||||
});
|
||||
if (alumnoSeleccionado) {
|
||||
if (
|
||||
alumnoSeleccionado.tipo_formacion === "curso" &&
|
||||
alumnoSeleccionado.curso?.id
|
||||
) {
|
||||
supabaseClient
|
||||
.from("curso_competencia")
|
||||
.select("competencia(id, descripcion)")
|
||||
.eq("curso_id", alumnoSeleccionado.curso.id)
|
||||
.then(({ data }) => {
|
||||
const comps = data?.map((c) => c.competencia).filter(Boolean) || [];
|
||||
setCompetencias(comps);
|
||||
setCompetenciasAcreditadas(comps.map((c) => c.id));
|
||||
});
|
||||
} else if (
|
||||
alumnoSeleccionado.tipo_formacion === "inyeccion" &&
|
||||
alumnoSeleccionado.inyeccion?.id
|
||||
) {
|
||||
supabaseClient
|
||||
.from("inyeccion_competencia_inyeccion")
|
||||
.select("competencia_inyeccion(id, descripcion)")
|
||||
.eq("inyeccion_id", alumnoSeleccionado.inyeccion.id)
|
||||
.then(({ data }) => {
|
||||
const comps =
|
||||
data?.map((c) => c.competencia_inyeccion).filter(Boolean) || [];
|
||||
setCompetencias(comps);
|
||||
setCompetenciasAcreditadas(comps.map((c) => c.id));
|
||||
});
|
||||
} else {
|
||||
setCompetencias([]);
|
||||
setCompetenciasAcreditadas([]);
|
||||
}
|
||||
}
|
||||
}, [alumnoSeleccionado]);
|
||||
|
||||
|
|
Loading…
Reference in New Issue