コード例 #1
0
ファイル: ReportBuilder.cs プロジェクト: xoposhiy/KOIB
        private void ApplyStandartTemplatesToLine(Election election, StringBuilder text)
        {
            text.Replace(MACRO_ELECTION_NAME, election.Name);
            if (PlatformDetector.IsUnix)
            {
                text.Replace(MACRO_VOTING_DATE, ReportTemplateParser.DataConvert(
                                 _electionManager.SourceData.ElectionDate.ToString(ELECTION_DATE_FORMAT,
                                                                                   new System.Globalization.CultureInfo("ru-RU"))));
                text.Replace(MACRO_CURRENT_DATE, ReportTemplateParser.DataConvert(
                                 DateTime.Now.ToString(CURRENT_DATETIME_FORMAT, new System.Globalization.CultureInfo("ru-RU"))));
            }
            else
            {
                text.Replace(MACRO_VOTING_DATE,
                             _electionManager.SourceData.ElectionDate.ToString(ELECTION_DATE_FORMAT));
                text.Replace(MACRO_CURRENT_DATE, DateTime.Now.ToString(CURRENT_DATETIME_FORMAT));
            }
            text.Replace(MACRO_UIK, _electionManager.SourceData.Uik.ToString());
            var exp = new UikMemberNamesRegex();

            foreach (Match match in exp.Matches(text.ToString()))
            {
                var    altValue = match.Value.Split(':')[1].Trim('}');
                string name     = null;
                if (match.Value.Contains(CommitteeMemberType.ChairmanAssistant.ToString()))
                {
                    name = _electionManager.SourceData.GetCommitteeMemberInitialByType(CommitteeMemberType.ChairmanAssistant);
                }
                else if (match.Value.Contains(CommitteeMemberType.Chairman.ToString()))
                {
                    name =
                        _electionManager.SourceData.GetCommitteeMemberInitialByType(CommitteeMemberType.Chairman);
                }
                else if (match.Value.Contains(CommitteeMemberType.Secretary.ToString()))
                {
                    name = _electionManager.SourceData.GetCommitteeMemberInitialByType(CommitteeMemberType.Secretary);
                }
                text.Replace(match.Value, string.IsNullOrEmpty(name) ? altValue : name);
            }
        }