using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; using GB5Shared.DTO.Framework.Criteria; using GB5Shared.DTO.Framework.DBObject; using GB5Shared.DTO.Framework.Login; using GB5Shared.ResponseStandard; namespace GB5Shared.DBObject { public interface IDBObjectBLL { Task GetDBObject(int dbObjectId, LoginDTO loginDTO); Task GetSelectListDBObjectFields(CriteriaDTO criteriaDTO, LoginDTO loginDTO); Task SaveDBObject(DBObjectDTO DBObjectDTO, LoginDTO LoginDTO); Task DeleteDBObject(int DBObjectId, LoginDTO LoginDTO); Task GetSelectListDBObject(CriteriaDTO criteriaDTO, LoginDTO loginDTO); // Duplicate-registration guard: unique on (SourceDbObjectKind, SourceClientDbId, DBObjectName). // Returns null when no matching DBOBJECT row exists. Task FindBySourceAndNameAsync(string dbObjectName, byte sourceDbObjectKind, int? sourceClientDbId, LoginDTO login, CancellationToken ct); } }