Files
BusinessMgr-2019/SaBusMgrStandardDbas/Dbas/Consoles/SbmItemOptionConsole_Dbas.cs
T
2025-01-22 08:01:51 +00:00

63 lines
2.6 KiB
C#

using Sarand.BusinessMgr.Net.Standard.Base.App;
using Sarand.BusinessMgr.Net.Standard.Base.Core;
using Sarand.BusinessMgr.Net.Standard.Base.Mgr;
using Sarand.Net.Standard.Base.Bus;
using Sarand.Net.Standard.Base.Interfaces;
using Sarand.Net.Standard.Base.ItemOptions;
using Sarand.Net.Standard.Base.UpdateLog;
using Sarand.Net.Standard.Dbas.Base;
using Sarand.Net.Standard.Dbas.ItemOptions;
using System.Collections.Generic;
namespace Sarand.BusinessMgr.Net.Standard.Dbas.Consoles
{
//=======================================================================
public abstract class SbmItemOptionConsole_Dbas : SaItemOptionConsole_Dbas
{
//-------------------------------------------------------------------
// Data members.
private SbmInternals internals;
//-------------------------------------------------------------------
// Construction.
protected SbmItemOptionConsole_Dbas(ISbmUserOrganisationContext userContext) : base(SbmGlobals.Application.GetBusMgrDatabase(userContext.SessionContext))
{
UserContext = userContext;
}
protected override void Dispose(bool disposing)
{
if (disposing)
{
if (internals != null) internals.Dispose(); internals = null;
}
base.Dispose(disposing);
}
//-------------------------------------------------------------------
// Properties.
public ISbmUserOrganisationContext UserContext { get; set; }
public SbmSessionContext SessionContext { get { return UserContext.SessionContext; } }
private SbmInternals Internals { get { if (internals == null) { internals = new SbmInternals(UserContext); } return internals; } }
public override short ItemOptionDataType { get { return (short)Sbm.ItemType.ItemOption; } }
private SbmAccountMgr AccountMgr { get { return Internals.AccountMgr; } }
// Consoles.
public SaInterfaceConsole InterfaceConsole { get { return Internals.InterfaceConsole; } }
public override SaUpdateLogConsole UpdateLogConsole { get { return Internals.UpdateLogConsole; } }
//-------------------------------------------------------------------
// I t e m O p t i o n D e f i n i t i o n s
//-------------------------------------------------------------------
public override List<SaItemOptionDfn> GetItemOptionDfnsForItem(ItemId itemId)
{
if (itemId.Type == (int)Sbm.ItemType.Association)
return AccountMgr.GetOrganisationItemOptionDfns(itemId.Id);
if (itemId.Type == (int)Sbm.ItemType.Interface)
return InterfaceConsole.GetInterfaceItemOptionDfns(itemId.Id);
return new List<SaItemOptionDfn>();
}
//-------------------------------------------------------------------
}
//=======================================================================
}