public function destroy($id) { $asignaturas = Asignatura::find($id); $asignaturas->delete(); Session::flash('message', 'La asignatura ' . $asignaturas->nombre . ' fue eliminada'); return redirect()->route('Encargado.asignaturas.index'); }
public function edit($id) { $cursos = Curso::findOrFail($id); $asignaturas = Asignatura::lists('nombre', 'id'); $docentes = Docente::lists('nombres', 'id'); return view('Administrador.CursoCrud.editarCurso', compact('cursos', 'asignaturas', 'docentes')); }
public function edit($id) { $cursos = Curso::findOrFail($id); $asignaturas = Asignatura::lists('nombre', 'id'); $docentes = Docente::lists('nombres', 'id'); return view('Encargado.Curso.editarCursoE', compact('cursos', 'asignaturas', 'docentes')); }
public function getDetailed($asignatura_id) { $user = User::fromToken(); $resultado = []; $unidades = Unidad::where('asignatura_id', '=', $asignatura_id)->where('periodo_id', '=', $user->periodo_id)->orderBy('orden')->get(); $asignatura = (object) Asignatura::detallada($asignatura_id, $user->year_id); foreach ($unidades as $unidad) { $subunidades = Subunidad::where('unidad_id', '=', $unidad->id)->orderBy('orden')->get(); foreach ($subunidades as $subunidad) { $notas = Nota::where('subunidad_id', '=', $subunidad->id)->get(); if (count($notas) == 0) { $notasTemp = Nota::crearNotas($asignatura->grupo_id, $subunidad); $subunidad->notas = $notasTemp; } else { $notas = Nota::verificarCrearNotas($asignatura->grupo_id, $subunidad); $subunidad->notas = $notas; } } $unidad->subunidades = $subunidades; } $alumnos = Grupo::alumnos($asignatura->grupo_id); foreach ($alumnos as $alumno) { $userData = Alumno::userData($alumno->alumno_id); $alumno->userData = $userData; } // No cambiar el orden! array_push($resultado, $asignatura); array_push($resultado, $alumnos); array_push($resultado, $unidades); return $resultado; }
public function store(Request $request) { $file = $request->file('file'); //obtenemos el campo file obtenido por el formulario if (is_null($request->file('file'))) { Session::flash('message', 'Seleccion el archivo'); return redirect()->back(); } //obtenemos el campo file obtenido por el formulario $nombre = $file->getClientOriginalName(); //indicamos que queremos guardar un nuevo archivo en el disco local \Storage::disk('local')->put($nombre, \File::get($file)); $depa = $request->get('departamentos'); $falla = false; \Excel::load('/storage/public/files/' . $nombre, function ($archivo) use(&$falla) { $result = $archivo->get(); //leer todas las filas del archivo foreach ($result as $key => $value) { $departamentos = Departamento::whereNombre($value->departamento_id)->pluck('id'); if (is_null($departamentos)) { // El campus no existe, deberia hacer algo para mitigar esto, o retornarlo al usuario ... } $var = new Asignatura(); $datos = ['nombre' => $value->nombre, 'codigo' => $value->codigo, 'descripcion' => $value->descripcion, 'departamento_id' => $departamentos]; $validator = Validator::make($datos, Asignatura::storeRules()); if ($validator->fails()) { Session::flash('message', 'Las Asignaturas ya existen o el archivo ingresado no es valido'); $falla = true; } else { $var->fill($datos); $var->save(); } } })->get(); if ($falla) { // Fallo la validacion de algun campus, retornar al index con mensaje return redirect()->route('Administrador.asignaturas.index'); } \Storage::delete($nombre); Session::flash('message', 'Las Asignaturas fueron agregadas exitosamente!'); return redirect()->route('Administrador.asignaturas.index'); }
public function store(Request $request) { //dd('jajaja'); $file = $request->file('file'); //obtenemos el campo file obtenido por el formulario if (is_null($request->file('file'))) { Session::flash('message', 'Seleccion el archivo'); return redirect()->back(); } $nombre = $file->getClientOriginalName(); //indicamos que queremos guardar un nuevo archivo en el disco local \Storage::disk('local')->put($nombre, \File::get($file)); $asignaturas = $request->get('asignaturas'); $docentes = $request->get('docentes'); $falla = false; \Excel::load('/storage/public/files/' . $nombre, function ($archivo) use(&$falla) { $result = $archivo->get(); //leer todas las filas del archivo foreach ($result as $key => $value) { $asignaturas = Asignatura::whereNombre($value->asignatura_id)->pluck('id'); $docentes = Docente::whereNombres($value->docente_id)->pluck('id'); //echo $facultades."<br>"; if (is_null($asignaturas)) { // El campus no existe, deberia hacer algo para mitigar esto, o retornarlo al usuario ... } if (is_null($docentes)) { // El campus no existe, deberia hacer algo para mitigar esto, o retornarlo al usuario ... } //if(!Curso::whereNombre('asignatura_id',$asignaturas)->whereNombres('docente_id',$docentes)->first()){ $var = new Curso(); $datos = ['asignatura_id' => $asignaturas, 'docente_id' => $docentes, 'semestre' => $value->semestre, 'anio' => $value->anio, 'seccion' => $value->seccion]; $validator = Validator::make($datos, Curso::storeRules()); if ($validator->fails()) { Session::flash('message', 'Los Cursos ya existen o el archivo ingresado no es valido'); $falla = true; } else { $var->fill($datos); $var->save(); } } })->get(); if ($falla) { // Fallo la validacion de algun campus, retornar al index con mensaje return redirect()->route('Encargado.cursos.index'); } \Storage::delete($nombre); Session::flash('message', 'Los Cursos fueron agregados exitosamente!'); return redirect()->route('Encargado.cursos.index'); }
public function show($id) { $asignaturas = Asignatura::find($id); //dd($Campus); if ($asignaturas) { $data = array(array('codigo', 'nombre', 'descripcion', 'departamento_id'), array($asignaturas->codigo, $asignaturas->nombre, $asignaturas->descripcion, $asignaturas->departamentos->nombre)); Excel::create('Asignaturas' . $asignaturas->nombre, function ($excel) use($data) { $excel->sheet('Sheetname', function ($sheet) use($data) { $sheet->fromArray($data); }); })->download('csv'); } else { abort('404'); } }
public function getDetailed($asignatura_id) { $user = User::fromToken(); $asignatura = (object) Asignatura::detallada($asignatura_id, $user->year_id); $alumnos = Grupo::alumnos($asignatura->grupo_id); foreach ($alumnos as $alumno) { $userData = Alumno::userData($alumno->alumno_id); $alumno->userData = $userData; $consulta = 'SELECT * FROM ausencias a WHERE a.asignatura_id = ? and a.periodo_id = ? and a.alumno_id=?'; $ausencias = DB::select(DB::raw($consulta), array($asignatura_id, $user->periodo_id, $alumno->alumno_id)); foreach ($ausencias as $ausencia) { $ausencia->mes = date('n', strtotime($ausencia->fecha_hora)) - 1; $ausencia->dia = (int) date('j', strtotime($ausencia->fecha_hora)); } $alumno->ausencias = $ausencias; } // No cambiar el orden! $resultado = []; array_push($resultado, $asignatura); array_push($resultado, $alumnos); return $resultado; }
public function getShowProfesor($profesor_id) { $user = User::fromToken(); $year = Year::datos_basicos($user->year_id); $asignaturas = Profesor::asignaturas($user->year_id, $profesor_id); $periodos = Periodo::where('year_id', '=', $user->year_id)->get(); $year->periodos = $periodos; $profesor = Profesor::detallado($profesor_id); foreach ($asignaturas as $keyAsig => $asignatura) { $alumnos = Grupo::alumnos($asignatura->grupo_id); $asignatura->nombres_profesor = $profesor->nombres_profesor; $asignatura->apellidos_profesor = $profesor->apellidos_profesor; $asignatura->foto_nombre = $profesor->foto_nombre; $asignatura->foto_id = $profesor->foto_id; $asignatura->sexo = $profesor->sexo; $asignatura->periodosProm = Periodo::where('year_id', '=', $user->year_id)->get(); // A cada alumno le daremos los periodos y la definitiva de cada periodo foreach ($alumnos as $keyAl => $alumno) { $periodosTemp = Periodo::where('year_id', '=', $user->year_id)->get(); foreach ($periodosTemp as $keyPer => $periodo) { // Unidades y subunidades de la asignatura en el periodo $asignaturaTemp = Asignatura::find($asignatura->asignatura_id); $asignaturaTemp->unidades = Unidad::deAsignatura($asignaturaTemp->id, $periodo->id); foreach ($asignaturaTemp->unidades as $unidad) { $unidad->subunidades = Subunidad::deUnidad($unidad->unidad_id); } // Traemos las notas de esta asignatura segun las unidades y subunidades calculadas arriba Asignatura::calculoAlumnoNotas($asignaturaTemp, $alumno->alumno_id); $periodo->nota_asignatura = $asignaturaTemp->nota_asignatura; unset($asignaturaTemp); } $alumno->periodos = $periodosTemp; unset($periodosTemp); foreach ($asignatura->periodosProm as $keyPer => $periodo) { if (!$periodo->sumatoria) { $periodo->sumatoria = 0; } foreach ($alumno->periodos as $keyPerAl => $periodo_alum) { if ($periodo_alum->id == $periodo->id) { $periodo->sumatoria += $periodo_alum->nota_asignatura; } } } } $asignatura->alumnos = $alumnos; } return array($year, $asignaturas); }
public function deleteDestroy($id) { $asignatura = Asignatura::findOrFail($id); $asignatura->delete(); return $asignatura; }
public function allNotasAlumno(&$alumno, $grupo_id, $periodo_id, $comport_and_frases = false) { $asignaturas = Grupo::detailed_materias($grupo_id); foreach ($asignaturas as $asignatura) { $asignatura->unidades = Unidad::deAsignatura($asignatura->asignatura_id, $periodo_id); foreach ($asignatura->unidades as $unidad) { $unidad->subunidades = Subunidad::deUnidad($unidad->unidad_id); } } $alumno->asignaturas = $asignaturas; $sumatoria_asignaturas = 0; foreach ($alumno->asignaturas as $asignatura) { if ($comport_and_frases) { $asignatura->ausencias = Ausencia::deAlumno($asignatura->asignatura_id, $alumno->alumno_id, $periodo_id); $asignatura->frases = FraseAsignatura::deAlumno($asignatura->asignatura_id, $alumno->alumno_id, $periodo_id); } Asignatura::calculoAlumnoNotas($asignatura, $alumno->alumno_id); $sumatoria_asignaturas += $asignatura->nota_asignatura; // Para sacar promedio del periodo // SUMAR AUSENCIAS Y TARDANZAS if ($comport_and_frases) { $cantAus = 0; $cantTar = 0; foreach ($asignatura->ausencias as $ausencia) { $cantAus += (int) $ausencia->cantidad_ausencia; $cantTar += (int) $ausencia->cantidad_tardanza; } $asignatura->total_ausencias = $cantAus; $asignatura->total_tardanzas = $cantTar; } } try { $alumno->promedio = $sumatoria_asignaturas / count($alumno->asignaturas); } catch (Exception $e) { $alumno->promedio = 0; } // COMPORTAMIENTO Y SUS FRASES if ($comport_and_frases) { $comportamiento = NotaComportamiento::where('alumno_id', '=', $alumno->alumno_id)->where('periodo_id', '=', $periodo_id)->first(); $alumno->comportamiento = $comportamiento; $definiciones = []; if ($comportamiento) { $definiciones = DefinicionComportamiento::frases($comportamiento->id); $alumno->comportamiento->definiciones = $definiciones; } } return $alumno; }
/** * @return \yii\db\ActiveQuery */ public function getAsignaturas() { return $this->hasMany(Asignatura::className(), ['area_id' => 'id']); }
public function postStore() { $user = User::fromToken(); $year = new Year(); $year->year = Request::input('year'); $year->nombre_colegio = Request::input('nombre_colegio'); $year->abrev_colegio = Request::input('abrev_colegio'); $year->nota_minima_aceptada = Request::input('nota_minima_aceptada'); $year->resolucion = Request::input('resolucion'); $year->codigo_dane = Request::input('codigo_dane'); //$year->encabezado_certificado = Request::input('encabezado_certificado'); //$year->frase_final_certificado = Request::input('frase_final_certificado'); $year->actual = Request::input('actual'); $year->telefono = Request::input('telefono'); $year->celular = Request::input('celular'); $year->unidad_displayname = Request::input('unidad_displayname'); $year->unidades_displayname = Request::input('unidades_displayname'); $year->genero_unidad = Request::input('genero_unidad'); $year->subunidad_displayname = Request::input('subunidad_displayname'); $year->subunidades_displayname = Request::input('subunidades_displayname'); $year->genero_subunidad = Request::input('genero_subunidad'); $year->website = Request::input('website'); $year->website_myvc = Request::input('website_myvc'); $year->alumnos_can_see_notas = Request::input('alumnos_can_see_notas'); $year->save(); if ($year->actual) { Year::where('actual', true)->update(['actual' => false]); } // NECESITARÉ MUCHO EL AÑO ANTERIOR $year_ante = $year->year - 1; $pasado = Year::where('year', $year_ante)->first(); if ($pasado) { $year->ciudad_id = $pasado->ciudad_id; $year->logo_id = $pasado->logo_id; $year->rector_id = $pasado->rector_id; $year->secretario_id = $pasado->secretario_id; $year->tesorero_id = $pasado->tesorero_id; $year->coordinador_academico_id = $pasado->coordinador_academico_id; $year->coordinador_disciplinario_id = $pasado->coordinador_disciplinario_id; $year->capellan_id = $pasado->capellan_id; $year->psicorientador_id = $pasado->psicorientador_id; $year->save(); /// COPIAREMOS LAS ESCALAS DE VALORACIÓN $escalas_ant = EscalaDeValoracion::where('year_id', $pasado->id)->get(); foreach ($escalas_ant as $key => $escalas) { $newEsc = new EscalaDeValoracion(); $newEsc->desempenio = $escalas->desempenio; $newEsc->valoracion = $escalas->valoracion; $newEsc->porc_inicial = $escalas->porc_inicial; $newEsc->porc_final = $escalas->porc_final; $newEsc->descripcion = $escalas->descripcion; $newEsc->orden = $escalas->orden; $newEsc->perdido = $escalas->perdido; $newEsc->year_id = $year->id; $newEsc->icono_infantil = $escalas->icono_infantil; $newEsc->icono_adolescente = $escalas->icono_adolescente; $newEsc->save(); } /// COPIAREMOS LAS FRASES $frases_ant = Frase::where('year_id', $pasado->id)->get(); foreach ($frases_ant as $key => $frases) { $newFra = new Frase(); $newFra->frase = $frases->frase; $newFra->tipo_frase = $frases->tipo_frase; $newFra->year_id = $year->id; $newFra->save(); } /// AHORA COPIAMOS LOS GRUPOS Y ASIGNATURAS DEL AÑO PASADO AL NUEVO AÑO. $grupos_ant = Grupo::where('year_id', $pasado->id)->get(); foreach ($grupos_ant as $key => $grupo) { $newGr = new Grupo(); $newGr->nombre = $grupo->nombre; $newGr->abrev = $grupo->abrev; $newGr->year_id = $year->id; $newGr->grado_id = $grupo->grado_id; $newGr->valormatricula = $grupo->valormatricula; $newGr->valorpension = $grupo->valorpension; $newGr->orden = $grupo->orden; $newGr->caritas = $grupo->caritas; $newGr->save(); $asigs_ant = Asignatura::where('grupo_id', $grupo->id)->get(); foreach ($asigs_ant as $key => $asig) { $newAsig = new Asignatura(); $newAsig->materia_id = $asig->materia_id; $newAsig->grupo_id = $asig->grupo_id; $newAsig->creditos = $asig->creditos; $newAsig->orden = $asig->orden; $newAsig->save(); } $grupo->asigs_ant = $asigs_ant; } $year->grupos_ant = $grupos_ant; } return $year; }
public static function query_nombre($nombre) { return Asignatura::select('id')->whereNombre($nombre)->first(); }
public static function alumnoAsignaturasPeriodosDetailed($alumno_id, $year_id, $periodos_a_calcular = 'de_usuario', $periodo_usuario = 0) { $alumno = Alumno::alumnoData($alumno_id, $year_id); $asignaturas = Grupo::detailed_materias($alumno->grupo_id); $sumatoria_asignaturas_year = 0; $sub_perdidas_year = 0; foreach ($asignaturas as $keyAsig => $asignatura) { $periodos = Periodo::hastaPeriodo($year_id, $periodos_a_calcular, $periodo_usuario); $sum_asignatura_year = 0; $subunidadesPerdidas = 0; foreach ($periodos as $keyPer => $periodo) { $asigna = new stdClass(); $asigna->unidades = Unidad::deAsignatura($asignatura->asignatura_id, $periodo->id); foreach ($asigna->unidades as $unidad) { $unidad->subunidades = Subunidad::deUnidad($unidad->unidad_id); } Asignatura::calculoAlumnoNotas($asigna, $alumno->alumno_id); $sum_asignatura_year += $asigna->nota_asignatura; $subunidadesPerdidas += Asignatura::notasPerdidasAsignatura($asigna); } try { $asignatura->nota_asignatura_year = $sum_asignatura_year / count($periodos); $asignatura->subunidadesPerdidas = $subunidadesPerdidas; } catch (Exception $e) { $asignatura->nota_asignatura_year = 0; } $asignatura->periodos = $periodos; $sumatoria_asignaturas_year += $asignatura->nota_asignatura_year; $sub_perdidas_year += $subunidadesPerdidas; } try { $alumno->promedio_year = $sumatoria_asignaturas_year / count($asignaturas); $alumno->sub_perdidas_year = $sub_perdidas_year; } catch (Exception $e) { $alumno->promedio_year = 0; } $alumno->asignaturas = $asignaturas; return $alumno; }
/** * @return \yii\db\ActiveQuery */ public function getAsignatura() { return $this->hasOne(Asignatura::className(), ['id' => 'asignatura_id']); }