Example #1
0
 private static string BeforeParseValueFromEmail(EmailModels email, EmailDataParsingRulesModels rule)
 {
     switch (rule.ParsingMode)
     {
         case (int)ParsingModeEnum.SearchInSubjectAndBody:
             if (email.Subject != null)
             {
                 return ParseValueFromEmail(email.Subject, rule) != null ? ParseValueFromEmail(email.Subject, rule) :
                                                                           ParseValueFromEmail(email.Content, rule);
             }
             else
             {
                 return ParseValueFromEmail(email.Content, rule);
             }
         case (int)ParsingModeEnum.SearchOnlyInSubject:
             if (email.Subject != null)
             {
                 return ParseValueFromEmail(email.Subject, rule);
             }
             else break;
         case (int)ParsingModeEnum.SearchOnlyInBody:
             if (email.Content != null)
             {
                 return ParseValueFromEmail(email.Content, rule);
             }
             else break;
         default:
             if (email.Subject != null)
             {
                 return ParseValueFromEmail(email.Subject, rule) != null ? ParseValueFromEmail(email.Subject, rule) :
                                                                           ParseValueFromEmail(email.Content, rule);
             }
             else
             {
                 return ParseValueFromEmail(email.Content, rule);
             }
     }
     return null;
 }
Example #2
0
        private static void ParseCellValue(EmailModels email, EmailDataParsingRulesModels dataParsingRule, int row, bool CopyRuleFromPreviousOrder)
        {
            // AddLog("ParseCellValue");
            var path = SpreadsheetHelper.GetSpreadsheetPathById((long)dataParsingRule.TableId_Id);

            if (path != null)
            {
                var name = dataParsingRule.TableId_Id.ToString();

                SpreadsheetExtension.LoadDocument(name, path);
                IWorkbook workbook = SpreadsheetExtension.GetCurrentDocument(name);

                Worksheet worksheet = workbook.Worksheets[dataParsingRule.Worksheet];

                var value = BeforeParseValueFromEmail(email, dataParsingRule);
                if (value != null)
                {
                    if (dataParsingRule.IsUpdatingRule)
                    {
                        if (CopyRuleFromPreviousOrder)
                        {
                            worksheet.Cells[row, dataParsingRule.ColumnForUpdate].CopyFrom(worksheet.Cells[row + 1, dataParsingRule.ColumnForUpdate], PasteSpecial.Formats);
                        }
                        worksheet.Cells[row, dataParsingRule.ColumnForUpdate].Value = value.Replace("\n", " ");
                    }
                    else
                    {
                        if (CopyRuleFromPreviousOrder)
                        {
                            worksheet.Cells[row, dataParsingRule.Column].CopyFrom(worksheet.Cells[row + 1, dataParsingRule.Column], PasteSpecial.Formats);
                        }
                        worksheet.Cells[row, dataParsingRule.Column].Value = value.Replace("\n", " ");
                    }
                }
                workbook.SaveDocument(path);
                SpreadsheetExtension.CloseDocument(name);

                Repository<ParsedCells> parsedCellsRepository = new Repository<ParsedCells>();

                var cell = new ParsedCells
                {
                    Column = dataParsingRule.Column,
                    Content = value,
                    EmailId_Id = email.Id,
                    TableId_Id = dataParsingRule.TableId_Id,
                    Worksheet = dataParsingRule.Worksheet,
                    WorksheetName = worksheet.Name
                };

                parsedCellsRepository.Add(cell);
                parsedCellsRepository.Commit();
            }
        }
Example #3
0
 partial void DeleteEmailModels(EmailModels instance);
Example #4
0
 partial void UpdateEmailModels(EmailModels instance);
Example #5
0
 partial void InsertEmailModels(EmailModels instance);
Example #6
0
		private void detach_EmailModels(EmailModels entity)
		{
			this.SendPropertyChanging();
			entity.AspNetUsers = null;
		}