private void fillData() { //Для разбора дат и сумм. var culture = CultureInfo.CreateSpecificCulture("ru-RU"); culture.NumberFormat.NumberDecimalSeparator = "."; TransferDocuments = new List <TransferDocument> (); foreach (var document in documents) { if (document["СекцияДокумент"] == "Мемориальный ордер") { logger.Info("Пропущена секция \"Мемориальный ордер\"..."); continue; } TransferDocument doc = new TransferDocument(); doc.DocumentType = TransferDocument.GetDocTypeFromString(document ["СекцияДокумент"]); doc.Number = document ["Номер"]; doc.Date = DateTime.Parse(document ["Дата"], culture); doc.Total = Decimal.Parse(document ["Сумма"], culture.NumberFormat); doc.PayerAccount = document ["ПлательщикСчет"]; if (document.ContainsKey("ДатаСписано") && !String.IsNullOrWhiteSpace(document ["ДатаСписано"])) { doc.WriteoffDate = DateTime.Parse(document ["ДатаСписано"], culture); } if (document.ContainsKey("Плательщик")) { doc.PayerName = document ["Плательщик"]; } else { doc.PayerName = document ["Плательщик1"]; } if (doc.PayerName.Contains("р/с") && !String.IsNullOrWhiteSpace(doc.PayerName.Substring(0, doc.PayerName.IndexOf("р/с")))) { doc.PayerName = doc.PayerName.Substring(0, doc.PayerName.IndexOf("р/с")); } if (doc.PayerName.Contains("//") && !String.IsNullOrWhiteSpace(doc.PayerName.Substring(0, doc.PayerName.IndexOf("//")))) { doc.PayerName = doc.PayerName.Substring(0, doc.PayerName.IndexOf("//")); } doc.PayerInn = document ["ПлательщикИНН"]; doc.PayerKpp = document ["ПлательщикКПП"]; doc.PayerCheckingAccount = document ["ПлательщикРасчСчет"]; doc.PayerBank = document ["ПлательщикБанк1"]; doc.PayerBik = document ["ПлательщикБИК"]; doc.PayerCorrespondentAccount = document ["ПлательщикКорсчет"]; doc.RecipientAccount = document ["ПолучательСчет"]; if (document.ContainsKey("ДатаПоступило") && !String.IsNullOrWhiteSpace(document ["ДатаПоступило"])) { doc.ReceiptDate = DateTime.Parse(document ["ДатаПоступило"], culture); } if (document.ContainsKey("Получатель")) { doc.RecipientName = document ["Получатель"]; } else { doc.RecipientName = document ["Получатель1"]; } if (doc.RecipientName.Contains("р/с") && !String.IsNullOrWhiteSpace(doc.RecipientName.Substring(0, doc.RecipientName.IndexOf("р/с")))) { doc.RecipientName = doc.RecipientName.Substring(0, doc.RecipientName.IndexOf("р/с")); } if (doc.RecipientName.Contains("//") && !String.IsNullOrWhiteSpace(doc.RecipientName.Substring(0, doc.RecipientName.IndexOf("//")))) { doc.RecipientName = doc.RecipientName.Substring(0, doc.RecipientName.IndexOf("//")); } doc.RecipientInn = document ["ПолучательИНН"]; doc.RecipientKpp = document ["ПолучательКПП"]; doc.RecipientCheckingAccount = document ["ПолучательРасчСчет"]; doc.RecipientBank = document ["ПолучательБанк1"]; doc.RecipientBik = document ["ПолучательБИК"]; doc.RecipientCorrespondentAccount = document ["ПолучательКорсчет"]; doc.PaymentPurpose = document ["НазначениеПлатежа"]; string value; value = StringWorks.Replaces.Values.FirstOrDefault(doc.PayerName.Contains); if (!String.IsNullOrWhiteSpace(value)) { doc.PayerName = doc.PayerName.Replace(value, StringWorks.Replaces.Keys.FirstOrDefault(key => StringWorks.Replaces [key] == value)); } value = StringWorks.Replaces.Values.FirstOrDefault(doc.RecipientName.Contains); if (!String.IsNullOrWhiteSpace(value)) { doc.RecipientName = doc.RecipientName.Replace(value, StringWorks.Replaces.Keys.FirstOrDefault(key => StringWorks.Replaces [key] == value)); } TransferDocuments.Add(doc); } }
private void fillData() { //Для разбора дат и сумм. var culture = CultureInfo.CreateSpecificCulture ("ru-RU"); culture.NumberFormat.NumberDecimalSeparator = "."; TransferDocuments = new List<TransferDocument> (); foreach (var document in documents) { if (document["СекцияДокумент"] == "Мемориальный ордер") { logger.Info("Пропущена секция \"Мемориальный ордер\"..."); continue; } TransferDocument doc = new TransferDocument (); doc.DocumentType = TransferDocument.GetDocTypeFromString (document ["СекцияДокумент"]); doc.Number = document ["Номер"]; doc.Date = DateTime.Parse (document ["Дата"], culture); doc.Total = Decimal.Parse (document ["Сумма"], culture.NumberFormat); doc.PayerAccount = document ["ПлательщикСчет"]; if (document.ContainsKey ("ДатаСписано") && !String.IsNullOrWhiteSpace (document ["ДатаСписано"])) doc.WriteoffDate = DateTime.Parse (document ["ДатаСписано"], culture); if (document.ContainsKey ("Плательщик")) doc.PayerName = document ["Плательщик"]; else doc.PayerName = document ["Плательщик1"]; if (doc.PayerName.Contains ("р/с") && !String.IsNullOrWhiteSpace (doc.PayerName.Substring (0, doc.PayerName.IndexOf ("р/с")))) doc.PayerName = doc.PayerName.Substring (0, doc.PayerName.IndexOf ("р/с")); if (doc.PayerName.Contains ("//") && !String.IsNullOrWhiteSpace (doc.PayerName.Substring (0, doc.PayerName.IndexOf ("//")))) doc.PayerName = doc.PayerName.Substring (0, doc.PayerName.IndexOf ("//")); doc.PayerInn = document ["ПлательщикИНН"]; doc.PayerKpp = document ["ПлательщикКПП"]; doc.PayerCheckingAccount = document ["ПлательщикРасчСчет"]; doc.PayerBank = document ["ПлательщикБанк1"]; doc.PayerBik = document ["ПлательщикБИК"]; doc.PayerCorrespondentAccount = document ["ПлательщикКорсчет"]; doc.RecipientAccount = document ["ПолучательСчет"]; if (document.ContainsKey ("ДатаПоступило") && !String.IsNullOrWhiteSpace (document ["ДатаПоступило"])) doc.ReceiptDate = DateTime.Parse (document ["ДатаПоступило"], culture); if (document.ContainsKey ("Получатель")) doc.RecipientName = document ["Получатель"]; else doc.RecipientName = document ["Получатель1"]; if (doc.RecipientName.Contains ("р/с") && !String.IsNullOrWhiteSpace (doc.RecipientName.Substring (0, doc.RecipientName.IndexOf ("р/с")))) doc.RecipientName = doc.RecipientName.Substring (0, doc.RecipientName.IndexOf ("р/с")); if (doc.RecipientName.Contains ("//") && !String.IsNullOrWhiteSpace (doc.RecipientName.Substring (0, doc.RecipientName.IndexOf ("//")))) doc.RecipientName = doc.RecipientName.Substring (0, doc.RecipientName.IndexOf ("//")); doc.RecipientInn = document ["ПолучательИНН"]; doc.RecipientKpp = document ["ПолучательКПП"]; doc.RecipientCheckingAccount = document ["ПолучательРасчСчет"]; doc.RecipientBank = document ["ПолучательБанк1"]; doc.RecipientBik = document ["ПолучательБИК"]; doc.RecipientCorrespondentAccount = document ["ПолучательКорсчет"]; doc.PaymentPurpose = document ["НазначениеПлатежа"]; string value; value = StringWorks.Replaces.Values.FirstOrDefault (doc.PayerName.Contains); if (!String.IsNullOrWhiteSpace (value)) { doc.PayerName = doc.PayerName.Replace (value, StringWorks.Replaces.Keys.FirstOrDefault (key => StringWorks.Replaces [key] == value)); } value = StringWorks.Replaces.Values.FirstOrDefault (doc.RecipientName.Contains); if (!String.IsNullOrWhiteSpace (value)) { doc.RecipientName = doc.RecipientName.Replace (value, StringWorks.Replaces.Keys.FirstOrDefault (key => StringWorks.Replaces [key] == value)); } TransferDocuments.Add (doc); } }