Exemple #1
0
        public void RetirerTravail(int p_index)
        {
            if (p_index < 1)
            {
                throw new ArgumentOutOfRangeException(nameof(p_index));
            }

            Travail travailASupprimer = ChercherTravailParID(p_index);

            if (travailASupprimer is null)
            {
                throw new ArgumentNullException(nameof(p_index));
            }
            else
            {
                DepotSolutionSQLServeur    depotSolution   = new DepotSolutionSQLServeur(this.m_appDbContext);
                DepotCorrectionsSQLServeur depotCorrection = new DepotCorrectionsSQLServeur(this.m_appDbContext);

                List <Solution>   listeSolutions   = depotSolution.ChercherSolutionParTravailID(p_index);
                List <Correction> listeCorrections = new List <Correction>();

                if (listeSolutions != null)
                {
                    foreach (Solution solution in listeSolutions)
                    {
                        listeCorrections.AddRange(depotCorrection.ChercherCorrectionsParSolutionID(solution.SolutionID));
                    }

                    if (listeCorrections != null)
                    {
                        foreach (Correction correction in listeCorrections)
                        {
                            CorrectionDTO correctionDTO = new CorrectionDTO(correction);
                            this.m_appDbContext.Correction.Remove(correctionDTO);
                        }
                    }

                    foreach (Solution solution in listeSolutions)
                    {
                        this.m_appDbContext.Solution.Remove(new SolutionDTO(solution));
                    }
                }


                this.m_appDbContext.Travail.Remove(new TravailDTO(travailASupprimer));
                this.m_appDbContext.SaveChanges();
            }
        }
        public void FinaliserCorrection(int p_solutionID, string p_etudiantID)
        {
            CorrectionDTO correction = this.m_appDbContext.Correction.Where(c => c.Solution_id == p_solutionID && c.Etudiant_id == p_etudiantID).FirstOrDefault();

            if (correction != null)
            {
                if (correction.Finaliser)
                {
                    correction.Finaliser = false;
                }
                else
                {
                    correction.Finaliser = true;
                }

                this.m_appDbContext.Correction.Update(correction);
                this.m_appDbContext.SaveChanges();
            }
        }