示例#1
0
        private void StartWork()
        {
            if (lst_params.SelectedItems.Count != 0)
            {
                int             param        = int.Parse(this.lst_params.SelectedItems[0].SubItems[0].Text);
                bool            haveprinting = true;
                EnumPTests      test         = (EnumPTests)int.Parse(this.lst_references.SelectedItems[0].SubItems[0].Text);
                EnumPReferences reference    = EnumPReferences.NoReference;
                switch (param)
                {
                case -2:
                    reference = EnumPReferences.NoReference;
                    break;

                case -1:
                    haveprinting = false;
                    break;

                default:
                    reference = (EnumPReferences)param;
                    break;
                }
                RecogAutomator automator = new RecogAutomator(test, _ge, _fe, reference, haveprinting);
                automator.Start();
            }
            else
            {
                MessageBox.Show("Необходимо выбрать параметр печати и тест");
            }
        }
示例#2
0
 public RecogAutomator(EnumPTests test, pBaseEntities ge, fBaseEntities fe, EnumPReferences reference = EnumPReferences.NoReference, bool printing = true)
 {
     _test      = test;
     _reference = reference;
     _fe        = fe;
     _ge        = ge;
     _printing  = printing;
 }
示例#3
0
 public RecogAutomator(EnumPTests test, pBaseEntities ge,fBaseEntities fe, EnumPReferences reference=EnumPReferences.NoReference,bool printing=true )
 {
     _test = test;
     _reference = reference;
     _fe = fe;
     _ge = ge;
     _printing = printing;
 }
示例#4
0
        /// <summary>
        /// Определяет, какие тесны нужно отметить для выбранной характеристики
        /// </summary>
        /// <param name="SelectedRef">Выбранная характеристика</param>
        /// <returns></returns>
        public List <int> GetUsedTestIds(EnumPReferences SelectedRef)
        {
            List <int> _checkedtest = new List <int>();


            switch (SelectedRef)
            {
            case EnumPReferences.KettellC:
                _checkedtest.Add(_human.testresults.LastOrDefault(test => test.testid == (int)EnumPTests.KettellC).idtr);
                break;

            case EnumPReferences.Adaptability:
                _checkedtest.Add(_human.testresults.LastOrDefault(test => test.testid == (int)EnumPTests.Adaptability).idtr);
                break;

            case EnumPReferences.FPI:
                _checkedtest.Add(_human.testresults.LastOrDefault(test => test.testid == (int)EnumPTests.FPI).idtr);
                break;

            case EnumPReferences.KettellA:
                _checkedtest.Add(_human.testresults.LastOrDefault(test => test.testid == (int)EnumPTests.KettellA).idtr);
                break;

            case EnumPReferences.Modul:
                _checkedtest.Add(_human.testresults.LastOrDefault(test => test.testid == (int)EnumPTests.Modul2).idtr);
                break;

            case EnumPReferences.Integrative:
                _checkedtest.Add(_human.testresults.LastOrDefault(test => test.testid == (int)EnumPTests.KettellC).idtr);
                break;

            case EnumPReferences.Prognoz:
                _checkedtest.Add(_human.testresults.LastOrDefault(test => test.testid == (int)EnumPTests.Prognoz).idtr);
                break;

            case EnumPReferences.Addictive:
                _checkedtest.Add(_human.testresults.LastOrDefault(test => test.testid == (int)EnumPTests.Addictive).idtr);
                break;

            case EnumPReferences.NPNA:
                _checkedtest.Add(_human.testresults.LastOrDefault(test => test.testid == (int)EnumPTests.NPNA).idtr);
                break;

            case EnumPReferences.Leongard:
                _checkedtest.Add(_human.testresults.LastOrDefault(test => test.testid == (int)EnumPTests.Leongard).idtr);
                break;
            }

            return(_checkedtest);
        }
