public function delete(Request $request)
 {
     $Grupos = GrupoAlumnos::where('IdGrupo', '=', $request->IdGrupo)->count();
     if ($Grupos > 0) {
         $query = DB::table('SCC_Grupos')->where('Id', $request->IdGrupo)->update(['IsActivo' => 0]);
         if ($query) {
             return response()->json(['bandera' => true, 'message' => 'El grup  se elimino correctamente']);
         } else {
             return response()->json(['bandera' => false, 'message' => 'Error al eliminar el grupo, intente nuevamente']);
         }
     } else {
         $query = DB::table('SCC_Grupos')->where('Id', '=', $request->IdGrupo)->delete();
         if ($query) {
             return response()->json(['bandera' => true, 'message' => 'El grupo se elimino correctamente']);
         } else {
             return response()->json(['bandera' => false, 'message' => 'Error al eliminar el grupo, intente nuevamente']);
         }
     }
 }
 public function asignar(Request $request)
 {
     $size = count($request->ids_assign);
     $validator = Validator::make($request->all(), ['Grupo' => 'required|array_size:' . $size . '|eval_register:' . $request->Grado . ',' . $request->Ciclo . '', 'Grado' => 'required', 'Ciclo' => 'required', 'IsCertificacionObligatoria' => 'required']);
     if ($validator->fails()) {
         return response()->json(['bandera' => false, 'message' => $validator->errors()]);
     } else {
         $fecha = date("Ymd H:i:s");
         foreach ($request->ids_assign as $key => $id_alumno) {
             $existe = DB::table('SCC_GrupoAlumnos')->where('SCC_GrupoAlumnos.IdGrupo', '=', $request->Grupo)->where('SCC_GrupoAlumnos.IdAlumno', '=', $id_alumno)->count();
             if ($existe == 0) {
                 $GrupoAl = new GrupoAlumnos();
                 $GrupoAl->IdGrupo = $request->Grupo;
                 $GrupoAl->IdAlumno = $id_alumno;
                 $GrupoAl->IsActivo = 1;
                 $GrupoAl->FechaAdd = $fecha;
                 $GrupoAl->FechaUpdate = $fecha;
                 if ($GrupoAl->save()) {
                     $IdGrupoAlumno = $GrupoAl->id;
                     $query = DB::table('SCC_AlumnoCodigo')->where('IdAlumno', $id_alumno)->where('IdCicloEscolar', $request->Ciclo)->update(['IsActivo' => 0, 'FechaUpdate' => $fecha]);
                     if (!$query) {
                         $error = true;
                     }
                     $evaluaciones = DB::table('SCC_Grados')->join('SCC_Evaluaciones', 'SCC_Evaluaciones.IdGrado', '=', 'SCC_Grados.Id')->where('SCC_Grados.Id', '=', $request->Grado)->where('SCC_Evaluaciones.IdCicloEscolar', '=', $request->Ciclo)->where('SCC_Evaluaciones.IsActivo', '=', 1)->get();
                     foreach ($evaluaciones as $key => $evaluacion) {
                         $EvaluacionesAlumno = new EvaluacionesAlumno();
                         $EvaluacionesAlumno->IdGrupoAlumno = $IdGrupoAlumno;
                         $EvaluacionesAlumno->IdEvaluacion = $evaluacion->Id;
                         $EvaluacionesAlumno->IsActivo = 1;
                         $EvaluacionesAlumno->FechaAdd = $fecha;
                         $EvaluacionesAlumno->IdStatus = 1;
                         $EvaluacionesAlumno->FechaUpdate = $fecha;
                         if ($EvaluacionesAlumno->save()) {
                             $error = false;
                         } else {
                             $error = true;
                         }
                     }
                     $error = false;
                 } else {
                     $error = true;
                 }
             }
         }
         if ($error) {
             return response()->json(['bandera' => false, 'message' => 'Ocurrio un error, intente nuevamente']);
         } else {
             return response()->json(['bandera' => true, 'message' => 'Los alumnos fueron asignados correctamente']);
         }
     }
 }