示例#1
0
        public RecruitCardGroup ImportRecruitCardGroup(RecruitShortUIModel recruitShortUIModel)
        {
            if (recruitShortUIModel == null)
            {
                throw new ArgumentNullException(nameof(recruitShortUIModel));
            }

            var importFileReader = new ImportFileReader(recruitShortUIModel.FilePath);
            var words            = importFileReader.ReadAllWords();

            RecruitIndex idxFromRecruitShortUIModel = new RecruitIndex(recruitShortUIModel.Surname,
                                                                       recruitShortUIModel.Name,
                                                                       recruitShortUIModel.Patronymic,
                                                                       recruitShortUIModel.RegionalCollectionPoint);

            RecruitIndex firstIdxFromImportedFile  = GetFirstRecruitIdxFromImportedFile(words);
            RecruitIndex secondIdxFromImportedFile = GetSecondRecruitIdxFromImportedFile(words);

            bool isFirstRecruit  = idxFromRecruitShortUIModel == firstIdxFromImportedFile;
            bool isSecondRecruit = idxFromRecruitShortUIModel == secondIdxFromImportedFile;

            if (isFirstRecruit && isSecondRecruit)
            {
                var index = idxFromRecruitShortUIModel.ToString();
                var msg   = $"File with path: {recruitShortUIModel.FilePath} have not recruit: {index}";
                throw new ArgumentException(msg);
            }

            return(CreateCardGroup(words, isFirstRecruit));
        }
示例#2
0
        private IEnumerable <RecruitShortUIModel> GetRecruitShortUIModels(string plainFilePath)
        {
            var recruitInfoes = new List <RecruitShortUIModel>();

            var importFileReader = new ImportFileReader(plainFilePath);
            var words            = importFileReader.ReadAllWords();

            var firstRecruitInfo = CreateRecruitShortUIModel(plainFilePath, words,
                                                             isFirstRecruit: true);

            recruitInfoes.Add(firstRecruitInfo);

            if (IsExistsSecondRecruit(words[64]))
            {
                var secondRecruitInfo = CreateRecruitShortUIModel(plainFilePath, words,
                                                                  isFirstRecruit: false);

                recruitInfoes.Add(secondRecruitInfo);
            }

            return(recruitInfoes);
        }