using Sarand.Core.Bus; using Sarand.OperationsMgr.Core.App; using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; namespace Sarand.OperationsMgr.Web.App { //======================================================================= // Sarand OperationsMgr Web user session data. // NB private setters are required for JSON deserialisation. //======================================================================= public class SessionData { //------------------------------------------------------------------- // Construction. public SessionData (OpnSessionContext sessionContext, SysId userId, String userCode, String userName) { SessionContext = sessionContext; User = new UserData(userId, userCode, userName); } //------------------------------------------------------------------- // Properties. public OpnSessionContext SessionContext { get; } public Opn.Instance Instance { get { return SessionContext.Instance; } } public String InstanceCode { get { return OpnSystem.GetInstanceCode(Instance); } } public String InstanceDesc { get { return OpnSystem.GetInstanceDesc(Instance); } } //------------------------------------------------------------------- // User data. public class UserData { public UserData (SysId userId, String userCode, String userName) { Id = userId; Code = userCode; Name = userName; } public SysId Id { get; private set; } public String Code { get; private set; } public String Name { get; private set; } } public UserData User { get; private set; } //------------------------------------------------------------------- } //======================================================================= }