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; }
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(); } }
partial void DeleteEmailModels(EmailModels instance);
partial void UpdateEmailModels(EmailModels instance);
partial void InsertEmailModels(EmailModels instance);
private void detach_EmailModels(EmailModels entity) { this.SendPropertyChanging(); entity.AspNetUsers = null; }