示例#5
0
        /// <summary>
        /// Создает характеристику по выбранным тестам
        /// </summary>
        /// <param name="checkedtestsid">Отмеченные тесты</param>
        /// <param name="SelectedRef">Выбранная характеристика</param>
        /// <returns></returns>
        public IReference GetReference(List <int> checkedtestsid, EnumPReferences SelectedRef)
        {
            IReference        _reference  = null;
            List <testresult> testresults = new List <testresult>();

            foreach (int testid in checkedtestsid)
            {//выбираем все отмеченные тесты
                testresults.Add(_human.testresults.FirstOrDefault(test => test.idtr == testid));
            }

            switch (SelectedRef)
            {
            case EnumPReferences.KettellC:
                if (testresults.Count(test => test.testid == (int)EnumPTests.KettellC) != 0)
                {
                    testresult  kettellctestresult = testresults.LastOrDefault(test => test.testid == (int)EnumPTests.KettellC);
                    ITestReport kettellcreport     = new KettellCTestReport(_human, kettellctestresult, _ge, _fe, true);
                    _reference = new KettellCTestReference(kettellcreport);
                }
                else
                {
                    MessageBox.Show("Для выбранной характеристики необходим тест Кеттелла С \nОтметьте его галочной в списке тестов");
                }
                break;

            case EnumPReferences.Adaptability:
                if (testresults.Count(test => test.testid == (int)EnumPTests.Adaptability) != 0)
                {
                    testresult  dtestresult = testresults.LastOrDefault(test => test.testid == (int)EnumPTests.Adaptability);
                    ITestReport dreport     = new DTestReport(_human, dtestresult, _ge, _fe, true);
                    _reference = new DTestReference(dreport);
                }
                else
                {
                    MessageBox.Show("Для выбранной характеристики необходим тест Адаптивность \nОтметьте его галочной в списке тестов");
                }
                break;

            case EnumPReferences.FPI:
                if (testresults.Count(test => test.testid == (int)EnumPTests.FPI) != 0)
                {
                    testresult  fpitestresult = testresults.LastOrDefault(test => test.testid == (int)EnumPTests.FPI);
                    ITestReport fpireport     = new FPITestReport(_human, fpitestresult, _ge, _fe, true);
                    _reference = new FPITestReference(fpireport);
                }
                else
                {
                    MessageBox.Show("Для выбранной характеристики необходим тест FPI \nОтметьте его галочной в списке тестов");
                }
                break;

            case EnumPReferences.KettellA:
                if (testresults.Count(test => test.testid == (int)EnumPTests.KettellA) != 0)
                {
                    testresult  kettellatestresult = testresults.LastOrDefault(test => test.testid == (int)EnumPTests.KettellA);
                    ITestReport kettellareport     = new KettellATestReport(_human, kettellatestresult, _ge, _fe, true);
                    _reference = new KettellATestReference(kettellareport);
                }
                else
                {
                    MessageBox.Show("Для выбранной характеристики необходим тест Кеттелла А \nОтметьте его галочной в списке тестов");
                }
                break;

            case EnumPReferences.Modul:
                if (testresults.Count(test => test.testid == (int)EnumPTests.Modul2) != 0)
                {
                    testresult  mdtestresult = testresults.LastOrDefault(test => test.testid == (int)EnumPTests.Modul2);
                    ITestReport mdreport     = new MDTestReport(_human, mdtestresult, _ge, _fe, true);
                    _reference = new MDTestReference(mdreport);
                }
                else
                {
                    MessageBox.Show("Для выбранной характеристики необходим тест Модуль \nОтметьте его галочной в списке тестов");
                }
                break;

            case EnumPReferences.Integrative:
                if (testresults.Count(test => test.testid == (int)EnumPTests.KettellC) != 0)
                {
                    testresult  kettelltestresult = testresults.LastOrDefault(test => test.testid == (int)EnumPTests.KettellC);
                    ITestReport kettellreport     = new KettellCTestReport(_human, kettelltestresult, _ge, _fe, true);
                    _reference = new IntegrativeReference(kettellreport, _fe);
                }
                else
                {
                    MessageBox.Show("Для выбранной характеристики необходим тест Кеттелла С \nОтметьте его галочной в списке тестов");
                }
                break;

            case EnumPReferences.Prognoz:
                if (testresults.Count(test => test.testid == (int)EnumPTests.Prognoz) != 0)
                {
                    testresult  prognoztestresult = testresults.LastOrDefault(test => test.testid == (int)EnumPTests.Prognoz);
                    ITestReport prognozreport     = new PTestReport(_human, prognoztestresult, _ge, _fe, true);
                    _reference = new PTestReference(prognozreport);
                }
                else
                {
                    MessageBox.Show("Для выбранной характеристики необходим тест Прогноз 2 \nОтметьте его галочной в списке тестов");
                }
                break;

            case EnumPReferences.Addictive:
                if (testresults.Count(test => test.testid == (int)EnumPTests.Addictive) != 0)
                {
                    testresult  addictivetestresult = testresults.LastOrDefault(test => test.testid == (int)EnumPTests.Addictive);
                    ITestReport addictivereport     = new ATestReport(_human, addictivetestresult, _ge, _fe, true);
                    _reference = new ATestReference(addictivereport);
                }
                else
                {
                    MessageBox.Show("Для выбранной характеристики необходим тест Аддиктивная склонность \nОтметьте его галочной в списке тестов");
                }
                break;

            case EnumPReferences.NPNA:
                if (testresults.Count(test => test.testid == (int)EnumPTests.NPNA) != 0)
                {
                    testresult  addictivetestresult = testresults.LastOrDefault(test => test.testid == (int)EnumPTests.NPNA);
                    ITestReport addictivereport     = new NPNTestReport(_human, addictivetestresult, _ge, _fe, true);
                    _reference = new NPNTestReference(addictivereport);
                }
                else
                {
                    MessageBox.Show("Для выбранной характеристики необходим тест НПН-А \nОтметьте его галочной в списке тестов");
                }
                break;

            case EnumPReferences.Leongard:
                if (testresults.Count(test => test.testid == (int)EnumPTests.Leongard) != 0)
                {
                    testresult  addictivetestresult = testresults.LastOrDefault(test => test.testid == (int)EnumPTests.Leongard);
                    ITestReport addictivereport     = new LTestReport(_human, addictivetestresult, _ge, _fe, true);
                    _reference = new LTestReference(addictivereport);
                }
                else
                {
                    MessageBox.Show("Для выбранной характеристики необходим тест Леонгарда \nОтметьте его галочной в списке тестов");
                }
                break;
            }
            return(_reference);
        }
