public ASCIIFileProcess( FlatFile fileInfo, MSD1FileProcess msd1FileProcess, MSD2FileProcess msd2FileProcess, MSD3FileProcess msd3FileProcess, LogFileData logFileData, ValidateMsdData validateMsdData, IEmailSender emailSender, IFileProcessService fileProcessService, IMsd1DataService msd1DataService, IMsd2DataService msd2DataService, IMsd3DataService msd3DataService, ILogger <ASCIIFileProcess> logger, IOptions <FileOptions> settings ) { _fileInfo = fileInfo; _logFileData = logFileData; _msd1FileProcess = msd1FileProcess; _msd2FileProcess = msd2FileProcess; _msd3FileProcess = msd3FileProcess; _validateMsdData = validateMsdData; _fileProcessService = fileProcessService; _msd1DataService = msd1DataService; _msd2DataService = msd2DataService; _msd3DataService = msd3DataService; _emailSender = emailSender; _logger = logger; _settings = settings.Value; headerErrors = new StringBuilder(); bodyErrorMsg = new StringBuilder(); }
public GESMESFileProcess( FlatFile fileInfo, LogFileData logFileData, GesmesHelpers gesmesHelpers, ValidateMsdData validateMsdData, Msd1FileProcess msd1FileProcess, Msd2FileProcess msd2FileProcess, Msd3FileProcess msd3FileProcess, IMsd1DataService msd1DataService, IMsd2DataService msd2DataService, IMsd3DataService msd3DataService, IFileProcessService fileProcessService, IHelperService helperService, IOptions <FileOptions> settings, IEmailSender emailSender, ILogger <GESMESFileProcess> logger) { _fileInfo = fileInfo; _logFileData = logFileData; _gesmesHelpers = gesmesHelpers; _helperService = helperService; _msd1DataService = msd1DataService; _msd2DataService = msd2DataService; _msd3DataService = msd3DataService; _validateMsdData = validateMsdData; _fileProcessService = fileProcessService; _logger = logger; _settings = settings.Value; _emailSender = emailSender; _msd1FileProcess = msd1FileProcess; _msd2FileProcess = msd2FileProcess; _msd3FileProcess = msd3FileProcess; headerErrors = new StringBuilder(); bodyErrorMsg = new StringBuilder(); }
private void Open_Executed() { //Command execute logic var filename = _fileService.GetFilename(); if (String.IsNullOrWhiteSpace(filename)) { return; } CurrentLog = new LogFileData(filename); _logService.CurrentLogFile = CurrentLog; }
public void InitiateAsciiFileProcess(string filename) { try { _fileInfo = new FlatFile(); _logFileData = new LogFileData(); var senderId = ProcessFileHeader(filename); if (!string.IsNullOrEmpty(senderId) && string.IsNullOrEmpty(headerErrors.ToString().Trim())) { if (_fileInfo != null && _fileInfo.IsAmendment.HasValue && _fileInfo.IsAmendment.Value == 1 && previousFileRefId > -1) { switch (_fileInfo.TableRef.ToUpper()) { case "TABLE-1-UO-Q": case "TABLE-1-UQ-Q": _msd1DataService.DeleteAllPreviousMsd1Data(previousFileRefId); break; case "TABLE-2-FT-A": _msd2DataService.DeleteAllPreviousMsd2Data(previousFileRefId); break; case "TABLE-3-LA-A": _msd3DataService.DeleteAllPreviousMsd3Data(previousFileRefId); break; } } if ((!isDuplicatedFile && _fileInfo.IsAmendment.Value == 0) || (_fileInfo.IsAmendment.Value == 1 && previousFileRefId > -1)) { switch (_fileInfo.TableRef.ToUpper()) { case "TABLE-1-UO-Q": case "TABLE-1-UQ-Q": var errorMassage = _msd1FileProcess.ProcessMsd1Records(filename, _fileInfo); bodyErrorMsg.Append(errorMassage); break; case "TABLE-2-FT-A": errorMassage = _msd2FileProcess.ProcessMsd2Records(filename, _fileInfo); bodyErrorMsg.Append(errorMassage); break; case "TABLE-3-LA-A": errorMassage = _msd3FileProcess.ProcessMsd3Records(filename, _fileInfo); bodyErrorMsg.Append(errorMassage); break; } } else { var errmsg = (_fileInfo.IsAmendment.Value == 1 && previousFileRefId == -1) ? string.Format("{0} is an amendment file but there is no file with the same submission reference to amend - please contact the helpdesk for advice.", _fileInfo.FileName.Substring(0, _fileInfo.FileName.IndexOf('.') + 4)) : string.Format("{0} has the same sender reference as a file you have already sent, so it has not been processed." + " If it is not a duplicate sent by mistake, please use a different sender reference in the header and resubmit the file.", _fileInfo.FileName.Substring(0, _fileInfo.FileName.IndexOf('.') + 4)); bodyErrorMsg.AppendFormat(errmsg); } if (!string.IsNullOrEmpty(bodyErrorMsg.ToString().Trim())) { AddErrorLogToDbAndNotifyUser(filename, bodyErrorMsg.ToString()); } bodyErrorMsg.Clear(); } headerErrors.Clear(); } catch (Exception err) { _logger.LogError("Ascii File error:", err.Message, err.InnerException != null ? err.InnerException.Message : string.Empty, err.StackTrace); if (_fileInfo != null) { bodyErrorMsg.AppendLine(filename + Environment.NewLine + err.Message); AddErrorLogToDbAndNotifyUser(filename, bodyErrorMsg.ToString()); } } finally { ArchiveProcessedFilesFromBucket(filename, false); bodyErrorMsg.Clear(); headerErrors.Clear(); _fileInfo = null; } }
public void AddLogFileData(LogFileData logFileData) { _context.LogfileData.Add(logFileData); _context.SaveChanges(); _context.Entry(logFileData).State = EntityState.Detached; }
public void UpdateLogFileData(LogFileData logFileData) { _context.LogfileData.Update(logFileData); _context.SaveChanges(); _context.Entry(logFileData).State = EntityState.Modified; }
void logService_LogFileChanged(object sender, EventArgs e) { this.CurrentLog = _logService.CurrentLogFile; }
public StatusBarViewModel(ILogFileService logService) { _logService = logService; logService.LogFileChanged += logService_LogFileChanged; CurrentLog = logService.CurrentLogFile; }