public void ChangeDocuments(IDocument document, IFillingInfo info)
 {
     document.Open();
     foreach (var fillingPart in info.Fields)
     {
         document.ReplaceTextInPosition(fillingPart.Value, fillingPart.Key);
     }
     SetCursAlgorythm(document, info);
 }
        private IDocument FormDocument(IFillingInfo info)
        {
            _pathToExcelDocument = AppConfigManager.Instance().GetStorage();
            string name         = (GenerateFileName(info)).Trim();
            string fullPath     = (Path.Combine(_pathToStorageFolder, name)).Trim();
            string templatePath = null;

            switch (info.Fields["<gender>"])
            {
            case "male":
                templatePath = AppConfigManager.Instance().GetMaleTemplate();
                break;

            case "female":
                templatePath = AppConfigManager.Instance().GetFemaleTemplate();
                break;
            }
            File.Copy(templatePath, fullPath);
            return(new OpenXMLWordDocument(fullPath, name));
        }
        private void SetCursAlgorythm(IDocument document, IFillingInfo info)
        {
            string curs = (info.Fields["<dn>"] + info.Fields["<dl>"]).ToLower();

            for (char i = 'a'; i < 'd'; ++i)
            {
                for (int j = 1; j < 3; ++j)
                {
                    string currentCurs = j.ToString() + i.ToString();
                    if (currentCurs == curs)
                    {
                        document.ReplaceTextInPosition("X", currentCurs);
                    }
                    else
                    {
                        document.ReplaceTextInPosition(" ", currentCurs);
                    }
                }
            }
        }
        public IDocument CreateDocument(IFillingInfo info)
        {
            _pathToExcelDocument = AppConfigManager.Instance().GetStorage();

            string name         = (GenerateFileName(info)).Trim();
            string fullPath     = (Path.Combine(_pathToStorageFolder, name)).Trim();
            string templatePath = null;

            switch (info.Fields["<gender>"])
            {
            case "male":
                templatePath = AppConfigManager.Instance().GetMaleTemplate();
                break;

            case "female":
                templatePath = AppConfigManager.Instance().GetFemaleTemplate();
                break;
            }
            _copyAlgorythm.MakeCopy(templatePath, fullPath);
            return(new InteropWordDocument(name, fullPath));
        }
 private string GenerateFileName(IFillingInfo info)
 {
     return(string.Format("{0}.{1}_{2}{3}", info.Fields["<id>"], info.Fields["<NAME>"], info.Fields["<LASTNAME>"], AppConfigManager.Instance().GetExtention()));
 }
 public IDocument CreateDocument(IFillingInfo info)
 {
     return(FormDocument(info));
 }