示例#6
0
        /// <summary>
        /// Создает характеристику по выбранным тестам
        /// </summary>
        /// <param name="checkedtestsid">Отмеченные тесты</param>
        /// <param name="SelectedRef">Выбранная характеристика</param>
        /// <returns></returns>
        public IReference GetReference(List<int> checkedtestsid, EnumPReferences SelectedRef)
        {
            IReference _reference = null;
            List<testresult> testresults = new List<testresult>();

            foreach (int testid in checkedtestsid)
            {//выбираем все отмеченные тесты
                testresults.Add(_human.testresults.FirstOrDefault(test => test.idtr == testid));
            }

            switch (SelectedRef)
            {

                case EnumPReferences.KettellC:
                    if (testresults.Count(test => test.testid == (int)EnumPTests.KettellC) != 0)
                    {
                        testresult kettellctestresult = testresults.LastOrDefault(test => test.testid == (int)EnumPTests.KettellC);
                        ITestReport kettellcreport = new KettellCTestReport(_human, kettellctestresult, _ge, _fe, true);
                        _reference = new KettellCTestReference(kettellcreport);
                    }
                    else
                    { MessageBox.Show("Для выбранной характеристики необходим тест Кеттелла С \nОтметьте его галочной в списке тестов"); }
                    break;

                case EnumPReferences.Adaptability:
                    if (testresults.Count(test => test.testid == (int)EnumPTests.Adaptability) != 0)
                    {
                        testresult dtestresult = testresults.LastOrDefault(test => test.testid == (int)EnumPTests.Adaptability);
                        ITestReport dreport = new DTestReport(_human, dtestresult, _ge, _fe, true);
                        _reference = new DTestReference(dreport);
                    }
                    else
                    { MessageBox.Show("Для выбранной характеристики необходим тест Адаптивность \nОтметьте его галочной в списке тестов"); }
                    break;

                case EnumPReferences.FPI:
                    if (testresults.Count(test => test.testid == (int)EnumPTests.FPI) != 0)
                    {
                        testresult fpitestresult = testresults.LastOrDefault(test => test.testid == (int)EnumPTests.FPI);
                        ITestReport fpireport = new FPITestReport(_human, fpitestresult, _ge, _fe, true);
                        _reference = new FPITestReference(fpireport);
                    }
                    else
                    { MessageBox.Show("Для выбранной характеристики необходим тест FPI \nОтметьте его галочной в списке тестов"); }
                    break;

                case EnumPReferences.KettellA:
                    if (testresults.Count(test => test.testid == (int)EnumPTests.KettellA) != 0)
                    {
                        testresult kettellatestresult = testresults.LastOrDefault(test => test.testid == (int)EnumPTests.KettellA);
                        ITestReport kettellareport = new KettellATestReport(_human, kettellatestresult, _ge, _fe, true);
                        _reference = new KettellATestReference(kettellareport);
                    }
                    else
                    { MessageBox.Show("Для выбранной характеристики необходим тест Кеттелла А \nОтметьте его галочной в списке тестов"); }
                    break;

                case EnumPReferences.Modul:
                    if (testresults.Count(test => test.testid == (int)EnumPTests.Modul2) != 0)
                    {
                        testresult mdtestresult = testresults.LastOrDefault(test => test.testid == (int)EnumPTests.Modul2);
                        ITestReport mdreport = new MDTestReport(_human, mdtestresult, _ge, _fe, true);
                        _reference = new MDTestReference(mdreport);
                    }
                    else
                    { MessageBox.Show("Для выбранной характеристики необходим тест Модуль \nОтметьте его галочной в списке тестов"); }
                    break;

                case EnumPReferences.Integrative:
                    if (testresults.Count(test => test.testid == (int)EnumPTests.KettellC) != 0)
                    {
                        testresult kettelltestresult = testresults.LastOrDefault(test => test.testid == (int)EnumPTests.KettellC);
                        ITestReport kettellreport = new KettellCTestReport(_human, kettelltestresult, _ge, _fe, true);
                        _reference = new IntegrativeReference(kettellreport,_fe);
                    }
                    else
                    { MessageBox.Show("Для выбранной характеристики необходим тест Кеттелла С \nОтметьте его галочной в списке тестов"); }
                    break;
                case EnumPReferences.Prognoz:
                    if (testresults.Count(test => test.testid == (int)EnumPTests.Prognoz) != 0)
                    {
                        testresult prognoztestresult = testresults.LastOrDefault(test => test.testid == (int)EnumPTests.Prognoz);
                        ITestReport prognozreport = new PTestReport(_human, prognoztestresult, _ge, _fe, true);
                        _reference = new PTestReference(prognozreport);
                    }
                    else
                    { MessageBox.Show("Для выбранной характеристики необходим тест Прогноз 2 \nОтметьте его галочной в списке тестов"); }
                    break;
                case EnumPReferences.Addictive:
                    if (testresults.Count(test => test.testid == (int)EnumPTests.Addictive) != 0)
                    {
                        testresult addictivetestresult = testresults.LastOrDefault(test => test.testid == (int)EnumPTests.Addictive);
                        ITestReport addictivereport = new ATestReport(_human, addictivetestresult, _ge, _fe, true);
                        _reference = new ATestReference(addictivereport);
                    }
                    else
                    { MessageBox.Show("Для выбранной характеристики необходим тест Аддиктивная склонность \nОтметьте его галочной в списке тестов"); }
                    break;
                case EnumPReferences.NPNA:
                    if (testresults.Count(test => test.testid == (int)EnumPTests.NPNA) != 0)
                    {
                        testresult addictivetestresult = testresults.LastOrDefault(test => test.testid == (int)EnumPTests.NPNA);
                        ITestReport addictivereport = new NPNTestReport(_human, addictivetestresult, _ge, _fe, true);
                        _reference = new NPNTestReference(addictivereport);
                    }
                    else
                    { MessageBox.Show("Для выбранной характеристики необходим тест НПН-А \nОтметьте его галочной в списке тестов"); }
                    break;
                case EnumPReferences.Leongard:
                    if (testresults.Count(test => test.testid == (int)EnumPTests.Leongard) != 0)
                    {
                        testresult addictivetestresult = testresults.LastOrDefault(test => test.testid == (int)EnumPTests.Leongard);
                        ITestReport addictivereport = new LTestReport(_human, addictivetestresult, _ge, _fe, true);
                        _reference = new LTestReference(addictivereport);
                    }
                    else
                    { MessageBox.Show("Для выбранной характеристики необходим тест Леонгарда \nОтметьте его галочной в списке тестов"); }
                    break;
            }
            return _reference;
        }
