diff --git a/ConsoleApp2/SimulationService/DataHelper.cs b/ConsoleApp2/SimulationService/DataHelper.cs deleted file mode 100644 index 0a26af0..0000000 --- a/ConsoleApp2/SimulationService/DataHelper.cs +++ /dev/null @@ -1,28 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Text.RegularExpressions; -using System.Threading.Tasks; - -namespace ConsoleApp2.SimulationService -{ - public static partial class DataHelper - { - public static short[] shareKeys = {23000, 23040, 23070, 23100, 24000, 24040, 24070, 24100, 25000, 25040, 25070, 25100 }; - public static int[] companyIds = { 1, 2, 3, 4 }; - private static T getArrayValue(int index, T[] array)//按index取数据,超过数组长度,index从0开始再取 - { - return array[index % array.Length]; - } - public static short GetShareKey(int index) - { - return getArrayValue(index, shareKeys); - } - public static int GetCompanyId(int index) - { - return getArrayValue(index, companyIds); - } - - } -} diff --git a/ConsoleApp2/SimulationService/SimulationInputService.cs b/ConsoleApp2/SimulationService/SimulationInputService.cs deleted file mode 100644 index 580f9d2..0000000 --- a/ConsoleApp2/SimulationService/SimulationInputService.cs +++ /dev/null @@ -1,136 +0,0 @@ -using ConsoleApp2.Const; -using ConsoleApp2.Helpers; -using ConsoleApp2.HostedServices; -using ConsoleApp2.HostedServices.Abstractions; -using ConsoleApp2.Options; -using ConsoleApp2.Services; -using Microsoft.Extensions.DependencyInjection; -using Microsoft.Extensions.Logging; -using Microsoft.Extensions.Options; -using System.Text.RegularExpressions; - -namespace ConsoleApp2.SimulationService -{ - - #if false - public class SimulationInputService : IInputService - { - private readonly ILogger _logger; - private readonly IOptions _dataInputOptions; - private readonly DataRecordQueue _producerQueue; - private readonly ProcessContext _context; - - public SimulationInputService(ILogger logger, - IOptions dataInputOptions, - [FromKeyedServices(ProcessStep.Producer)] DataRecordQueue producerQueue, - ProcessContext context) - { - _logger = logger; - _dataInputOptions = dataInputOptions; - _producerQueue = producerQueue; - _context = context; - } - public async Task ExecuteAsync(TasksOptions tasksOptions, DataRecordQueue producerQueue, ProcessContext context, CancellationToken cancellationToken) - { - var inputDir = _dataInputOptions.Value.InputDir; - _logger.LogInformation("***** simulation input service start, working dir: {InputDir}, thread id: {ThreadId} *****", inputDir, Environment.CurrentManagedThreadId); - var files = Directory.GetFiles(inputDir); - if (files.Length == 0) - { - _logger.LogInformation("No source files found in {InputDir}", inputDir); - return; - } - foreach (var tableName in tasksOptions.TableInfoConfig.Keys) - { - var dataCount = tasksOptions.TableInfoConfig[tableName].SimulaRowCount;//当前表要生成的总数据量 - var companyTotallCount = 1000;//当前表每个公司生成的总数据量 - var tempRecords = new List(); - var sk = DataHelper.shareKeys.First(); - var companyID = DataHelper.companyIds.First(); - - var shareKeyInterval = 20000;//每个sharekey的数据量 - var getShareKeyTimes = 0;//sharekey生成的次数,每生成一次,改变sharekey的值 - var getCompanyIDTimes = 0;//公司生成的次数,每生成一次,改变companyID的值 - var shareKeyIntervalCount = 0; - - var source = _dataInputOptions.Value.CreateSource?.Invoke(tableName); - var testRecord =await source.GetTestRecord(); - for (long i = 1; i <= dataCount; i++) - { - shareKeyIntervalCount++; - if (shareKeyIntervalCount > shareKeyInterval) - { - sk = DataHelper.GetShareKey(getShareKeyTimes); - getShareKeyTimes++; - shareKeyIntervalCount = 0; - } - var fields = new string[testRecord.Fields.Length]; - Array.Copy(testRecord.Fields, fields, testRecord.Fields.Length); - var record = new DataRecord(fields, testRecord.TableName, testRecord.Headers, companyID); - //更新record的ID、OrderNo,ShardKey值 - if (record.Headers.Contains("ID")) - { - var index = Array.IndexOf(record.Headers, "ID"); - if (index > -1) - { - record.Fields[index] = i.ToString(); - } - } - if (record.TableName == "order_box_block" && record.Headers.Contains("BoxID")) - { - var index = Array.IndexOf(record.Headers, "BoxID"); - if (index > -1) - { - record.Fields[index] = i.ToString(); - } - } - if ((record.TableName == "order_block_plan_item" || record.TableName == "order_package_item") && record.Headers.Contains("ItemID")) - { - var index = Array.IndexOf(record.Headers, "ItemID"); - if (index > -1) - { - record.Fields[index] = i.ToString(); - } - } - if (record.TableName == "order" && record.Headers.Contains("OrderNo")) - { - var index = Array.IndexOf(record.Headers, "OrderNo"); - if (index > -1) - { - record.Fields[index] = i.ToString(); - } - } - if (record.Headers.Contains("ShardKey")) - { - var index = Array.IndexOf(record.Headers, "ShardKey"); - if (index > -1) - { - record.Fields[index] = sk.ToString(); - } - } - tempRecords.Add(record); - if (tempRecords.Count >= companyTotallCount || i >= dataCount - 1) - { - foreach (var rc in tempRecords) - { - _context.AddInput(); - _producerQueue.Enqueue(rc); - if (cancellationToken.IsCancellationRequested) - return; - } - tempRecords.Clear(); - companyID = DataHelper.GetCompanyId(getCompanyIDTimes); - getCompanyIDTimes++; - } - } - _logger.LogInformation("table:'{tableName}' simulation input completed", tableName); - //} - //_logger.LogInformation("File '{File}' input completed", Path.GetFileName(sqlPath)); - } - - _context.CompleteInput(); - _logger.LogInformation("***** Csv input service completed *****"); - } - } -#endif -} diff --git a/ConsoleApp2/Cache/CacheKeys.cs b/MesETL.App/Cache/CacheKeys.cs similarity index 100% rename from ConsoleApp2/Cache/CacheKeys.cs rename to MesETL.App/Cache/CacheKeys.cs diff --git a/ConsoleApp2/Cache/ICacher.cs b/MesETL.App/Cache/ICacher.cs similarity index 100% rename from ConsoleApp2/Cache/ICacher.cs rename to MesETL.App/Cache/ICacher.cs diff --git a/ConsoleApp2/Cache/RedisCache.cs b/MesETL.App/Cache/RedisCache.cs similarity index 100% rename from ConsoleApp2/Cache/RedisCache.cs rename to MesETL.App/Cache/RedisCache.cs diff --git a/ConsoleApp2/Const/ProcessStep.cs b/MesETL.App/Const/ProcessStep.cs similarity index 100% rename from ConsoleApp2/Const/ProcessStep.cs rename to MesETL.App/Const/ProcessStep.cs diff --git a/ConsoleApp2/Const/TableNames.cs b/MesETL.App/Const/TableNames.cs similarity index 100% rename from ConsoleApp2/Const/TableNames.cs rename to MesETL.App/Const/TableNames.cs diff --git a/ConsoleApp2/DataRecord.cs b/MesETL.App/DataRecord.cs similarity index 100% rename from ConsoleApp2/DataRecord.cs rename to MesETL.App/DataRecord.cs diff --git a/ConsoleApp2/Helpers/Database/DatabaseHelper.cs b/MesETL.App/Helpers/DatabaseHelper.cs similarity index 94% rename from ConsoleApp2/Helpers/Database/DatabaseHelper.cs rename to MesETL.App/Helpers/DatabaseHelper.cs index 59a612d..c8af57c 100644 --- a/ConsoleApp2/Helpers/Database/DatabaseHelper.cs +++ b/MesETL.App/Helpers/DatabaseHelper.cs @@ -1,7 +1,7 @@ using System.Data; using MySqlConnector; -namespace ConsoleApp2.Helpers.Database; +namespace ConsoleApp2.Helpers; public static class DatabaseHelper { @@ -13,7 +13,7 @@ public static class DatabaseHelper await using var cmd = conn.CreateCommand(); cmd.CommandText = sql; var ds = new DataSet(); - var adapter = new MySqlDataAdapter(cmd).Fill(ds); + new MySqlDataAdapter(cmd).Fill(ds); return ds; } diff --git a/ConsoleApp2/Helpers/DumpDataHelper.cs b/MesETL.App/Helpers/DumpDataHelper.cs similarity index 100% rename from ConsoleApp2/Helpers/DumpDataHelper.cs rename to MesETL.App/Helpers/DumpDataHelper.cs diff --git a/ConsoleApp2/Helpers/Extensions.Dictionary.cs b/MesETL.App/Helpers/Extensions.Dictionary.cs similarity index 100% rename from ConsoleApp2/Helpers/Extensions.Dictionary.cs rename to MesETL.App/Helpers/Extensions.Dictionary.cs diff --git a/ConsoleApp2/Helpers/Extensions.IEnumerable.cs b/MesETL.App/Helpers/Extensions.IEnumerable.cs similarity index 99% rename from ConsoleApp2/Helpers/Extensions.IEnumerable.cs rename to MesETL.App/Helpers/Extensions.IEnumerable.cs index 5b151e3..15063c2 100644 --- a/ConsoleApp2/Helpers/Extensions.IEnumerable.cs +++ b/MesETL.App/Helpers/Extensions.IEnumerable.cs @@ -2,7 +2,7 @@ using System.Reflection; namespace ConsoleApp2.Helpers; - +#nullable disable public static class EnumerableExtensions { public static string ToMarkdownTable<[DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicMethods)]T>(this IEnumerable source) diff --git a/ConsoleApp2/Helpers/Extensions.String.cs b/MesETL.App/Helpers/Extensions.String.cs similarity index 100% rename from ConsoleApp2/Helpers/Extensions.String.cs rename to MesETL.App/Helpers/Extensions.String.cs diff --git a/ConsoleApp2/Helpers/Extensions.Task.cs b/MesETL.App/Helpers/Extensions.Task.cs similarity index 100% rename from ConsoleApp2/Helpers/Extensions.Task.cs rename to MesETL.App/Helpers/Extensions.Task.cs diff --git a/ConsoleApp2/HostedServices/Abstractions/IDataReader.cs b/MesETL.App/HostedServices/Abstractions/IDataReader.cs similarity index 100% rename from ConsoleApp2/HostedServices/Abstractions/IDataReader.cs rename to MesETL.App/HostedServices/Abstractions/IDataReader.cs diff --git a/ConsoleApp2/HostedServices/Abstractions/IInputService.cs b/MesETL.App/HostedServices/Abstractions/IInputService.cs similarity index 100% rename from ConsoleApp2/HostedServices/Abstractions/IInputService.cs rename to MesETL.App/HostedServices/Abstractions/IInputService.cs diff --git a/ConsoleApp2/HostedServices/Abstractions/IOutputService.cs b/MesETL.App/HostedServices/Abstractions/IOutputService.cs similarity index 100% rename from ConsoleApp2/HostedServices/Abstractions/IOutputService.cs rename to MesETL.App/HostedServices/Abstractions/IOutputService.cs diff --git a/ConsoleApp2/HostedServices/Abstractions/ITransformService.cs b/MesETL.App/HostedServices/Abstractions/ITransformService.cs similarity index 100% rename from ConsoleApp2/HostedServices/Abstractions/ITransformService.cs rename to MesETL.App/HostedServices/Abstractions/ITransformService.cs diff --git a/ConsoleApp2/HostedServices/FileInputService.cs b/MesETL.App/HostedServices/FileInputService.cs similarity index 100% rename from ConsoleApp2/HostedServices/FileInputService.cs rename to MesETL.App/HostedServices/FileInputService.cs diff --git a/ConsoleApp2/HostedServices/MainHostedService.cs b/MesETL.App/HostedServices/MainHostedService.cs similarity index 81% rename from ConsoleApp2/HostedServices/MainHostedService.cs rename to MesETL.App/HostedServices/MainHostedService.cs index feb3d29..3671952 100644 --- a/ConsoleApp2/HostedServices/MainHostedService.cs +++ b/MesETL.App/HostedServices/MainHostedService.cs @@ -1,7 +1,6 @@ using System.Diagnostics; using System.Text; using ConsoleApp2.Helpers; -using ConsoleApp2.Helpers.Database; using ConsoleApp2.HostedServices.Abstractions; using ConsoleApp2.Options; using ConsoleApp2.Services; @@ -10,6 +9,7 @@ using Microsoft.Extensions.Configuration; using Microsoft.Extensions.Hosting; using Microsoft.Extensions.Logging; using Microsoft.Extensions.Options; +using MySqlConnector; namespace ConsoleApp2.HostedServices; @@ -19,6 +19,7 @@ public class MainHostedService : BackgroundService private readonly IInputService _input; private readonly ITransformService _transform; private readonly IOutputService _output; + private readonly TaskMonitorService _taskMonitor; private readonly ILogger _logger; private readonly ProcessContext _context; @@ -33,7 +34,8 @@ public class MainHostedService : BackgroundService IOptions tenantDbOptions, IOptions databaseOptions, IConfiguration config, - ProcessContext context) + ProcessContext context, + TaskMonitorService taskMonitor) { _input = input; _transform = transform; @@ -43,13 +45,23 @@ public class MainHostedService : BackgroundService _databaseOptions = databaseOptions; _config = config; _context = context; + _taskMonitor = taskMonitor; } protected override async Task ExecuteAsync(CancellationToken stoppingToken) { - _stopwatch = Stopwatch.StartNew(); - await SetVariableAsync(); // 开启延迟写入,禁用重做日志 >>> 重做日志处于禁用状态时绝对不要关闭数据库服务! + var command = _config["Command"]; + if (!string.IsNullOrEmpty(command)) + { + _logger.LogInformation("***** Running Sql Command *****"); + await ExecuteEachDatabase(command, stoppingToken); + Environment.Exit(0); + } + _stopwatch = Stopwatch.StartNew(); + await SetVariableAsync(); // 开启延迟写入,禁用重做日志 >>> 重做日志处于禁用状态时不要关闭数据库服务! + + var monitorTask = Task.Run(async () => await _taskMonitor.Monitor(stoppingToken), stoppingToken); var inputTask = ExecuteAndCatch( async () => await _input.ExecuteAsync(stoppingToken), "文件输入程序出现异常", stoppingToken); var transformTask = ExecuteAndCatch( @@ -69,8 +81,6 @@ public class MainHostedService : BackgroundService await ExportResultAsync(); _logger.LogInformation("The execution result export to {Path}", Path.Combine(AppDomain.CurrentDomain.BaseDirectory, $"Result-{ErrorRecorder.UID}.md")); - if (_config["RestoreIndex"] is not null) - await RestoreIndexAsync(); Environment.Exit(0); } @@ -115,24 +125,23 @@ public class MainHostedService : BackgroundService """); } } - - /// - /// 还原所有数据库的索引... - /// - /// - /// - private async Task RestoreIndexAsync() + + private async Task ExecuteEachDatabase(string command, CancellationToken cancellationToken = default) { var databases = _tenantDbOptions.Value.DbList?.Keys ?? throw new ApplicationException("无法还原索引,因为分库配置中没有配置数据库"); - var connStr = _databaseOptions.Value.ConnectionString - ?? throw new ApplicationException("无法还原索引,因为没有配置数据库连接字符串"); var list = new List(); - foreach(var db in databases) + foreach (var db in databases) { - var task = DatabaseHelper.NonQueryAsync(connStr + $";Database={db};", - await File.ReadAllTextAsync(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "RestoreIndex.sql")) - ); + var connStr = new MySqlConnectionStringBuilder(_databaseOptions.Value.ConnectionString + ?? throw new ApplicationException("无法还原索引,因为没有配置数据库连接字符串")) + { + ConnectionTimeout = 60, + DefaultCommandTimeout = 0, + Database = db + }.ConnectionString; + var task = Task.Run(async () => await DatabaseHelper.NonQueryAsync(connStr, command), + cancellationToken); list.Add(task); } diff --git a/ConsoleApp2/HostedServices/OutputService.cs b/MesETL.App/HostedServices/OutputService.cs similarity index 100% rename from ConsoleApp2/HostedServices/OutputService.cs rename to MesETL.App/HostedServices/OutputService.cs diff --git a/ConsoleApp2/HostedServices/TaskMonitorService.cs b/MesETL.App/HostedServices/TaskMonitorService.cs similarity index 89% rename from ConsoleApp2/HostedServices/TaskMonitorService.cs rename to MesETL.App/HostedServices/TaskMonitorService.cs index 76b85ad..864d108 100644 --- a/ConsoleApp2/HostedServices/TaskMonitorService.cs +++ b/MesETL.App/HostedServices/TaskMonitorService.cs @@ -3,43 +3,32 @@ using ConsoleApp2.Const; using ConsoleApp2.Services; using ConsoleApp2.Services.Loggers; using Microsoft.Extensions.DependencyInjection; -using Microsoft.Extensions.Hosting; -using Microsoft.Extensions.Logging; namespace ConsoleApp2.HostedServices; /// /// 任务监控 /// -public class TaskMonitorService : BackgroundService +public class TaskMonitorService { - private readonly ILogger _logger; private readonly IEnumerable _monitorLoggers; private readonly ProcessContext _context; private readonly DataRecordQueue _producerQueue; private readonly RecordQueuePool _queuePool; - public TaskMonitorService( - ILogger logger, - ProcessContext context, + public TaskMonitorService(ProcessContext context, [FromKeyedServices(ProcessStep.Produce)] DataRecordQueue producerQueue, RecordQueuePool queuePool, IEnumerable monitorLoggers) { - _logger = logger; _context = context; _producerQueue = producerQueue; _queuePool = queuePool; _monitorLoggers = monitorLoggers; } - protected override async Task ExecuteAsync(CancellationToken stoppingToken) - { - await Task.Run(() => Monitor(stoppingToken), stoppingToken); - } - - private async Task Monitor(CancellationToken stoppingToken) + public async Task Monitor(CancellationToken stoppingToken) { var sw = Stopwatch.StartNew(); var lastTime = sw.ElapsedMilliseconds; diff --git a/ConsoleApp2/HostedServices/TransformService.cs b/MesETL.App/HostedServices/TransformService.cs similarity index 100% rename from ConsoleApp2/HostedServices/TransformService.cs rename to MesETL.App/HostedServices/TransformService.cs diff --git a/ConsoleApp2/HostedServices/VoidOutputService.cs b/MesETL.App/HostedServices/VoidOutputService.cs similarity index 100% rename from ConsoleApp2/HostedServices/VoidOutputService.cs rename to MesETL.App/HostedServices/VoidOutputService.cs diff --git a/ConsoleApp2/ConsoleApp2.csproj b/MesETL.App/MesETL.App.csproj similarity index 96% rename from ConsoleApp2/ConsoleApp2.csproj rename to MesETL.App/MesETL.App.csproj index da12038..58f948b 100644 --- a/ConsoleApp2/ConsoleApp2.csproj +++ b/MesETL.App/MesETL.App.csproj @@ -6,6 +6,7 @@ enable enable Linux + ConsoleApp2 diff --git a/ConsoleApp2/Options/DataInputOptions.cs b/MesETL.App/Options/DataInputOptions.cs similarity index 100% rename from ConsoleApp2/Options/DataInputOptions.cs rename to MesETL.App/Options/DataInputOptions.cs diff --git a/ConsoleApp2/Options/DataTransformOptions.cs b/MesETL.App/Options/DataTransformOptions.cs similarity index 100% rename from ConsoleApp2/Options/DataTransformOptions.cs rename to MesETL.App/Options/DataTransformOptions.cs diff --git a/ConsoleApp2/Options/DatabaseOutputOptions.cs b/MesETL.App/Options/DatabaseOutputOptions.cs similarity index 100% rename from ConsoleApp2/Options/DatabaseOutputOptions.cs rename to MesETL.App/Options/DatabaseOutputOptions.cs diff --git a/ConsoleApp2/Options/RedisCacheOptions.cs b/MesETL.App/Options/RedisCacheOptions.cs similarity index 100% rename from ConsoleApp2/Options/RedisCacheOptions.cs rename to MesETL.App/Options/RedisCacheOptions.cs diff --git a/ConsoleApp2/Options/TableMockConfig.cs b/MesETL.App/Options/TableMockConfig.cs similarity index 100% rename from ConsoleApp2/Options/TableMockConfig.cs rename to MesETL.App/Options/TableMockConfig.cs diff --git a/ConsoleApp2/Options/TenantDbOptions.cs b/MesETL.App/Options/TenantDbOptions.cs similarity index 100% rename from ConsoleApp2/Options/TenantDbOptions.cs rename to MesETL.App/Options/TenantDbOptions.cs diff --git a/ConsoleApp2/Program.cs b/MesETL.App/Program.cs similarity index 99% rename from ConsoleApp2/Program.cs rename to MesETL.App/Program.cs index cc26b27..ab1043f 100644 --- a/ConsoleApp2/Program.cs +++ b/MesETL.App/Program.cs @@ -35,8 +35,8 @@ async Task RunProgram() {"--ConnectionString", "Output:ConnectionString"}, {"-r", "RedisCache:Configuration"}, {"--Redis", "RedisCache:Configuration"}, - {"-i", "RestoreIndex"}, - {"--RestoreIndex", "RestoreIndex"} + {"-c", "Command"}, + {"--Command", "Command"} }); var inputOptions = host.Configuration.GetRequiredSection("Input").Get() @@ -547,10 +547,10 @@ async Task RunProgram() host.Services.AddSingleton(); host.Services.AddHostedService(); - host.Services.AddHostedService(); host.Services.AddSingleton(); host.Services.AddSingleton(); host.Services.AddSingleton(); + host.Services.AddSingleton(); host.Services.AddRedisCache(redisOptions); var app = host.Build(); await app.RunAsync(); diff --git a/ConsoleApp2/RestoreIndex.sql b/MesETL.App/RestoreIndex.sql similarity index 100% rename from ConsoleApp2/RestoreIndex.sql rename to MesETL.App/RestoreIndex.sql diff --git a/ConsoleApp2/Services/DataRecordQueue.cs b/MesETL.App/Services/DataRecordQueue.cs similarity index 100% rename from ConsoleApp2/Services/DataRecordQueue.cs rename to MesETL.App/Services/DataRecordQueue.cs diff --git a/ConsoleApp2/Services/ETL/CsvReader.cs b/MesETL.App/Services/ETL/CsvReader.cs similarity index 100% rename from ConsoleApp2/Services/ETL/CsvReader.cs rename to MesETL.App/Services/ETL/CsvReader.cs diff --git a/ConsoleApp2/Services/ETL/DataReaderFactory.cs b/MesETL.App/Services/ETL/DataReaderFactory.cs similarity index 100% rename from ConsoleApp2/Services/ETL/DataReaderFactory.cs rename to MesETL.App/Services/ETL/DataReaderFactory.cs diff --git a/ConsoleApp2/Services/ETL/MySqlDestination.cs b/MesETL.App/Services/ETL/MySqlDestination.cs similarity index 100% rename from ConsoleApp2/Services/ETL/MySqlDestination.cs rename to MesETL.App/Services/ETL/MySqlDestination.cs diff --git a/ConsoleApp2/Services/ETL/ZstMockReader.cs b/MesETL.App/Services/ETL/ZstMockReader.cs similarity index 100% rename from ConsoleApp2/Services/ETL/ZstMockReader.cs rename to MesETL.App/Services/ETL/ZstMockReader.cs diff --git a/ConsoleApp2/Services/ETL/ZstReader.cs b/MesETL.App/Services/ETL/ZstReader.cs similarity index 100% rename from ConsoleApp2/Services/ETL/ZstReader.cs rename to MesETL.App/Services/ETL/ZstReader.cs diff --git a/ConsoleApp2/Services/ErrorRecorder/ErrorRecorder.cs b/MesETL.App/Services/ErrorRecorder/ErrorRecorder.cs similarity index 100% rename from ConsoleApp2/Services/ErrorRecorder/ErrorRecorder.cs rename to MesETL.App/Services/ErrorRecorder/ErrorRecorder.cs diff --git a/ConsoleApp2/Services/ErrorRecorder/ErrorRecorderFactory.cs b/MesETL.App/Services/ErrorRecorder/ErrorRecorderFactory.cs similarity index 100% rename from ConsoleApp2/Services/ErrorRecorder/ErrorRecorderFactory.cs rename to MesETL.App/Services/ErrorRecorder/ErrorRecorderFactory.cs diff --git a/ConsoleApp2/Services/ErrorRecorder/InputErrorRecorder.cs b/MesETL.App/Services/ErrorRecorder/InputErrorRecorder.cs similarity index 100% rename from ConsoleApp2/Services/ErrorRecorder/InputErrorRecorder.cs rename to MesETL.App/Services/ErrorRecorder/InputErrorRecorder.cs diff --git a/ConsoleApp2/Services/ErrorRecorder/OutputErrorRecorder.cs b/MesETL.App/Services/ErrorRecorder/OutputErrorRecorder.cs similarity index 100% rename from ConsoleApp2/Services/ErrorRecorder/OutputErrorRecorder.cs rename to MesETL.App/Services/ErrorRecorder/OutputErrorRecorder.cs diff --git a/ConsoleApp2/Services/ErrorRecorder/TransformErrorRecorder.cs b/MesETL.App/Services/ErrorRecorder/TransformErrorRecorder.cs similarity index 100% rename from ConsoleApp2/Services/ErrorRecorder/TransformErrorRecorder.cs rename to MesETL.App/Services/ErrorRecorder/TransformErrorRecorder.cs diff --git a/ConsoleApp2/Services/Loggers/CacheTaskMonitorLogger.cs b/MesETL.App/Services/Loggers/CacheTaskMonitorLogger.cs similarity index 100% rename from ConsoleApp2/Services/Loggers/CacheTaskMonitorLogger.cs rename to MesETL.App/Services/Loggers/CacheTaskMonitorLogger.cs diff --git a/ConsoleApp2/Services/Loggers/ITaskMonitorLogger.cs b/MesETL.App/Services/Loggers/ITaskMonitorLogger.cs similarity index 100% rename from ConsoleApp2/Services/Loggers/ITaskMonitorLogger.cs rename to MesETL.App/Services/Loggers/ITaskMonitorLogger.cs diff --git a/ConsoleApp2/Services/Loggers/LoggerTaskMonitorLogger.cs b/MesETL.App/Services/Loggers/LoggerTaskMonitorLogger.cs similarity index 100% rename from ConsoleApp2/Services/Loggers/LoggerTaskMonitorLogger.cs rename to MesETL.App/Services/Loggers/LoggerTaskMonitorLogger.cs diff --git a/ConsoleApp2/Services/ProcessContext.cs b/MesETL.App/Services/ProcessContext.cs similarity index 100% rename from ConsoleApp2/Services/ProcessContext.cs rename to MesETL.App/Services/ProcessContext.cs diff --git a/ConsoleApp2/Services/RecordQueuePool.cs b/MesETL.App/Services/RecordQueuePool.cs similarity index 100% rename from ConsoleApp2/Services/RecordQueuePool.cs rename to MesETL.App/Services/RecordQueuePool.cs diff --git a/ConsoleApp2/Services/TaskManager.cs b/MesETL.App/Services/TaskManager.cs similarity index 100% rename from ConsoleApp2/Services/TaskManager.cs rename to MesETL.App/Services/TaskManager.cs diff --git a/ConsoleApp2/appsettings.json b/MesETL.App/appsettings.json similarity index 96% rename from ConsoleApp2/appsettings.json rename to MesETL.App/appsettings.json index 41b7328..9ff573f 100644 --- a/ConsoleApp2/appsettings.json +++ b/MesETL.App/appsettings.json @@ -12,7 +12,7 @@ "Transform":{ "StrictMode": true, // 设为true时如果数据转换发生错误,立刻停止程序 "EnableFilter": false, // 启用数据过滤 - "EnableReplacer": false, // 启用数据修改 + "EnableReplacer": false, // 启用数据修改ma "EnableReBuilder": false, // 启用数据重建 "CleanDate": "202301" // 当数据过滤开启时,删除这个时间之前的数据 }, diff --git a/TestProject1/DataFix.cs b/MesETL.Test/DataFix.cs similarity index 99% rename from TestProject1/DataFix.cs rename to MesETL.Test/DataFix.cs index 2f373af..95eb23a 100644 --- a/TestProject1/DataFix.cs +++ b/MesETL.Test/DataFix.cs @@ -1,6 +1,5 @@ using System.Data; using ConsoleApp2.Helpers; -using ConsoleApp2.Helpers.Database; using MySqlConnector; using Xunit.Abstractions; diff --git a/TestProject1/DatabaseToolBox.cs b/MesETL.Test/DatabaseToolBox.cs similarity index 97% rename from TestProject1/DatabaseToolBox.cs rename to MesETL.Test/DatabaseToolBox.cs index fceb629..453f10b 100644 --- a/TestProject1/DatabaseToolBox.cs +++ b/MesETL.Test/DatabaseToolBox.cs @@ -1,6 +1,6 @@ using System.Data; using System.Text; -using ConsoleApp2.Helpers.Database; +using ConsoleApp2.Helpers; using MySqlConnector; using Newtonsoft.Json; using Newtonsoft.Json.Linq; @@ -11,7 +11,7 @@ namespace TestProject1; public class DatabaseToolBox { private readonly ITestOutputHelper _output; - public const string ConnStr = "Server=127.0.0.1;Port=33309;UserId=root;Password=123456;"; + public const string ConnStr = "Server=127.0.0.1;Port=3306;UserId=root;Password=cfmes123456;"; public DatabaseToolBox(ITestOutputHelper output) { diff --git a/TestProject1/GlobalUsings.cs b/MesETL.Test/GlobalUsings.cs similarity index 100% rename from TestProject1/GlobalUsings.cs rename to MesETL.Test/GlobalUsings.cs diff --git a/TestProject1/MesDatabaseHelper.cs b/MesETL.Test/MesDatabaseHelper.cs similarity index 93% rename from TestProject1/MesDatabaseHelper.cs rename to MesETL.Test/MesDatabaseHelper.cs index a1178cd..56b2b52 100644 --- a/TestProject1/MesDatabaseHelper.cs +++ b/MesETL.Test/MesDatabaseHelper.cs @@ -1,4 +1,4 @@ -using ConsoleApp2.Helpers.Database; +using ConsoleApp2.Helpers; namespace TestProject1; diff --git a/TestProject1/TestProject1.csproj b/MesETL.Test/MesETL.Test.csproj similarity index 89% rename from TestProject1/TestProject1.csproj rename to MesETL.Test/MesETL.Test.csproj index 274f9a8..bdc5abc 100644 --- a/TestProject1/TestProject1.csproj +++ b/MesETL.Test/MesETL.Test.csproj @@ -7,6 +7,7 @@ false true + TestProject1 @@ -23,7 +24,7 @@ - + diff --git a/TestProject1/TableIndex.cs b/MesETL.Test/TableIndex.cs similarity index 100% rename from TestProject1/TableIndex.cs rename to MesETL.Test/TableIndex.cs diff --git a/TestProject1/TenantDbHelper.cs b/MesETL.Test/TenantDbHelper.cs similarity index 100% rename from TestProject1/TenantDbHelper.cs rename to MesETL.Test/TenantDbHelper.cs diff --git a/ConsoleApp2.sln b/MesETL.sln similarity index 77% rename from ConsoleApp2.sln rename to MesETL.sln index 1e51a6f..3f4bde3 100644 --- a/ConsoleApp2.sln +++ b/MesETL.sln @@ -1,8 +1,8 @@  Microsoft Visual Studio Solution File, Format Version 12.00 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ConsoleApp2", "ConsoleApp2\ConsoleApp2.csproj", "{155E4B04-E88C-4BA4-AED2-B13E0A0432B5}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MesETL.App", "MesETL.App\MesETL.App.csproj", "{155E4B04-E88C-4BA4-AED2-B13E0A0432B5}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TestProject1", "TestProject1\TestProject1.csproj", "{8679D5B6-5853-446E-9882-7B7A8E270500}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MesETL.Test", "MesETL.Test\MesETL.Test.csproj", "{8679D5B6-5853-446E-9882-7B7A8E270500}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution