namespace DXPDAL.Auth; // ── MDXPUSERPARTYROLE ──────────────────────────────────────────────────────── // M table — INT AutoNumber PK. Which MDXPUSER can act as which MDXPPARTY, in what role — // the data behind the context-switch screen. public class UserPartyRoleDTO { public int DxpUserPartyRoleId { get; set; } public int DxpUserId { get; set; } public int DxpPartyId { get; set; } public string RoleCode { get; set; } = string.Empty; // VendorGM|FinanceContact|OperationsContact|QualityContact|ReadOnly public DateTime GrantedOn { get; set; } public int GrantedById { get; set; } // Audit public byte Status { get; set; } = 1; // 1=Active 2=Suspended 3=Revoked public int CreatedById { get; set; } public DateTime CreatedOn { get; set; } public int ModifiedById { get; set; } public DateTime ModifiedOn { get; set; } // ── Joined display fields (populated by GetMyContexts-style queries only) ── public string? PartyLegalName { get; set; } public byte PartyTypeCode { get; set; } }