示例#7
0
        /// <summary>
        /// Определяет, какие тесны нужно отметить для выбранной характеристики
        /// </summary>
        /// <param name="SelectedRef">Выбранная характеристика</param>
        /// <returns></returns>
        public List<int> GetUsedTestIds(EnumPReferences SelectedRef)
        {
            List<int> _checkedtest = new List<int>();

            switch (SelectedRef)
            {

                case EnumPReferences.KettellC:
                    _checkedtest.Add(_human.testresults.LastOrDefault(test => test.testid == (int)EnumPTests.KettellC).idtr);
                    break;
                case EnumPReferences.Adaptability:
                    _checkedtest.Add(_human.testresults.LastOrDefault(test => test.testid == (int)EnumPTests.Adaptability).idtr);
                    break;
                case EnumPReferences.FPI:
                    _checkedtest.Add(_human.testresults.LastOrDefault(test => test.testid == (int)EnumPTests.FPI).idtr);
                    break;
                case EnumPReferences.KettellA:
                    _checkedtest.Add(_human.testresults.LastOrDefault(test => test.testid == (int)EnumPTests.KettellA).idtr);
                    break;
                case EnumPReferences.Modul:
                    _checkedtest.Add(_human.testresults.LastOrDefault(test => test.testid == (int)EnumPTests.Modul2).idtr);
                    break;
                case EnumPReferences.Integrative:
                    _checkedtest.Add(_human.testresults.LastOrDefault(test => test.testid == (int)EnumPTests.KettellC).idtr);
                    break;
                case EnumPReferences.Prognoz:
                    _checkedtest.Add(_human.testresults.LastOrDefault(test => test.testid == (int)EnumPTests.Prognoz).idtr);
                    break;
                case EnumPReferences.Addictive:
                    _checkedtest.Add(_human.testresults.LastOrDefault(test => test.testid == (int)EnumPTests.Addictive).idtr);
                    break;
                case EnumPReferences.NPNA:
                    _checkedtest.Add(_human.testresults.LastOrDefault(test => test.testid == (int)EnumPTests.NPNA).idtr);
                    break;
                case EnumPReferences.Leongard:
                    _checkedtest.Add(_human.testresults.LastOrDefault(test => test.testid == (int)EnumPTests.Leongard).idtr);
                    break;
            }

            return _checkedtest;
        }