75 lines
2.3 KiB
C#
75 lines
2.3 KiB
C#
using MP.Data.DatabaseModels;
|
|
using System.Text;
|
|
|
|
namespace MP.Mon.Data
|
|
{
|
|
public class MpDataService : IDisposable
|
|
{
|
|
#region Private Fields
|
|
|
|
private static IConfiguration _configuration;
|
|
private static ILogger<MpDataService> _logger;
|
|
|
|
#endregion Private Fields
|
|
|
|
#region Public Fields
|
|
|
|
public static MP.Data.Controllers.MpMonController dbController;
|
|
|
|
#endregion Public Fields
|
|
|
|
#region Public Constructors
|
|
|
|
public MpDataService(IConfiguration configuration, ILogger<MpDataService> logger)
|
|
{
|
|
_logger = logger;
|
|
_configuration = configuration;
|
|
// conf DB
|
|
string connStr = _configuration.GetConnectionString("Mp.Mon");
|
|
if (string.IsNullOrEmpty(connStr))
|
|
{
|
|
_logger.LogError("ConnString empty!");
|
|
}
|
|
else
|
|
{
|
|
dbController = new MP.Data.Controllers.MpMonController(configuration);
|
|
StringBuilder sb = new StringBuilder();
|
|
sb.AppendLine($"DbController OK");
|
|
//sb.AppendLine($"CST: {dbController.CustomersCount()} | CNT: {dbController.CountersCount()} | BSK: {dbController.BasketsCount()} | NGT: {dbController.NegotiationsCount()} | DOC: {dbController.DocsCount()} | ITM: {dbController.ItemsCount()} | RES: {dbController.ResourcesCount()}");
|
|
_logger.LogInformation(sb.ToString());
|
|
}
|
|
}
|
|
|
|
#endregion Public Constructors
|
|
|
|
#region Public Methods
|
|
|
|
public Task<List<ConfigModel>> ConfigGetAll()
|
|
{
|
|
return Task.FromResult(dbController.ConfigGetAll().ToList());
|
|
}
|
|
|
|
public void Dispose()
|
|
{
|
|
// Clear database controller
|
|
dbController.Dispose();
|
|
}
|
|
|
|
public Task<List<Macchine>> MacchineGetAll()
|
|
{
|
|
return Task.FromResult(dbController.MacchineGetAll().ToList());
|
|
}
|
|
|
|
public Task<List<MappaStatoExpl>> MseGetAll()
|
|
{
|
|
var dbResult = dbController.MseGetAll();
|
|
if (dbResult == null)
|
|
{
|
|
dbResult = new List<MappaStatoExpl>();
|
|
}
|
|
return Task.FromResult(dbResult);
|
|
}
|
|
|
|
#endregion Public Methods
|
|
}
|
|
} |