Strip JDE/CMS data-sync from OLD/ for v5 POC
Remove JDE/CMS source-system integration: JDE/CMS query classes, SQL files, WorkerService UpdateProcessor pipeline, dsconfig data-source configs, and Oracle/Sybase/DDTek driver references. WorkProcessor now goes straight to processing queued searches against the existing local SQL Server cache; DB schema (DataUpdate table, MatchMis function) is left intact. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -1,10 +1,7 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Configuration;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using DataModel.Models;
|
||||
using Microsoft.AspNet.SignalR.Client;
|
||||
using NLog;
|
||||
@@ -146,54 +143,44 @@ namespace WorkerService.Process
|
||||
{
|
||||
try
|
||||
{
|
||||
//Verify all data sources up to date
|
||||
List<DataUpdateTask> pending = UpdateProcessor.GetPendingUpdateTasks();
|
||||
if (pending.Any())
|
||||
{
|
||||
Status = "Updating data cache";
|
||||
Parallel.ForEach(pending, new ParallelOptions() { MaxDegreeOfParallelism = 8 }, pendingTask => { UpdateProcessor.DoUpdate(pendingTask); });
|
||||
}
|
||||
else
|
||||
{
|
||||
//Reset any partially completed searches
|
||||
LotFinderDBExt.ResetPartialSearches();
|
||||
//Reset any partially completed searches
|
||||
LotFinderDBExt.ResetPartialSearches();
|
||||
|
||||
//Check for queued searches
|
||||
Search search = LotFinderDBExt.GetNextSearch();
|
||||
if (search != null)
|
||||
//Check for queued searches
|
||||
Search search = LotFinderDBExt.GetNextSearch();
|
||||
if (search != null)
|
||||
{
|
||||
try
|
||||
{
|
||||
try
|
||||
{
|
||||
Status = $"Processing search #{search.ID}";
|
||||
Status = $"Processing search #{search.ID}";
|
||||
|
||||
//Start search
|
||||
LotFinderDBExt.StartSearch(search);
|
||||
PublishSearchUpdate(search);
|
||||
//Start search
|
||||
LotFinderDBExt.StartSearch(search);
|
||||
PublishSearchUpdate(search);
|
||||
|
||||
//Do search
|
||||
SearchModel searchModel = search.ToSearchModel();
|
||||
LotFinderDBExt.Search(searchModel);
|
||||
//Do search
|
||||
SearchModel searchModel = search.ToSearchModel();
|
||||
LotFinderDBExt.Search(searchModel);
|
||||
|
||||
//Record end timestamp
|
||||
search.EndDT = DateTime.Now;
|
||||
//Record end timestamp
|
||||
search.EndDT = DateTime.Now;
|
||||
|
||||
//Generate output
|
||||
search.Results = ExcelWriter.Generate(searchModel);
|
||||
//Generate output
|
||||
search.Results = ExcelWriter.Generate(searchModel);
|
||||
|
||||
File.WriteAllBytes($"search_{search.ID}.xlsx", search.Results);
|
||||
File.WriteAllBytes($"search_{search.ID}.xlsx", search.Results);
|
||||
|
||||
//Complete search
|
||||
LotFinderDBExt.CompleteSearch(search, true);
|
||||
PublishSearchUpdate(search);
|
||||
}
|
||||
catch (Exception error)
|
||||
{
|
||||
//Log error and mark search as failed
|
||||
logger.Error("DoWork: failed to process search: {0}.", error.Message);
|
||||
search.EndDT = DateTime.Now;
|
||||
LotFinderDBExt.CompleteSearch(search, false);
|
||||
PublishSearchUpdate(search);
|
||||
}
|
||||
//Complete search
|
||||
LotFinderDBExt.CompleteSearch(search, true);
|
||||
PublishSearchUpdate(search);
|
||||
}
|
||||
catch (Exception error)
|
||||
{
|
||||
//Log error and mark search as failed
|
||||
logger.Error("DoWork: failed to process search: {0}.", error.Message);
|
||||
search.EndDT = DateTime.Now;
|
||||
LotFinderDBExt.CompleteSearch(search, false);
|
||||
PublishSearchUpdate(search);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user