Esempio n. 1
0
        //Критерий трудности по ЕГЭ - заполнение направлений во временный список
        private void InitialiseFirstCriterion()
        {
            int counter = 0;

            foreach (Entrant entrant in _entrants)
            {
                int  entrExamSum      = 0;
                bool edLineAcceptable = true;

                foreach (EducationLineRequirement EdLineReq in _educationLine.EducationLinesRequirements)
                {
                    if (EdLineReq.ExamDiscipline.ExamType != ExamType.UnitedStateExam)
                    {
                        break;
                    }

                    bool foundResult = false;

                    foreach (UnitedStateExam EntrExam in entrant.UnitedStateExams)
                    {
                        if (EntrExam.ExamDisciplineId == EdLineReq.ExamDisciplineId)
                        {
                            foundResult = true;
                            entrExamSum = entrExamSum + Convert.ToInt32(EntrExam.Result);
                            break;
                        }
                    }

                    if (foundResult == false)
                    {
                        edLineAcceptable = false;
                        break;
                    }
                }
                if (edLineAcceptable == false)
                {
                    FirstCriterionUnit User = new FirstCriterionUnit();
                    User.databaseId    = Convert.ToInt32(entrant.Id);
                    User.localPriority = 0;

                    FirstCriterionContainer.Add(User);
                }
                else
                {
                    FirstCriterionUnit User = new FirstCriterionUnit();
                    User.databaseId    = Convert.ToInt32(entrant.Id);
                    User.matrixId      = counter;
                    User.entrantSum    = entrExamSum;
                    User.localPriority = 0;

                    counter++;

                    FirstCriterionContainer.Add(User);
                }
            }

            firstCriterionMatrixSize = counter;
        }
Esempio n. 2
0
        //Критерий трудности по ЕГЭ - заполнение направлений во временный список
        private void InitialiseFirstCriterion()
        {
            var counter = 0;

            foreach (var entrant in _entrants)
            {
                var entrExamSum      = 0;
                var edLineAcceptable = true;

                foreach (var edLineReq in _educationLine.EducationLinesRequirements)
                {
                    if (edLineReq.ExamDiscipline.ExamType != ExamType.UnitedStateExam)
                    {
                        break;
                    }

                    var foundResult = false;

                    foreach (var entrExam in entrant.UnitedStateExams)
                    {
                        if (entrExam.ExamDisciplineId == edLineReq.ExamDisciplineId)
                        {
                            foundResult = true;
                            entrExamSum = entrExamSum + Convert.ToInt32(entrExam.Result);
                            break;
                        }
                    }

                    if (foundResult == false)
                    {
                        edLineAcceptable = false;
                        break;
                    }
                }
                if (edLineAcceptable == false)
                {
                    var user = new FirstCriterionUnit();
                    user.DatabaseId    = Convert.ToInt32(entrant.Id);
                    user.LocalPriority = 0;

                    _firstCriterionContainer.Add(user);
                }
                else
                {
                    var user = new FirstCriterionUnit();
                    user.DatabaseId    = Convert.ToInt32(entrant.Id);
                    user.MatrixId      = counter;
                    user.EntrantSum    = entrExamSum;
                    user.LocalPriority = 0;

                    counter++;

                    _firstCriterionContainer.Add(user);
                }
            }

            _firstCriterionMatrixSize = counter;
        }
