public static function verificarCrearNota($alumno_id, $subunidad) { $notVerif = Nota::where('subunidad_id', '=', $subunidad->id)->where('alumno_id', '=', $alumno_id)->first(); if ($notVerif) { $nota = $notVerif; } else { $nota = new Nota(); $nota->alumno_id = $alumno->id; $nota->subunidad_id = $subunidad->id; $nota->nota = $subunidad->nota_default; $nota->save(); $notVerif = $nota; } return $notVerif; }
public function putCopiar() { $user = User::fromToken(); $grupo_from_id = Request::input('grupo_from_id'); $grupo_to_id = Request::input('grupo_to_id'); $asignatura_to_id = Request::input('asignatura_to_id'); $copiar_subunidades = Request::input('copiar_subunidades'); $copiar_notas = Request::input('copiar_notas'); $periodo_from_id = Request::input('periodo_from_id'); $periodo_to_id = Request::input('periodo_to_id'); $unidades_ids = Request::input('unidades_ids'); $unidades_copiadas = 0; $subunidades_copiadas = 0; $notas_copiadas = 0; foreach ($unidades_ids as $unidad_id) { $unidad_curr = Unidad::findOrFail($unidad_id); $unidad_new = new Unidad(); $unidad_new->definicion = $unidad_curr->definicion; $unidad_new->porcentaje = $unidad_curr->porcentaje; $unidad_new->orden = $unidad_curr->orden; $unidad_new->created_by = $user->user_id; $unidad_new->periodo_id = $periodo_to_id; $unidad_new->asignatura_id = $asignatura_to_id; $unidad_new->save(); $unidades_copiadas++; if ($copiar_subunidades) { $subunidades = Subunidad::deUnidad($unidad_id); foreach ($subunidades as $subunidad) { $sub_new = new Subunidad(); $sub_new->definicion = $subunidad->definicion_subunidad; $sub_new->porcentaje = $subunidad->porcentaje_subunidad; $sub_new->unidad_id = $unidad_new->id; $sub_new->nota_default = $subunidad->nota_default; $sub_new->orden = $subunidad->orden_subunidad; $sub_new->inicia_at = $subunidad->inicia_at; $sub_new->finaliza_at = $subunidad->finaliza_at; $sub_new->created_by = $user->user_id; $sub_new->save(); $subunidades_copiadas++; if ($copiar_notas and $grupo_to_id == $grupo_from_id) { $notas = Subunidad::notas($subunidad->subunidad_id); foreach ($notas as $nota) { $nota_new = new Nota(); $nota_new->nota = $nota->nota; $nota_new->subunidad_id = $sub_new->id; $nota_new->alumno_id = $nota->alumno_id; $nota_new->created_by = $user->user_id; $nota_new->save(); $notas_copiadas++; } } } } } $res = new stdClass(); $res->unidades_copiadas = $unidades_copiadas; $res->subunidades_copiadas = $subunidades_copiadas; $res->notas_copiadas = $notas_copiadas; return (array) $res; }