Esempio n. 1
0
        private RowRuEng PrepareRow_If_Autocalc(RowRuEng row)
        {
            row.RuStr += "{" + CalculateWaitAfterRu(row.EnStr) + "}";

            _repeatCount = CalculateRepeatCount(row.EnStr);

            if (_repeatCount == 1)
            {
                _waitAfterEn = 0;
            }
            else
            {
                _waitAfterEn = 3;
            }

            //увеличиваем количество
            for (int i = 1; i < _repeatCount; i++)
            {
                row.EnStr += "{3}" + row.EnStr;
            }

            //вконце en строки добавляю 2 секунды
            row.EnStr += "{" + 2 + "}";

            return(row);
        }
Esempio n. 2
0
        /// <summary>
        /// ЕСЛИ НЕ ЗАДАНА НАСТРОЙКА - "РАССЧИТАТЬ АВТОМАТИЧЕСКИ"
        /// </summary>
        private RowRuEng PrepareRow_If_No_Autocalc(RowRuEng row)
        {
            if (string.IsNullOrWhiteSpace(row.EnStr))
            {
                return(row);
            }

            //ожидание времени после русской фразы
            if (_waitAfterRu != null)
            {
                row.RuStr += "{" + _waitAfterRu + "}";
            }

            //ожидание времени после английской фразы
            if (_waitAfterEn != null && _waitAfterEn != 0)
            {
                row.EnStr += "{" + _waitAfterEn + "}";
            }

            //увеличиваем количество повторов
            if (_repeatCount != null && _repeatCount != 0)
            {
                var str = "";

                for (int i = 0; i < _repeatCount; i++)
                {
                    str += row.EnStr;
                }

                row.EnStr = str;
            }

            return(row);
        }
Esempio n. 3
0
        private void WriteRow(RowRuEng row, int rowNumber, int workSheetNumber)
        {
            var cellAddrRu = "A" + rowNumber;
            var cellAddrEn = "B" + rowNumber;

            WriteStr(workSheetNumber, cellAddrRu, row.RuStr);
            WriteStr(workSheetNumber, cellAddrEn, row.EnStr);
        }
Esempio n. 4
0
        public RowRuEng SplitString(string str)
        {
            if (string.IsNullOrWhiteSpace(str))
            {
                return(null);
            }

            var rusPart = new string(str.TakeWhile(x => !IsLatinLetter(x)).ToArray())?.Trim();

            var engPart = "";

            if (!string.IsNullOrWhiteSpace(rusPart))
            {
                engPart = str.Replace(rusPart, "")?.Trim();
            }

            var result = new RowRuEng(rusPart, engPart, 1);

            return(result);
        }
Esempio n. 5
0
        //private void SayRow(RowRuEng row)
        //{
        //	//ожидание времени после русской фразы
        //	if (_waitFirst != null && !_calculateWaitAfterRu)
        //		row.RuStr += "{" + _waitFirst + "}";

        //	if (_calculateWaitAfterRu)
        //		row.RuStr += "{" + CalculateWaitByWords(row.EnStr) + "}";

        //	if (_calculateRepeat)
        //	{
        //		_repeatCount = CalculateRepeatCount(row.EnStr);

        //		if (_repeatCount == 1)
        //			_waitOthers = 0;
        //		else
        //			_waitOthers = 3;
        //	}

        //	//ожидание вреиени после английской фразы
        //	if (_waitOthers != null)
        //		row.EnStr += "{" + _waitOthers + "}";
        //	else
        //		row.EnStr += "{" + 2 + "}";

        //	//увеличиваем количество
        //	if (_repeatCount != null)
        //	{
        //		for (int i = 1; i < _repeatCount; i++)
        //		{
        //			row.EnStr += row.EnStr;
        //		}
        //	}

        //	//после всей строки добавляю 2 секунды ожидания если фраза на EN длинная
        //	if (CalculateWaitByWords(row.EnStr) > 5)
        //		row.EnStr += "{" + 2 + "}";

        //	if (!String.IsNullOrWhiteSpace(row.RuStr))
        //		SayStr(row.RuStr, Constants.Ru);

        //	if (!String.IsNullOrWhiteSpace(row.EnStr))
        //		SayStr(row.EnStr, Constants.En);
        //}

        private void SayRow(RowRuEng row)
        {
            if (_autoCalc)
            {
                row = PrepareRow_If_Autocalc(row);
            }
            else
            {
                row = PrepareRow_If_No_Autocalc(row);
            }

            if (!String.IsNullOrWhiteSpace(row.RuStr))
            {
                SayStr(row.RuStr, Constants.Ru);
            }

            if (!String.IsNullOrWhiteSpace(row.EnStr))
            {
                SayStr(row.EnStr, Constants.En);
            }
        }
Esempio n. 6
0
        public List <RowRuEng> GetRowsRuEng(int workSheetNumber)
        {
            IXLWorksheet worksheet = _workbook.Worksheet(workSheetNumber);

            var list = new List <RowRuEng>();

            if (worksheet.LastRowUsed() == null)
            {
                return(list);
            }

            for (int i = 1; i <= worksheet.LastRowUsed().RowNumber(); i++)
            {
                var ruStr     = worksheet.Row(i).Cell(1).GetValue <string>();
                var enStr     = worksheet.Row(i).Cell(2).GetValue <string>();
                var testValue = new RowRuEng(ruStr, enStr, i);

                list.Add(testValue);
            }

            return(list);
        }