Esempio n. 3
0
        //Критерий трудности по ЕГЭ - заполнение направлений во временный список
        private void InitialiseFirstCriterion()
        {
            var totalAvailLines = 0;

            foreach (var edLine in _educationLines)
            {
                var entrExamSum      = 0;
                var edLineAcceptable = true;

                foreach (var edLineReq in edLine.EducationLinesRequirements)
                {
                    if (edLineReq.ExamDiscipline.ExamType != ExamType.UnitedStateExam)
                    {
                        break;
                    }

                    var foundResult = false;
                    foreach (var entrExam in _entrant.UnitedStateExams)
                    {
                        if (entrExam.ExamDisciplineId == edLineReq.ExamDisciplineId)
                        {
                            foundResult = true;
                            entrExamSum = entrExamSum + Convert.ToInt32(entrExam.Result);
                            break;
                        }
                    }

                    if (foundResult == false)
                    {
                        edLineAcceptable = false;
                        break;
                    }
                }
                if (edLineAcceptable == false)
                {
                    var educationLine = new FirstCriterionUnit();
                    educationLine.DatabaseId = Convert.ToInt32(edLine.Id);
                    educationLine.FirstCriterionAcceptable = false;
                    educationLine.RequiredSum = Convert.ToInt32(edLine.RequiredSum);
                    foreach (var edLineReq in edLine.EducationLinesRequirements)
                    {
                        if (edLineReq.ExamDiscipline.ExamType != ExamType.UnitedStateExam)
                        {
                            educationLine.RequiredSum = educationLine.RequiredSum -
                                                        Convert.ToInt32(edLineReq.Requirement);
                        }
                    }
                    educationLine.LocalPriority = 0;

                    _firstCriterionContainer.Add(educationLine);
                }
                else
                {
                    var educationLine = new FirstCriterionUnit();
                    educationLine.DatabaseId = Convert.ToInt32(edLine.Id);
                    educationLine.FirstCriterionAcceptable = true;
                    educationLine.MatrixId    = totalAvailLines;
                    educationLine.RequiredSum = Convert.ToInt32(edLine.RequiredSum);
                    foreach (var edLineReq in edLine.EducationLinesRequirements)
                    {
                        if (edLineReq.ExamDiscipline.ExamType != ExamType.UnitedStateExam)
                        {
                            educationLine.RequiredSum = educationLine.RequiredSum -
                                                        Convert.ToInt32(edLineReq.Requirement);
                        }
                    }
                    educationLine.WeakenedDifficulty = WeakenedDifficultyResult(entrExamSum,
                                                                                Convert.ToInt32(edLine.RequiredSum));
                    educationLine.LocalPriority = 0;

                    totalAvailLines++;

                    _firstCriterionContainer.Add(educationLine);
                }
            }
            _firstCriterionMatrixSize = totalAvailLines;
            if (_firstCriterionContainer.Count > _totalEducationLines)
            {
                _totalEducationLines = _firstCriterionContainer.Count;
            }
        }
Esempio n. 4
0
        //Критерий трудности по ЕГЭ - заполнение направлений во временный список
        private void InitialiseFirstCriterion()
        {
            int totalAvailLines = 0;

            foreach (EducationLine EdLine in _educationLines)
            {
                int  reqExamSum       = 0;
                int  entrExamSum      = 0;
                bool edLineAcceptable = true;

                foreach (EducationLineRequirement EdLineReq in EdLine.EducationLinesRequirements)
                {
                    if (EdLineReq.ExamDiscipline.ExamType != ExamType.UnitedStateExam)
                    {
                        break;
                    }

                    bool foundResult = false;
                    foreach (UnitedStateExam EntrExam in _entrant.UnitedStateExams)
                    {
                        if (EntrExam.ExamDisciplineId == EdLineReq.ExamDisciplineId)
                        {
                            foundResult = true;
                            entrExamSum = entrExamSum + Convert.ToInt32(EntrExam.Result);
                            break;
                        }
                    }

                    if (foundResult == false)
                    {
                        edLineAcceptable = false;
                        break;
                    }
                }
                if (edLineAcceptable == false)
                {
                    FirstCriterionUnit EducationLine = new FirstCriterionUnit();
                    EducationLine.databaseId = Convert.ToInt32(EdLine.Id);
                    EducationLine.firstCriterionAcceptable = false;
                    EducationLine.requiredSum = Convert.ToInt32(EdLine.RequiredSum);
                    foreach (EducationLineRequirement EdLineReq in EdLine.EducationLinesRequirements)
                    {
                        if (EdLineReq.ExamDiscipline.ExamType != ExamType.UnitedStateExam)
                        {
                            EducationLine.requiredSum = EducationLine.requiredSum - Convert.ToInt32(EdLineReq.Requirement);
                        }
                    }
                    EducationLine.localPriority = 0;

                    FirstCriterionContainer.Add(EducationLine);
                }
                else
                {
                    reqExamSum = Convert.ToInt32(EdLine.RequiredSum);

                    FirstCriterionUnit EducationLine = new FirstCriterionUnit();
                    EducationLine.databaseId = Convert.ToInt32(EdLine.Id);
                    EducationLine.firstCriterionAcceptable = true;
                    EducationLine.matrixId    = totalAvailLines;
                    EducationLine.requiredSum = Convert.ToInt32(EdLine.RequiredSum);
                    foreach (EducationLineRequirement EdLineReq in EdLine.EducationLinesRequirements)
                    {
                        if (EdLineReq.ExamDiscipline.ExamType != ExamType.UnitedStateExam)
                        {
                            EducationLine.requiredSum = EducationLine.requiredSum - Convert.ToInt32(EdLineReq.Requirement);
                        }
                    }
                    EducationLine.entrantSum         = entrExamSum;
                    EducationLine.weakenedDifficulty = WeakenedDifficultyResult(entrExamSum, Convert.ToInt32(EdLine.RequiredSum));
                    EducationLine.localPriority      = 0;

                    totalAvailLines++;

                    FirstCriterionContainer.Add(EducationLine);
                }
            }
            firstCriterionMatrixSize = totalAvailLines;
            if (FirstCriterionContainer.Count > totalEducationLines)
            {
                totalEducationLines = FirstCriterionContainer.Count;
            }
        }