Completo refactor using in classi Lux.Data

This commit is contained in:
Samuele Locatelli
2026-03-25 08:24:25 +01:00
parent 8530434732
commit ac397783be
108 changed files with 162 additions and 499 deletions
@@ -6,7 +6,7 @@ namespace EgwCoreLib.Lux.Core
/// <summary>
/// Configurazione costanti applicative
/// </summary>
public class Constants
public class Const
{
// dati conf REDIS Cache
@@ -1,6 +1,6 @@
namespace EgwCoreLib.Lux.Core
{
public class DtUtils
public class DateTimeUtils
{
/// <summary>
/// Formattazione dataora fissa come HH:mm:ss
@@ -54,7 +54,6 @@
<ItemGroup>
<Folder Include="DbModel\Engine\" />
<Folder Include="Migrations\" />
<Folder Include="Services\Internal\" />
</ItemGroup>
<ItemGroup>
@@ -1,6 +1,4 @@
using EgwMultiEngineManager.Data;
namespace EgwCoreLib.Lux.Data.Repository.Items
namespace EgwCoreLib.Lux.Data.Repository.Items
{
public class SellingItemRepository : BaseRepository, ISellingItemRepository
{
@@ -28,7 +26,7 @@ namespace EgwCoreLib.Lux.Data.Repository.Items
return await dbCtx.SaveChangesAsync() > 0;
}
public async Task<List<SellingItemModel>> GetByEnvirAsync(Constants.EXECENVIRONMENTS envir)
public async Task<List<SellingItemModel>> GetByEnvirAsync(EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS envir)
{
await using var dbCtx = await CreateContextAsync();
return await dbCtx.DbSetSellItem
@@ -45,11 +43,11 @@ namespace EgwCoreLib.Lux.Data.Repository.Items
.FirstOrDefaultAsync();
}
public async Task<List<SellingItemModel>> GetFiltAsync(Constants.EXECENVIRONMENTS envir, ItemSourceType sourceType)
public async Task<List<SellingItemModel>> GetFiltAsync(EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS envir, ItemSourceType sourceType)
{
await using var dbCtx = await CreateContextAsync();
return await dbCtx.DbSetSellItem
.Where(x => (x.Envir == envir || envir == Constants.EXECENVIRONMENTS.NULL) && (sourceType == ItemSourceType.ND || x.SourceType == sourceType))
.Where(x => (x.Envir == envir || envir == EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS.NULL) && (sourceType == ItemSourceType.ND || x.SourceType == sourceType))
.AsNoTracking()
.ToListAsync();
}
+3 -9
View File
@@ -1,10 +1,4 @@
using EgwCoreLib.Lux.Data.Services.Internal;
using Microsoft.Extensions.Configuration;
using Newtonsoft.Json;
using NLog;
using StackExchange.Redis;
using System.Collections.Concurrent;
using System.Diagnostics;
using System.Runtime.CompilerServices;
namespace EgwCoreLib.Lux.Data.Services
@@ -300,7 +294,7 @@ namespace EgwCoreLib.Lux.Data.Services
var cachedResult = JsonConvert.DeserializeObject<T>(cached!)!;
activity?.SetTag("data.source", source);
LogTrace($"{source} | trace: {activity?.TraceId} | {activity?.Duration.TotalMilliseconds}ms", LogLevel.Trace, caller);
LogTrace($"{source} | trace: {activity?.TraceId} | {activity?.Duration.TotalMilliseconds}ms", NLog.LogLevel.Trace, caller);
return cachedResult;
}
@@ -320,7 +314,7 @@ namespace EgwCoreLib.Lux.Data.Services
activity?.Stop();
// log in console
LogTrace($"GetOrSetCacheAsync | {source} | trace: {activity?.TraceId} | {activity?.Duration.TotalMilliseconds:N3}ms", LogLevel.Trace, caller);
LogTrace($"GetOrSetCacheAsync | {source} | trace: {activity?.TraceId} | {activity?.Duration.TotalMilliseconds:N3}ms", NLog.LogLevel.Trace, caller);
return result!;
}
@@ -369,7 +363,7 @@ namespace EgwCoreLib.Lux.Data.Services
{
activity?.SetStatus(ActivityStatusCode.Error, ex.Message);
//Log.Error(ex, "Errore in {MethodName}", name);
LogTrace($"Errore in {name}", LogLevel.Error, name);
LogTrace($"Errore in {name}", NLog.LogLevel.Error, name);
throw; // Riesponi l'eccezione per il tracking globale
}
}
@@ -1,6 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Catalog;
namespace EgwCoreLib.Lux.Data.Services.Catalog
namespace EgwCoreLib.Lux.Data.Services.Catalog
{
public interface ITemplateRowService
{
@@ -1,6 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Catalog;
namespace EgwCoreLib.Lux.Data.Services.Catalog
namespace EgwCoreLib.Lux.Data.Services.Catalog
{
public interface ITemplateService
{
@@ -1,10 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Catalog;
using EgwCoreLib.Lux.Data.Repository.Utils;
using Microsoft.Extensions.Configuration;
using StackExchange.Redis;
using static EgwCoreLib.Lux.Core.Enums;
namespace EgwCoreLib.Lux.Data.Services.Catalog
namespace EgwCoreLib.Lux.Data.Services.Catalog
{
public class TemplateRowService : BaseServ, ITemplateRowService
{
@@ -1,12 +1,4 @@
using EgwCoreLib.Lux.Core.RestPayload;
using EgwCoreLib.Lux.Data.DbModel.Catalog;
using EgwCoreLib.Lux.Data.Domains;
using EgwCoreLib.Lux.Data.Repository.Utils;
using Microsoft.Extensions.Configuration;
using Newtonsoft.Json;
using StackExchange.Redis;
namespace EgwCoreLib.Lux.Data.Services.Catalog
namespace EgwCoreLib.Lux.Data.Services.Catalog
{
public class TemplateService : BaseServ, ITemplateService
{
@@ -1,9 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Config;
using EgwCoreLib.Lux.Data.Repository.Config;
using Microsoft.Extensions.Configuration;
using StackExchange.Redis;
namespace EgwCoreLib.Lux.Data.Services.Config
namespace EgwCoreLib.Lux.Data.Services.Config
{
public class ConfGlassService : BaseServ, IConfGlassService
{
@@ -1,11 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Config;
using EgwCoreLib.Lux.Data.Repository.Config;
using EgwMultiEngineManager.Data;
using Microsoft.Extensions.Configuration;
using Newtonsoft.Json;
using StackExchange.Redis;
namespace EgwCoreLib.Lux.Data.Services.Config
namespace EgwCoreLib.Lux.Data.Services.Config
{
public class ConfProfileService : BaseServ, IConfProfileService
{
@@ -1,9 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Config;
using EgwCoreLib.Lux.Data.Repository.Config;
using Microsoft.Extensions.Configuration;
using StackExchange.Redis;
namespace EgwCoreLib.Lux.Data.Services.Config
namespace EgwCoreLib.Lux.Data.Services.Config
{
public class ConfWoodService : BaseServ, IConfWoodService
{
@@ -1,9 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Config;
using EgwCoreLib.Lux.Data.Repository.Config;
using Microsoft.Extensions.Configuration;
using StackExchange.Redis;
namespace EgwCoreLib.Lux.Data.Services.Config
namespace EgwCoreLib.Lux.Data.Services.Config
{
public class EnvirParamService : BaseServ, IEnvirParamService
{
@@ -1,6 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Config;
namespace EgwCoreLib.Lux.Data.Services.Config
namespace EgwCoreLib.Lux.Data.Services.Config
{
public interface IConfGlassService
{
@@ -1,7 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Config;
using EgwMultiEngineManager.Data;
namespace EgwCoreLib.Lux.Data.Services.Config
namespace EgwCoreLib.Lux.Data.Services.Config
{
public interface IConfProfileService
{
@@ -1,6 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Config;
namespace EgwCoreLib.Lux.Data.Services.Config
namespace EgwCoreLib.Lux.Data.Services.Config
{
public interface IConfWoodService
{
@@ -1,6 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Config;
namespace EgwCoreLib.Lux.Data.Services.Config
namespace EgwCoreLib.Lux.Data.Services.Config
{
public interface IEnvirParamService
{
@@ -0,0 +1 @@
global using EgwCoreLib.Lux.Data.Repository.Config;
@@ -1,9 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Cost;
using EgwCoreLib.Lux.Data.Repository.Cost;
using Microsoft.Extensions.Configuration;
using StackExchange.Redis;
namespace EgwCoreLib.Lux.Data.Services.Cost
namespace EgwCoreLib.Lux.Data.Services.Cost
{
public class CostDriverService : BaseServ, ICostDriverService
{
@@ -1,6 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Cost;
namespace EgwCoreLib.Lux.Data.Services.Cost
namespace EgwCoreLib.Lux.Data.Services.Cost
{
public interface ICostDriverService
{
@@ -1,6 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Cost;
namespace EgwCoreLib.Lux.Data.Services.Cost
namespace EgwCoreLib.Lux.Data.Services.Cost
{
public interface IResourceService
{
@@ -1,9 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Cost;
using EgwCoreLib.Lux.Data.Repository.Cost;
using Microsoft.Extensions.Configuration;
using StackExchange.Redis;
namespace EgwCoreLib.Lux.Data.Services.Cost
namespace EgwCoreLib.Lux.Data.Services.Cost
{
public class ResourceService : BaseServ, IResourceService
{
@@ -0,0 +1 @@
global using EgwCoreLib.Lux.Data.Repository.Cost;
@@ -1,8 +1,4 @@
using Microsoft.Extensions.Configuration;
using NLog;
using RestSharp;
namespace EgwCoreLib.Lux.Data.Services.General
namespace EgwCoreLib.Lux.Data.Services.General
{
public class CalcRequestService : ICalcRequestService
{
@@ -1,12 +1,4 @@
using EgwCoreLib.Lux.Core.Stats;
using EgwCoreLib.Lux.Data.DbModel.Stats;
using EgwCoreLib.Lux.Data.Services.Stats;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using NLog;
using StackExchange.Redis;
using static Egw.Window.Data.Enums;
using static EgwCoreLib.Lux.Core.Enums;
using static Egw.Window.Data.Enums;
namespace EgwCoreLib.Lux.Data.Services.General
{
@@ -1,10 +1,4 @@
using Egw.Window.Data;
using EgwCoreLib.Lux.Data.DbModel.Config;
using EgwMultiEngineManager.Data;
using Microsoft.Extensions.Configuration;
using Newtonsoft.Json;
using NLog;
using StackExchange.Redis;
namespace EgwCoreLib.Lux.Data.Services.General
{
@@ -1,17 +1,8 @@
using EgwCoreLib.Lux.Core.Generic;
using EgwCoreLib.Lux.Core.RestPayload;
using EgwCoreLib.Lux.Data.Controllers;
using EgwCoreLib.Lux.Data.Controllers;
using EgwCoreLib.Lux.Data.Services.Config;
using EgwCoreLib.Lux.Data.Services.Items;
using EgwCoreLib.Lux.Data.Services.Production;
using EgwCoreLib.Lux.Data.Services.Sales;
using EgwMultiEngineManager.Data;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Newtonsoft.Json;
using NLog;
using StackExchange.Redis;
using System.Diagnostics;
using System.Runtime.CompilerServices;
namespace EgwCoreLib.Lux.Data.Services.General
@@ -1,7 +1,4 @@
using Microsoft.Extensions.Configuration;
using NLog;
namespace EgwCoreLib.Lux.Data.Services.General
namespace EgwCoreLib.Lux.Data.Services.General
{
/// <summary>
/// Gestione IO File-based
@@ -1,6 +1,3 @@
using Microsoft.Extensions.Configuration;
using RestSharp;
namespace EgwCoreLib.Lux.Data.Services.General
{
/// <summary>
@@ -1,8 +1,3 @@
using EgwCoreLib.Lux.Core.Stats;
using EgwCoreLib.Lux.Data.DbModel.Stats;
using StackExchange.Redis;
using static EgwCoreLib.Lux.Core.Enums;
namespace EgwCoreLib.Lux.Data.Services.General
{
/// <summary>
@@ -1,6 +1,4 @@
using Egw.Window.Data;
using EgwCoreLib.Lux.Data.DbModel.Config;
using EgwMultiEngineManager.Data;
namespace EgwCoreLib.Lux.Data.Services.General
{
@@ -1,6 +1,4 @@
using EgwCoreLib.Lux.Core.Generic;
using EgwCoreLib.Lux.Data.Services.Internal;
using EgwMultiEngineManager.Data;
using EgwCoreLib.Lux.Data.Services.Internal;
namespace EgwCoreLib.Lux.Data.Services.General
{
@@ -1,5 +1,3 @@
using System.IO;
namespace EgwCoreLib.Lux.Data.Services.General
{
/// <summary>
@@ -1,6 +1,3 @@
using EgwMultiEngineManager.Data;
using StackExchange.Redis;
namespace EgwCoreLib.Lux.Data.Services.General
{
/// <summary>
@@ -1,9 +1,3 @@
using EgwCoreLib.Lux.Core.Generic;
using EgwCoreLib.Lux.Core.RestPayload;
using EgwMultiEngineManager.Data;
using StackExchange.Redis;
using static EgwCoreLib.Lux.Core.Enums;
namespace EgwCoreLib.Lux.Data.Services.General
{
/// <summary>
@@ -36,7 +30,7 @@ namespace EgwCoreLib.Lux.Data.Services.General
/// <param name="cEnv">Environment richiesto</param>
/// <param name="id">ID Job</param>
/// <returns>Job serializzato</returns>
Task<string> GetJobAsync(Constants.EXECENVIRONMENTS cEnv, string id);
Task<string> GetJobAsync(EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS cEnv, string id);
/// <summary>
/// Restituisce il contenuto della prossima richiesta da eseguire x Environment
@@ -44,7 +38,7 @@ namespace EgwCoreLib.Lux.Data.Services.General
/// <param name="cEnv">Environment richiesto</param>
/// <param name="qType">Tipo coda (default waiting)</param>
/// <returns>Richiesta serializzata</returns>
Task<string> GetNextAsync(Constants.EXECENVIRONMENTS cEnv, ProdQueueType qType = ProdQueueType.waiting);
Task<string> GetNextAsync(EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS cEnv, ProdQueueType qType = ProdQueueType.waiting);
/// <summary>
/// Numero di Job in attesa su coda x environment e tipo
@@ -52,7 +46,7 @@ namespace EgwCoreLib.Lux.Data.Services.General
/// <param name="cEnv">Environment richiesto</param>
/// <param name="qType">Tipo coda (default waiting)</param>
/// <returns>Lunghezza coda</returns>
Task<long> QueueLenAsync(Constants.EXECENVIRONMENTS cEnv, ProdQueueType qType = ProdQueueType.waiting);
Task<long> QueueLenAsync(EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS cEnv, ProdQueueType qType = ProdQueueType.waiting);
/// <summary>
/// Restituisce elenco corrente delle richieste x environment e tipo
@@ -60,7 +54,7 @@ namespace EgwCoreLib.Lux.Data.Services.General
/// <param name="cEnv">Environment richiesto</param>
/// <param name="qType">Tipo coda</param>
/// <returns>Elenco di UID in coda</returns>
Task<List<RedisValue>> QueueListAllAsync(Constants.EXECENVIRONMENTS cEnv, ProdQueueType qType);
Task<List<RedisValue>> QueueListAllAsync(EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS cEnv, ProdQueueType qType);
/// <summary>
/// Reset coda del tipo richiesto...
@@ -68,7 +62,7 @@ namespace EgwCoreLib.Lux.Data.Services.General
/// <param name="cEnv">Environment richiesto</param>
/// <param name="qType">Tipo coda</param>
/// <returns>True se resettato con successo</returns>
bool QueueReset(Constants.EXECENVIRONMENTS cEnv, ProdQueueType qType);
bool QueueReset(EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS cEnv, ProdQueueType qType);
/// <summary>
/// Reset coda del tipo richiestoversione Async...
@@ -76,7 +70,7 @@ namespace EgwCoreLib.Lux.Data.Services.General
/// <param name="cEnv">Environment richiesto</param>
/// <param name="qType">Tipo coda</param>
/// <returns>True se resettato con successo</returns>
Task<bool> QueueResetAsync(Constants.EXECENVIRONMENTS cEnv, ProdQueueType qType);
Task<bool> QueueResetAsync(EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS cEnv, ProdQueueType qType);
/// <summary>
/// Rimette un run un singolo job eliminando da coda Run e mettendo in coda waiting
@@ -84,14 +78,14 @@ namespace EgwCoreLib.Lux.Data.Services.General
/// <param name="cEnv">Environment richiesto</param>
/// <param name="codJob">Cod Job da resettare</param>
/// <returns>True se resettato con successo</returns>
Task<bool> ReRunJobAsync(Constants.EXECENVIRONMENTS cEnv, string codJob);
Task<bool> ReRunJobAsync(EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS cEnv, string codJob);
/// <summary>
/// Reset coda running (riaccoda job su waiting)...
/// </summary>
/// <param name="cEnv">Environment richiesto</param>
/// <returns>True se resettato con successo</returns>
Task<bool> ResetRunningAsync(Constants.EXECENVIRONMENTS cEnv);
Task<bool> ResetRunningAsync(EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS cEnv);
/// <summary>
/// Verifica un job in una coda, se trovato lo "avanza" a fatto
@@ -100,14 +94,14 @@ namespace EgwCoreLib.Lux.Data.Services.General
/// <param name="codJob">Chiave da cercare x avanzarla</param>
/// <param name="qType">Coda di default a run --> done</param>
/// <returns>True se avanzato con successo</returns>
Task<bool> SetDoneAsync(Constants.EXECENVIRONMENTS cEnv, string codJob, ProdQueueType qType = ProdQueueType.running);
Task<bool> SetDoneAsync(EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS cEnv, string codJob, ProdQueueType qType = ProdQueueType.running);
/// <summary>
/// Esegue avanzamento nella coda logica tra wait/run/done se possibile...
/// </summary>
/// <param name="hashKey">Chiave hash del contenuto richiesta RUID</param>
/// <returns></returns>
Task UpdateQueueAsync(Constants.EXECENVIRONMENTS cEnvir, string hashKey);
Task UpdateQueueAsync(EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS cEnvir, string hashKey);
#endregion Public Methods
}
@@ -1,6 +1,4 @@
using StackExchange.Redis;
namespace EgwCoreLib.Lux.Data.Services.General
namespace EgwCoreLib.Lux.Data.Services.General
{
/// <summary>
/// Interfaccia servizio REDIS x pub/sub e caching
@@ -1,11 +1,4 @@
using EgwMultiEngineManager.Data;
using Microsoft.Extensions.Configuration;
using Newtonsoft.Json;
using NLog;
using RestSharp;
using StackExchange.Redis;
namespace EgwCoreLib.Lux.Data.Services.General
namespace EgwCoreLib.Lux.Data.Services.General
{
public class ImageCacheService : IImageCacheService
{
@@ -93,7 +86,7 @@ namespace EgwCoreLib.Lux.Data.Services.General
/// <param name="imgId"></param>
/// <param name="svgContent"></param>
/// <returns></returns>
public bool DeleteSvg(string imgId, Constants.EXECENVIRONMENTS env)
public bool DeleteSvg(string imgId, EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS env)
{
// salvo img in cache
string currKey = $"{redisBaseKey}:{env}:Img:Svg:{imgId.Replace("/", ":")}";
@@ -107,7 +100,7 @@ namespace EgwCoreLib.Lux.Data.Services.General
/// <param name="imgId"></param>
/// <param name="env"></param>
/// <param name="svgContent"></param>
public async Task<bool> DeleteSvgAsync(string imgId, Constants.EXECENVIRONMENTS env)
public async Task<bool> DeleteSvgAsync(string imgId, EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS env)
{
// salvo img in cache
string currKey = $"{redisBaseKey}:{env}:Img:Svg:{imgId.Replace("/", ":")}";
@@ -197,7 +190,7 @@ namespace EgwCoreLib.Lux.Data.Services.General
/// <param name="imgUID">UID elemento/immagine</param>
/// <param name="envir">Environment item</param>
/// <returns></returns>
public string ImageUrl(string baseUrl, bool isLive, string imgUID, Constants.EXECENVIRONMENTS envir = Constants.EXECENVIRONMENTS.WINDOW)
public string ImageUrl(string baseUrl, bool isLive, string imgUID, EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS envir = EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS.WINDOW)
{
string tag = isLive ? liveTag : cacheTag;
string fType = "undef";
@@ -225,7 +218,7 @@ namespace EgwCoreLib.Lux.Data.Services.General
/// <param name="uID"></param>
/// <param name="env"></param>
/// <returns></returns>
public async Task<string> LoadDebug(string uID, Constants.EXECENVIRONMENTS env)
public async Task<string> LoadDebug(string uID, EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS env)
{
// salvo img in cache
string currKey = $"{redisBaseKey}:DEBUG:{env}:{uID}";
@@ -238,7 +231,7 @@ namespace EgwCoreLib.Lux.Data.Services.General
/// </summary>
/// <param name="imgUid">UID item</param>
/// <param name="envir">Environment item</param>
public string LoadPng(string imgUid, Constants.EXECENVIRONMENTS envir = Constants.EXECENVIRONMENTS.WINDOW)
public string LoadPng(string imgUid, EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS envir = EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS.WINDOW)
{
// recupero img da cache
string currKey = $"{redisBaseKey}:{envir}:Img:Png:{imgUid.Replace("/", ":")}";
@@ -251,7 +244,7 @@ namespace EgwCoreLib.Lux.Data.Services.General
/// </summary>
/// <param name="imgUid">UID item</param>
/// <param name="envir">Environment item</param>
public async Task<string> LoadPngAsync(string imgUid, Constants.EXECENVIRONMENTS envir = Constants.EXECENVIRONMENTS.WINDOW)
public async Task<string> LoadPngAsync(string imgUid, EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS envir = EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS.WINDOW)
{
// recupero img da cache
string currKey = $"{redisBaseKey}:{envir}:Img:Png:{imgUid.Replace("/", ":")}";
@@ -264,7 +257,7 @@ namespace EgwCoreLib.Lux.Data.Services.General
/// </summary>
/// <param name="imgUid">UID item</param>
/// <param name="envir">Environment item</param>
public string LoadSvg(string imgUid, Constants.EXECENVIRONMENTS envir = Constants.EXECENVIRONMENTS.WINDOW)
public string LoadSvg(string imgUid, EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS envir = EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS.WINDOW)
{
// recupero img da cache
string currKey = $"{redisBaseKey}:{envir}:Img:Svg:{imgUid.Replace("/", ":")}";
@@ -277,7 +270,7 @@ namespace EgwCoreLib.Lux.Data.Services.General
/// </summary>
/// <param name="imgId">UID item</param>
/// <param name="envir">Environment item</param>
public async Task<string> LoadSvgAsync(string imgId, Constants.EXECENVIRONMENTS envir = Constants.EXECENVIRONMENTS.WINDOW)
public async Task<string> LoadSvgAsync(string imgId, EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS envir = EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS.WINDOW)
{
// recupero img da cache
string currKey = $"{redisBaseKey}:{envir}:Img:Svg:{imgId.Replace("/", ":")}";
@@ -291,7 +284,7 @@ namespace EgwCoreLib.Lux.Data.Services.General
/// </summary>
/// <param name="env"></param>
/// <param name="uid"></param>
public async Task<bool> PublishUpdateAsync(string uid, Constants.EXECENVIRONMENTS env)
public async Task<bool> PublishUpdateAsync(string uid, EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS env)
{
bool done = false;
// invio notifica sul canale di update generale...
@@ -308,7 +301,7 @@ namespace EgwCoreLib.Lux.Data.Services.General
/// <param name="uid"></param>
/// <param name="env"></param>
/// <param name="bomContent"></param>
public async Task<bool> SaveBomAsync(string uid, Constants.EXECENVIRONMENTS env, string bomContent)
public async Task<bool> SaveBomAsync(string uid, EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS env, string bomContent)
{
// salvo in cache
string currKey = $"{redisBaseKey}:{env}:BOM:{uid.Replace("/", ":")}";
@@ -327,7 +320,7 @@ namespace EgwCoreLib.Lux.Data.Services.General
/// <param name="rawData"></param>
/// <returns></returns>
/// <exception cref="NotImplementedException"></exception>
public async Task<bool> SaveDebug(string uID, Constants.EXECENVIRONMENTS env, string rawData)
public async Task<bool> SaveDebug(string uID, EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS env, string rawData)
{
// salvo img in cache
string currKey = $"{redisBaseKey}:DEBUG:{env}:{uID}";
@@ -340,7 +333,7 @@ namespace EgwCoreLib.Lux.Data.Services.General
/// </summary>
/// <param name="uid"></param>
/// <param name="rawData"></param>
public async Task<bool> SaveHmlAsync(string uid, Constants.EXECENVIRONMENTS env, string rawData)
public async Task<bool> SaveHmlAsync(string uid, EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS env, string rawData)
{
// salvo img in cache
string currKey = $"{redisBaseKey}:{env}:HML:{uid.Replace("/", ":")}";
@@ -357,7 +350,7 @@ namespace EgwCoreLib.Lux.Data.Services.General
/// <param name="uid"></param>
/// <param name="env"></param>
/// <param name="xmlContent"></param>
public async Task<bool> SaveHwOptAsync(string uid, Constants.EXECENVIRONMENTS env, string xmlContent)
public async Task<bool> SaveHwOptAsync(string uid, EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS env, string xmlContent)
{
// salvo img in cache
string currKey = $"{redisBaseKey}:{env}:HwOpt:{uid.Replace("/", ":")}";
@@ -375,7 +368,7 @@ namespace EgwCoreLib.Lux.Data.Services.General
/// <param name="imgId"></param>
/// <param name="pngContent">contenuto PNG come string base64</param>
/// <returns></returns>
public bool SavePng(string imgId, Constants.EXECENVIRONMENTS env, string pngContent)
public bool SavePng(string imgId, EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS env, string pngContent)
{
// salvo img in cache
string currKey = $"{redisBaseKey}:{env}:Img:Png:{imgId.Replace("/", ":")}";
@@ -392,7 +385,7 @@ namespace EgwCoreLib.Lux.Data.Services.General
/// <param name="imgId"></param>
/// <param name="env"></param>
/// <param name="pngContent">contenuto PNG come string base64</param>
public async Task<bool> SavePngAsync(string imgId, Constants.EXECENVIRONMENTS env, string pngContent)
public async Task<bool> SavePngAsync(string imgId, EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS env, string pngContent)
{
// salvo img in cache
string currKey = $"{redisBaseKey}:{env}:Img:Png:{imgId.Replace("/", ":")}";
@@ -411,7 +404,7 @@ namespace EgwCoreLib.Lux.Data.Services.General
/// <param name="uid"></param>
/// <param name="env"></param>
/// <param name="estimContent"></param>
public async Task<bool> SaveProdBalanceAsync(string uid, Constants.EXECENVIRONMENTS env, string estimContent)
public async Task<bool> SaveProdBalanceAsync(string uid, EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS env, string estimContent)
{
// salvo in cache
string currKey = $"{redisBaseKey}:{env}:Balance:{uid}";
@@ -428,7 +421,7 @@ namespace EgwCoreLib.Lux.Data.Services.General
/// <param name="uid"></param>
/// <param name="env"></param>
/// <param name="estimContent"></param>
public async Task<bool> SaveProdEstimateAsync(string uid, Constants.EXECENVIRONMENTS env, string estimContent)
public async Task<bool> SaveProdEstimateAsync(string uid, EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS env, string estimContent)
{
// salvo in cache
string currKey = $"{redisBaseKey}:{env}:Estimation:{uid}";
@@ -447,7 +440,7 @@ namespace EgwCoreLib.Lux.Data.Services.General
/// <param name="env"></param>
/// <param name="areaProfElem"></param>
/// <returns></returns>
public async Task<bool> SaveProfileElemAsync(string uID, Constants.EXECENVIRONMENTS env, string areaProfElem)
public async Task<bool> SaveProfileElemAsync(string uID, EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS env, string areaProfElem)
{
// salvo in cache
string currKey = $"{redisBaseKey}:{env}:AreaProfList:{uID}";
@@ -463,7 +456,7 @@ namespace EgwCoreLib.Lux.Data.Services.General
/// </summary>
/// <param name="uid"></param>
/// <param name="rawData"></param>
public async Task<bool> SaveProfileListAsync(string uid, Constants.EXECENVIRONMENTS env, string rawData)
public async Task<bool> SaveProfileListAsync(string uid, EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS env, string rawData)
{
// salvo img in cache
string currKey = $"{redisBaseKey}:{env}:PROF:LIST:{uid.Replace("/", ":")}";
@@ -480,7 +473,7 @@ namespace EgwCoreLib.Lux.Data.Services.General
/// <param name="uid"></param>
/// <param name="rawDataThresh">Info Threshold</param>
/// <param name="rawProfData">Info generiche</param>
public async Task<bool> SaveProfileThreshAsync(string uid, Constants.EXECENVIRONMENTS env, string rawDataThresh, string rawProfData)
public async Task<bool> SaveProfileThreshAsync(string uid, EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS env, string rawDataThresh, string rawProfData)
{
// salvo img in cache
var doneThres = await _redisService.SetAsync($"{redisBaseKey}:{env}:PROF:THRESH:{uid.Replace("/", ":")}", rawDataThresh);
@@ -497,7 +490,7 @@ namespace EgwCoreLib.Lux.Data.Services.General
/// <param name="uid"></param>
/// <param name="env"></param>
/// <param name="shapeContent"></param>
public async Task<bool> SaveShapeAsync(string uid, Constants.EXECENVIRONMENTS env, string shapeContent)
public async Task<bool> SaveShapeAsync(string uid, EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS env, string shapeContent)
{
// salvo img in cache
string currKey = $"{redisBaseKey}:{env}:Shape:{uid}";
@@ -514,7 +507,7 @@ namespace EgwCoreLib.Lux.Data.Services.General
/// <param name="imgId"></param>
/// <param name="svgContent"></param>
/// <returns></returns>
public bool SaveSvg(string imgId, Constants.EXECENVIRONMENTS env, string svgContent)
public bool SaveSvg(string imgId, EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS env, string svgContent)
{
// salvo img in cache
string currKey = $"{redisBaseKey}:{env}:Img:Svg:{imgId.Replace("/", ":")}";
@@ -531,7 +524,7 @@ namespace EgwCoreLib.Lux.Data.Services.General
/// <param name="imgId"></param>
/// <param name="env"></param>
/// <param name="svgContent"></param>
public async Task<bool> SaveSvgAsync(string imgId, Constants.EXECENVIRONMENTS env, string svgContent)
public async Task<bool> SaveSvgAsync(string imgId, EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS env, string svgContent)
{
// salvo img in cache
string currKey = $"{redisBaseKey}:{env}:Img:Svg:{imgId.Replace("/", ":")}";
@@ -594,11 +587,11 @@ namespace EgwCoreLib.Lux.Data.Services.General
/// </summary>
/// <param name="envir"></param>
/// <returns></returns>
private string GetImageExtension(Constants.EXECENVIRONMENTS envir)
private string GetImageExtension(EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS envir)
{
return envir switch
{
Constants.EXECENVIRONMENTS.WINDOW => "svg",
EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS.WINDOW => "svg",
_ => "png"
};
}
@@ -1,13 +1,4 @@
using EgwCoreLib.Lux.Core.Generic;
using EgwCoreLib.Lux.Core.RestPayload;
using EgwMultiEngineManager.Data;
using Microsoft.Extensions.Configuration;
using Newtonsoft.Json;
using NLog;
using StackExchange.Redis;
using System.Diagnostics;
using static Egw.Window.Data.Enums;
using static EgwCoreLib.Lux.Core.Enums;
using static Egw.Window.Data.Enums;
namespace EgwCoreLib.Lux.Data.Services.General
{
@@ -92,7 +83,7 @@ namespace EgwCoreLib.Lux.Data.Services.General
/// <param name="cEnv">environment richiesto</param>
/// <param name="id"></param>
/// <returns></returns>
public async Task<string> GetJobAsync(Constants.EXECENVIRONMENTS cEnv, string id)
public async Task<string> GetJobAsync(EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS cEnv, string id)
{
Stopwatch sw = new Stopwatch();
sw.Start();
@@ -115,7 +106,7 @@ namespace EgwCoreLib.Lux.Data.Services.General
/// <param name="cEnv">environment richiesto</param>
/// <param name="qType">tipo coda (default waiting)</param>
/// <returns></returns>
public async Task<string> GetNextAsync(Constants.EXECENVIRONMENTS cEnv, ProdQueueType qType = ProdQueueType.waiting)
public async Task<string> GetNextAsync(EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS cEnv, ProdQueueType qType = ProdQueueType.waiting)
{
Stopwatch sw = new Stopwatch();
sw.Start();
@@ -151,7 +142,7 @@ namespace EgwCoreLib.Lux.Data.Services.General
/// <param name="cEnv">environment richiesto</param>
/// <param name="qType">tipo coda (default waiting)</param>
/// <returns></returns>
public async Task<long> QueueLenAsync(Constants.EXECENVIRONMENTS cEnv, ProdQueueType qType = ProdQueueType.waiting)
public async Task<long> QueueLenAsync(EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS cEnv, ProdQueueType qType = ProdQueueType.waiting)
{
Stopwatch sw = new Stopwatch();
sw.Start();
@@ -168,7 +159,7 @@ namespace EgwCoreLib.Lux.Data.Services.General
/// <param name="cEnv">environment richiesto</param>
/// <param name="qType">tipo coda</param>
/// <returns></returns>
public async Task<List<RedisValue>> QueueListAllAsync(Constants.EXECENVIRONMENTS cEnv, ProdQueueType qType)
public async Task<List<RedisValue>> QueueListAllAsync(EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS cEnv, ProdQueueType qType)
{
RedisKey rKey = qKey(cEnv, qType);
List<RedisValue> currList = await _redisService.QueueListAllAsync(rKey);
@@ -181,7 +172,7 @@ namespace EgwCoreLib.Lux.Data.Services.General
/// <param name="cEnv">environment richiesto</param>
/// <param name="qType">tipo coda</param>
/// <returns></returns>
public bool QueueReset(Constants.EXECENVIRONMENTS cEnv, ProdQueueType qType)
public bool QueueReset(EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS cEnv, ProdQueueType qType)
{
RedisKey rKey = qKey(cEnv, qType);
bool answ = _redisService.QueueReset(rKey);
@@ -194,7 +185,7 @@ namespace EgwCoreLib.Lux.Data.Services.General
/// <param name="cEnv">environment richiesto</param>
/// <param name="qType">tipo coda</param>
/// <returns></returns>
public async Task<bool> QueueResetAsync(Constants.EXECENVIRONMENTS cEnv, ProdQueueType qType)
public async Task<bool> QueueResetAsync(EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS cEnv, ProdQueueType qType)
{
RedisKey rKey = qKey(cEnv, qType);
bool answ = await _redisService.QueueResetAsync(rKey);
@@ -207,7 +198,7 @@ namespace EgwCoreLib.Lux.Data.Services.General
/// <param name="cEnv">environment richiesto</param>
/// <param name="codJob">cod Job da resettare</param>
/// <returns></returns>
public async Task<bool> ReRunJobAsync(Constants.EXECENVIRONMENTS cEnv, string codJob)
public async Task<bool> ReRunJobAsync(EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS cEnv, string codJob)
{
bool fatto = false;
RedisKey rKey = qKey(cEnv, ProdQueueType.running);
@@ -237,7 +228,7 @@ namespace EgwCoreLib.Lux.Data.Services.General
/// </summary>
/// <param name="cEnv">environment richiesto</param>
/// <returns></returns>
public async Task<bool> ResetRunningAsync(Constants.EXECENVIRONMENTS cEnv)
public async Task<bool> ResetRunningAsync(EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS cEnv)
{
bool fatto = false;
RedisKey rKey = qKey(cEnv, ProdQueueType.running);
@@ -263,7 +254,7 @@ namespace EgwCoreLib.Lux.Data.Services.General
/// <param name="codJob">chiave da cercare x avanzarla</param>
/// <param name="qType">coda di default a run --> done</param>
/// <returns></returns>
public async Task<bool> SetDoneAsync(Constants.EXECENVIRONMENTS cEnv, string codJob, ProdQueueType qType = ProdQueueType.running)
public async Task<bool> SetDoneAsync(EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS cEnv, string codJob, ProdQueueType qType = ProdQueueType.running)
{
Stopwatch sw = new Stopwatch();
sw.Start();
@@ -296,7 +287,7 @@ namespace EgwCoreLib.Lux.Data.Services.General
/// </summary>
/// <param name="hashKey">Chiave hash del contenuto richiesta RUID</param>
/// <returns></returns>
public async Task UpdateQueueAsync(Constants.EXECENVIRONMENTS cEnvir, string hashKey)
public async Task UpdateQueueAsync(EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS cEnvir, string hashKey)
{
// recupero info accessorie da redis
var tipo = await _redisService.HashGetAsync(hashKey, "tipo");
@@ -362,7 +353,7 @@ namespace EgwCoreLib.Lux.Data.Services.General
/// <param name="cEnvir"></param>
/// <param name="qType"></param>
/// <returns></returns>
private string qKey(Constants.EXECENVIRONMENTS cEnvir, ProdQueueType qType)
private string qKey(EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS cEnvir, ProdQueueType qType)
{
RedisKey rKey = (RedisKey)$"{redisBaseKey}:{cEnvir}:CalcQueue";
switch (qType)
@@ -1,8 +1,4 @@
using Newtonsoft.Json;
using NLog;
using StackExchange.Redis;
namespace EgwCoreLib.Lux.Data.Services.General
namespace EgwCoreLib.Lux.Data.Services.General
{
/// <summary>
/// Implementazione interfaccia REDIS:
@@ -1,9 +1,4 @@
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
using Microsoft.Extensions.Logging;
namespace EgwCoreLib.Lux.Data.Services.General
namespace EgwCoreLib.Lux.Data.Services.General
{
public class StatsCollectService : BackgroundService
{
@@ -0,0 +1,7 @@
global using EgwCoreLib.Lux.Core.Stats;
global using EgwCoreLib.Lux.Data.Services.Stats;
global using Microsoft.Extensions.DependencyInjection;
global using Microsoft.Extensions.Hosting;
global using Microsoft.Extensions.Logging;
global using RestSharp;
//global using static Egw.Window.Data.Enums;
@@ -1,7 +1,3 @@
using StackExchange.Redis;
using System;
using System.Collections.Generic;
namespace EgwCoreLib.Lux.Data.Services.Internal
{
/// <summary>
@@ -1,8 +1,4 @@
using EgwCoreLib.Lux.Core;
using NLog;
using StackExchange.Redis;
namespace EgwCoreLib.Lux.Data.Services.Internal
namespace EgwCoreLib.Lux.Data.Services.Internal
{
public class MessagePipe : IDisposable
@@ -1,8 +1,4 @@
using NLog;
using StackExchange.Redis;
using System.Collections.Concurrent;
namespace EgwCoreLib.Lux.Data.Services.Internal
namespace EgwCoreLib.Lux.Data.Services.Internal
{
public class RedisSubscriptionManager : IRedisSubscriptionManager, IDisposable
{
@@ -0,0 +1 @@
global using EgwCoreLib.Lux.Core;
@@ -1,7 +1,4 @@
using EgwCoreLib.Lux.Core.RestPayload;
using EgwCoreLib.Lux.Data.DbModel.Items;
namespace EgwCoreLib.Lux.Data.Services.Items
namespace EgwCoreLib.Lux.Data.Services.Items
{
public interface IItemGroupService
{
@@ -1,8 +1,4 @@
using EgwCoreLib.Lux.Core.RestPayload;
using EgwCoreLib.Lux.Data.DbModel.Items;
using static EgwCoreLib.Lux.Core.Enums;
namespace EgwCoreLib.Lux.Data.Services.Items
namespace EgwCoreLib.Lux.Data.Services.Items
{
public interface IItemService
{
@@ -1,8 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Items;
using EgwMultiEngineManager.Data;
using static EgwCoreLib.Lux.Core.Enums;
namespace EgwCoreLib.Lux.Data.Services.Items
namespace EgwCoreLib.Lux.Data.Services.Items
{
public interface ISellingItemService
{
@@ -1,10 +1,4 @@
using EgwCoreLib.Lux.Core.RestPayload;
using EgwCoreLib.Lux.Data.DbModel.Items;
using EgwCoreLib.Lux.Data.Repository.Items;
using Microsoft.Extensions.Configuration;
using StackExchange.Redis;
namespace EgwCoreLib.Lux.Data.Services.Items
namespace EgwCoreLib.Lux.Data.Services.Items
{
public class ItemGroupService : BaseServ, IItemGroupService
{
@@ -1,11 +1,4 @@
using EgwCoreLib.Lux.Core.RestPayload;
using EgwCoreLib.Lux.Data.DbModel.Items;
using EgwCoreLib.Lux.Data.Repository.Items;
using Microsoft.Extensions.Configuration;
using StackExchange.Redis;
using static EgwCoreLib.Lux.Core.Enums;
namespace EgwCoreLib.Lux.Data.Services.Items
namespace EgwCoreLib.Lux.Data.Services.Items
{
public class ItemService : BaseServ, IItemService
{
@@ -1,11 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Items;
using EgwCoreLib.Lux.Data.Repository.Items;
using EgwMultiEngineManager.Data;
using Microsoft.Extensions.Configuration;
using StackExchange.Redis;
using static EgwCoreLib.Lux.Core.Enums;
namespace EgwCoreLib.Lux.Data.Services.Items
namespace EgwCoreLib.Lux.Data.Services.Items
{
public class SellingItemService : BaseServ, ISellingItemService
{
@@ -0,0 +1 @@
global using EgwCoreLib.Lux.Data.Repository.Items;
@@ -1,6 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Job;
namespace EgwCoreLib.Lux.Data.Services.Job
namespace EgwCoreLib.Lux.Data.Services.Job
{
public interface IJobStepService
{
@@ -1,6 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Job;
namespace EgwCoreLib.Lux.Data.Services.Job
namespace EgwCoreLib.Lux.Data.Services.Job
{
public interface IJobTaskService
{
@@ -1,6 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Job;
namespace EgwCoreLib.Lux.Data.Services.Job
namespace EgwCoreLib.Lux.Data.Services.Job
{
public interface IPhaseService
{
@@ -1,9 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Job;
using EgwCoreLib.Lux.Data.Repository.Job;
using Microsoft.Extensions.Configuration;
using StackExchange.Redis;
namespace EgwCoreLib.Lux.Data.Services.Job
namespace EgwCoreLib.Lux.Data.Services.Job
{
public class JobStepService : BaseServ, IJobStepService
{
@@ -1,9 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Job;
using EgwCoreLib.Lux.Data.Repository.Job;
using Microsoft.Extensions.Configuration;
using StackExchange.Redis;
namespace EgwCoreLib.Lux.Data.Services.Job
namespace EgwCoreLib.Lux.Data.Services.Job
{
public class JobTaskService : BaseServ, IJobTaskService
{
@@ -1,9 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Job;
using EgwCoreLib.Lux.Data.Repository.Job;
using Microsoft.Extensions.Configuration;
using StackExchange.Redis;
namespace EgwCoreLib.Lux.Data.Services.Job
namespace EgwCoreLib.Lux.Data.Services.Job
{
public class PhaseService : BaseServ, IPhaseService
{
@@ -0,0 +1 @@
global using EgwCoreLib.Lux.Data.Repository.Job;
@@ -1,6 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Production;
namespace EgwCoreLib.Lux.Data.Services.Production
namespace EgwCoreLib.Lux.Data.Services.Production
{
public interface IProductionBatchService
{
@@ -1,7 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Production;
using static EgwCoreLib.Lux.Core.Enums;
namespace EgwCoreLib.Lux.Data.Services.Production
namespace EgwCoreLib.Lux.Data.Services.Production
{
public interface IProductionGroupService
{
@@ -1,6 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Production;
namespace EgwCoreLib.Lux.Data.Services.Production
namespace EgwCoreLib.Lux.Data.Services.Production
{
public interface IProductionItemService
{
@@ -1,7 +1,4 @@
using EgwCoreLib.Lux.Core.Generic;
using EgwCoreLib.Lux.Data.DbModel.Production;
namespace EgwCoreLib.Lux.Data.Services.Production
namespace EgwCoreLib.Lux.Data.Services.Production
{
public interface IProductionOdlService
{
@@ -1,6 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Production;
namespace EgwCoreLib.Lux.Data.Services.Production
namespace EgwCoreLib.Lux.Data.Services.Production
{
public interface IProductionPlantService
{
@@ -1,9 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Production;
using EgwCoreLib.Lux.Data.Repository.Production;
using Microsoft.Extensions.Configuration;
using StackExchange.Redis;
namespace EgwCoreLib.Lux.Data.Services.Production
namespace EgwCoreLib.Lux.Data.Services.Production
{
public class ProductionBatchService : BaseServ, IProductionBatchService
{
@@ -1,10 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Production;
using EgwCoreLib.Lux.Data.Repository.Production;
using Microsoft.Extensions.Configuration;
using StackExchange.Redis;
using static EgwCoreLib.Lux.Core.Enums;
namespace EgwCoreLib.Lux.Data.Services.Production
namespace EgwCoreLib.Lux.Data.Services.Production
{
public class ProductionGroupService : BaseServ, IProductionGroupService
{
@@ -1,9 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Production;
using EgwCoreLib.Lux.Data.Repository.Production;
using Microsoft.Extensions.Configuration;
using StackExchange.Redis;
namespace EgwCoreLib.Lux.Data.Services.Production
namespace EgwCoreLib.Lux.Data.Services.Production
{
public class ProductionItemService : BaseServ, IProductionItemService
{
@@ -1,10 +1,4 @@
using EgwCoreLib.Lux.Core.Generic;
using EgwCoreLib.Lux.Data.DbModel.Production;
using EgwCoreLib.Lux.Data.Repository.Production;
using Microsoft.Extensions.Configuration;
using StackExchange.Redis;
namespace EgwCoreLib.Lux.Data.Services.Production
namespace EgwCoreLib.Lux.Data.Services.Production
{
public class ProductionOdlService : BaseServ, IProductionOdlService
{
@@ -1,9 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Production;
using EgwCoreLib.Lux.Data.Repository.Production;
using Microsoft.Extensions.Configuration;
using StackExchange.Redis;
namespace EgwCoreLib.Lux.Data.Services.Production
namespace EgwCoreLib.Lux.Data.Services.Production
{
public class ProductionPlantService : BaseServ, IProductionPlantService
{
@@ -0,0 +1,2 @@
global using EgwCoreLib.Lux.Core.Generic;
global using EgwCoreLib.Lux.Data.Repository.Production;
@@ -1,9 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Sales;
using EgwCoreLib.Lux.Data.Repository.Sales;
using Microsoft.Extensions.Configuration;
using StackExchange.Redis;
namespace EgwCoreLib.Lux.Data.Services.Sales
namespace EgwCoreLib.Lux.Data.Services.Sales
{
public class CustomerService : BaseServ, ICustomerService
{
@@ -1,9 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Sales;
using EgwCoreLib.Lux.Data.Repository.Sales;
using Microsoft.Extensions.Configuration;
using StackExchange.Redis;
namespace EgwCoreLib.Lux.Data.Services.Sales
namespace EgwCoreLib.Lux.Data.Services.Sales
{
public class DealerService : BaseServ, IDealerService
{
@@ -1,6 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Sales;
namespace EgwCoreLib.Lux.Data.Services.Sales
namespace EgwCoreLib.Lux.Data.Services.Sales
{
public interface ICustomerService
{
@@ -1,6 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Sales;
namespace EgwCoreLib.Lux.Data.Services.Sales
namespace EgwCoreLib.Lux.Data.Services.Sales
{
public interface IDealerService
{
@@ -1,7 +1,4 @@
using EgwCoreLib.Lux.Core.RestPayload;
using EgwCoreLib.Lux.Data.DbModel.Sales;
namespace EgwCoreLib.Lux.Data.Services.Sales
namespace EgwCoreLib.Lux.Data.Services.Sales
{
public interface IOfferRowService
{
@@ -1,6 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Sales;
namespace EgwCoreLib.Lux.Data.Services.Sales
namespace EgwCoreLib.Lux.Data.Services.Sales
{
public interface IOfferService
{
@@ -1,8 +1,4 @@
using EgwCoreLib.Lux.Core.RestPayload;
using EgwCoreLib.Lux.Data.DbModel.Sales;
using static EgwCoreLib.Lux.Core.Enums;
namespace EgwCoreLib.Lux.Data.Services.Sales
namespace EgwCoreLib.Lux.Data.Services.Sales
{
public interface IOrderRowService
{
@@ -1,6 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Sales;
namespace EgwCoreLib.Lux.Data.Services.Sales
namespace EgwCoreLib.Lux.Data.Services.Sales
{
public interface IOrderService
{
@@ -1,13 +1,4 @@
using EgwCoreLib.Lux.Core.RestPayload;
using EgwCoreLib.Lux.Data.DbModel.Sales;
using EgwCoreLib.Lux.Data.Domains;
using EgwCoreLib.Lux.Data.Repository.Sales;
using Microsoft.Extensions.Configuration;
using Newtonsoft.Json;
using StackExchange.Redis;
using static EgwCoreLib.Lux.Core.Enums;
namespace EgwCoreLib.Lux.Data.Services.Sales
namespace EgwCoreLib.Lux.Data.Services.Sales
{
public class OfferRowService : BaseServ, IOfferRowService
{
@@ -1,12 +1,4 @@
using EgwCoreLib.Lux.Core.RestPayload;
using EgwCoreLib.Lux.Data.DbModel.Sales;
using EgwCoreLib.Lux.Data.Domains;
using EgwCoreLib.Lux.Data.Repository.Sales;
using Microsoft.Extensions.Configuration;
using Newtonsoft.Json;
using StackExchange.Redis;
namespace EgwCoreLib.Lux.Data.Services.Sales
namespace EgwCoreLib.Lux.Data.Services.Sales
{
public class OfferService : BaseServ, IOfferService
{
@@ -1,13 +1,4 @@
using EgwCoreLib.Lux.Core.RestPayload;
using EgwCoreLib.Lux.Data.DbModel.Sales;
using EgwCoreLib.Lux.Data.Domains;
using EgwCoreLib.Lux.Data.Repository.Sales;
using Microsoft.Extensions.Configuration;
using Newtonsoft.Json;
using StackExchange.Redis;
using static EgwCoreLib.Lux.Core.Enums;
namespace EgwCoreLib.Lux.Data.Services.Sales
namespace EgwCoreLib.Lux.Data.Services.Sales
{
public class OrderRowService : BaseServ, IOrderRowService
{
@@ -1,12 +1,4 @@
using EgwCoreLib.Lux.Core.RestPayload;
using EgwCoreLib.Lux.Data.DbModel.Sales;
using EgwCoreLib.Lux.Data.Domains;
using EgwCoreLib.Lux.Data.Repository.Sales;
using Microsoft.Extensions.Configuration;
using Newtonsoft.Json;
using StackExchange.Redis;
namespace EgwCoreLib.Lux.Data.Services.Sales
namespace EgwCoreLib.Lux.Data.Services.Sales
{
public class OrderService : BaseServ, IOrderService
{
@@ -0,0 +1,2 @@
global using EgwCoreLib.Lux.Data.Domains;
global using EgwCoreLib.Lux.Data.Repository.Sales;
@@ -1,7 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Stats;
using EgwCoreLib.Utils;
namespace EgwCoreLib.Lux.Data.Services.Stats
namespace EgwCoreLib.Lux.Data.Services.Stats
{
public interface IStatsAggrService
{
@@ -1,7 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Stats;
using EgwCoreLib.Utils;
namespace EgwCoreLib.Lux.Data.Services.Stats
namespace EgwCoreLib.Lux.Data.Services.Stats
{
public interface IStatsDetailService
{
@@ -1,10 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Stats;
using EgwCoreLib.Lux.Data.Repository.Stats;
using EgwCoreLib.Utils;
using Microsoft.Extensions.Configuration;
using StackExchange.Redis;
namespace EgwCoreLib.Lux.Data.Services.Stats
namespace EgwCoreLib.Lux.Data.Services.Stats
{
public class StatsAggrService : BaseServ, IStatsAggrService
{
@@ -1,10 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Stats;
using EgwCoreLib.Lux.Data.Repository.Stats;
using EgwCoreLib.Utils;
using Microsoft.Extensions.Configuration;
using StackExchange.Redis;
namespace EgwCoreLib.Lux.Data.Services.Stats
namespace EgwCoreLib.Lux.Data.Services.Stats
{
public class StatsDetailService : BaseServ, IStatsDetailService
{
@@ -0,0 +1 @@
global using EgwCoreLib.Lux.Data.Repository.Stats;
@@ -1,9 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Utils;
using EgwCoreLib.Lux.Data.Repository.Utils;
using Microsoft.Extensions.Configuration;
using StackExchange.Redis;
namespace EgwCoreLib.Lux.Data.Services.Utils
namespace EgwCoreLib.Lux.Data.Services.Utils
{
public class CounterService : BaseServ, ICounterService
{
@@ -1,9 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Utils;
using EgwCoreLib.Lux.Data.Repository.Utils;
using Microsoft.Extensions.Configuration;
using StackExchange.Redis;
namespace EgwCoreLib.Lux.Data.Services.Utils
namespace EgwCoreLib.Lux.Data.Services.Utils
{
public class GenClassService : BaseServ, IGenClassService
{
@@ -1,9 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Utils;
using EgwCoreLib.Lux.Data.Repository.Utils;
using Microsoft.Extensions.Configuration;
using StackExchange.Redis;
namespace EgwCoreLib.Lux.Data.Services.Utils
namespace EgwCoreLib.Lux.Data.Services.Utils
{
public class GenValService : BaseServ, IGenValService
{
@@ -1,6 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Utils;
namespace EgwCoreLib.Lux.Data.Services.Utils
namespace EgwCoreLib.Lux.Data.Services.Utils
{
public interface ICounterService
{
@@ -1,6 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Utils;
namespace EgwCoreLib.Lux.Data.Services.Utils
namespace EgwCoreLib.Lux.Data.Services.Utils
{
public interface IGenClassService
{
@@ -1,6 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Utils;
namespace EgwCoreLib.Lux.Data.Services.Utils
namespace EgwCoreLib.Lux.Data.Services.Utils
{
public interface IGenValService
{
@@ -1,6 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Utils;
namespace EgwCoreLib.Lux.Data.Services.Utils
namespace EgwCoreLib.Lux.Data.Services.Utils
{
public interface ITagService
@@ -1,9 +1,4 @@
using EgwCoreLib.Lux.Data.DbModel.Utils;
using EgwCoreLib.Lux.Data.Repository.Utils;
using Microsoft.Extensions.Configuration;
using StackExchange.Redis;
namespace EgwCoreLib.Lux.Data.Services.Utils
namespace EgwCoreLib.Lux.Data.Services.Utils
{
public class TagService : BaseServ, ITagService
{
@@ -0,0 +1 @@
global using EgwCoreLib.Lux.Data.Repository.Utils;
+5
View File
@@ -0,0 +1,5 @@
global using EgwCoreLib.Utils;
global using EgwMultiEngineManager.Data;
global using StackExchange.Redis;
global using System.Collections.Concurrent;
global using System.Diagnostics;
+1 -1
View File
@@ -4,7 +4,7 @@
<TargetFramework>net8.0</TargetFramework>
<Nullable>enable</Nullable>
<ImplicitUsings>enable</ImplicitUsings>
<Version>1.1.2603.2507</Version>
<Version>1.1.2603.2508</Version>
</PropertyGroup>
<ItemGroup>
@@ -991,7 +991,7 @@ namespace Lux.UI.Components.Compo.Order
private string FormatDatetime(decimal durationSec)
{
TimeSpan tsWorkTime = TimeSpan.FromSeconds((double)durationSec);
return DtUtils.FormatDateTime(tsWorkTime);
return DateTimeUtils.FormatDateTime(tsWorkTime);
}
/// <summary>

Some files were not shown because too many files have changed in this diff Show More