namespace CAPI.Custom.Entities { public class EntityBase : IEntity { public int recId { get; set; } } public class SurfaceEntity : EntityBase, ISurfaceEntity { public bool? isActive { get; set; } public int itemID { get; set; } public int surfaceId { get; set; } } public class SurfacePublishedEntity : SurfaceEntity, ISurfacePublishedEntity { } public class SurfacePublishedChildEntity : SurfacePublishedEntity, ISurfaceChildEntity { public int? ParentSurfaceItemId { get; set; } } public class SurfaceQueryEntity : SurfaceEntity, ISurfaceQueryEntity { public bool allowClone { get; set; } public bool? allowEdit { get; set; } = false; public bool? allowRemove { get; set; } = false; public bool? allowView { get; set; } = false; public int cloneAccessType { get; set; } public int editAccessType { get; set; } public bool isComplete { get; set; } public bool? linkUser { get; set; } = false; public int removeAccessType { get; set; } public bool showWizardStatus { get; set; } public string surfaceLinkItems { get; set; } = string.Empty; public string userLinkEmail { get; set; } = string.Empty; public int userLinkId { get; set; } public int? userType { get; set; } = 0; public int viewAccessType { get; set; } } public class SurfaceQueryChildEntity : SurfaceQueryEntity, ISurfaceQueryChildEntity { public string ParentSurfaceItemId { get; set; } = string.Empty; } }