Table of Contents

Interface IPiiVisibilityService

Namespace
SEBT.Portal.Core.Services
Assembly
SEBT.Portal.Core.dll

Determines which PII fields a user can see based on their IAL level and the configured view requirements. Used by the repository layer for query filtering.

public interface IPiiVisibilityService

Methods

GetVisibility(UserIalLevel)

Resolves visibility for a user without case context. Per-case-type view requirements degrade to IAL1 here (no cases = no case-derived reason to require elevated IAL), so callers that have access to the user's cases should prefer the overload that accepts them.

PiiVisibility GetVisibility(UserIalLevel userIalLevel)

Parameters

userIalLevel UserIalLevel

Returns

PiiVisibility

GetVisibility(UserIalLevel, IReadOnlyList<SummerEbtCase>)

Resolves visibility against the user's actual cases. Required for per-case-type view requirements (e.g. address+view) to apply correctly — without the cases, the "highest wins" rule has nothing to resolve against.

PiiVisibility GetVisibility(UserIalLevel userIalLevel, IReadOnlyList<SummerEbtCase> cases)

Parameters

userIalLevel UserIalLevel
cases IReadOnlyList<SummerEbtCase>

Returns

PiiVisibility