using Microsoft.Extensions.Configuration;
using MP.AppAuth.Models;
using NLog;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace MP.AppAuth.Controllers
{
public class AppUserController : IDisposable
{
#region Private Fields
private readonly IConfiguration _configuration;
private static Logger Log = LogManager.GetCurrentClassLogger();
private bool _disposed = false;
#endregion
#region Public Constructors
public AppUserController(IConfiguration configuration)
{
_configuration = configuration;
Log.Info("Avviata classe AppUserController");
}
#endregion
#region Public Methods
///
/// Elenco Diritti utente da modulo
///
/// UserName cercato
/// Modulo desiderato, se "" allora tutti i diritti
///
public List DirittiUtente(string UserName, string Modulo)
{
List dbResult = new List();
using (UserAuthContext dbCtx = new UserAuthContext(_configuration))
{
dbResult = dbCtx
.DbSetUserDiritti
.Where(x => x.UserName == UserName && (string.IsNullOrEmpty(Modulo) || x.Modulo == Modulo))
.ToList();
}
return dbResult;
}
#endregion Public Methods
#region Protected Methods
protected virtual void Dispose(bool disposing)
{
if (!_disposed)
{
if (disposing)
{
// Free managed resources here
}
_disposed = true;
}
}
public void Dispose()
{
Dispose(true);
GC.SuppressFinalize(this);
}
#endregion
}
}