79 lines
2.7 KiB
C#
79 lines
2.7 KiB
C#
using Sarand.BusinessMgr.Net.Standard.Base.App;
|
|
using Sarand.BusinessMgr.Net.Standard.Base.Bus;
|
|
using Sarand.Net.Standard.Base.App;
|
|
using Sarand.Net.Standard.Base.Bus;
|
|
using Sarand.Net.Standard.Base.Core;
|
|
using Sarand.Net.Standard.Base.Dbas;
|
|
using Sarand.Net.Standard.Base.Utils;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
|
|
namespace Sarand.BusinessMgr.Net.Standard.Base.Mgr
|
|
{
|
|
//=======================================================================
|
|
// Data Item Manager - Item Links - Utils.
|
|
//=======================================================================
|
|
partial class SbmDataItemMgr
|
|
{
|
|
//-------------------------------------------------------------------
|
|
// Utilities.
|
|
public static Sbm.ItemLinkType GetLinkType(Sbm.ApplCodeType applCodeType)
|
|
{
|
|
switch (applCodeType)
|
|
{
|
|
case Sbm.ApplCodeType.SeasonalCategory: return Sbm.ItemLinkType.ItemCodeList_SeasonalCategory;
|
|
case Sbm.ApplCodeType.PostcodeArea: return Sbm.ItemLinkType.ItemCodeList_PostcodeArea;
|
|
case Sbm.ApplCodeType.JobTrade: return Sbm.ItemLinkType.ItemCodeList_JobTrade;
|
|
case Sbm.ApplCodeType.JobEngineer: return Sbm.ItemLinkType.ItemCodeList_JobEngineer;
|
|
}
|
|
return Sbm.ItemLinkType.Unknown;
|
|
}
|
|
|
|
//-------------------------------------------------------------------
|
|
// Clean up data issues/inconsistencies.
|
|
public abstract bool DoDbCleanup();
|
|
|
|
// Clear all associated data for item - attributes and links.
|
|
public abstract bool ClearDataItem(SbmItemId itemId, DbUpdateInfo dbUpdateInfo);
|
|
|
|
//-------------------------------------------------------------------
|
|
// Linked Items.
|
|
|
|
public static bool ItemLinkParentIsFixed(Sbm.AssociatedItemMode itemMode)
|
|
{
|
|
switch (itemMode)
|
|
{
|
|
case Sbm.AssociatedItemMode.Commodity_Parent:
|
|
case Sbm.AssociatedItemMode.Requirement_Parent:
|
|
return true;
|
|
}
|
|
return false;
|
|
}
|
|
|
|
public static bool ItemLinkChildIsFixed(Sbm.AssociatedItemMode itemMode)
|
|
{
|
|
switch (itemMode)
|
|
{
|
|
case Sbm.AssociatedItemMode.Commodity_Child:
|
|
case Sbm.AssociatedItemMode.Requirement_Child:
|
|
return true;
|
|
}
|
|
return false;
|
|
}
|
|
|
|
public static bool ItemLinkConfigIsValid(Sbm.AssociatedItemMode itemMode, Sbm.ItemLinkType itemLinkType)
|
|
{
|
|
switch (itemMode)
|
|
{
|
|
case Sbm.AssociatedItemMode.Commodity_Child:
|
|
case Sbm.AssociatedItemMode.Requirement_Child:
|
|
return true;
|
|
}
|
|
return false;
|
|
}
|
|
public abstract bool UpdateLinkedItems(Sbm.AssociatedItemMode itemMode, Sbm.ItemLinkType itemLinkType, ref ItemId itemIdParent, ref ItemId itemIdChild, ItemId itemId, List<SbmItemLink> itemLinks);
|
|
|
|
//-------------------------------------------------------------------
|
|
}
|
|
//=======================================================================
|
|
} |