Backend/e-suite.API.Common/e-suite.API.Common/ISiteManager.cs
2026-01-20 21:50:10 +00:00

20 lines
1.2 KiB
C#

using e_suite.API.Common.models;
using e_suite.Database.Audit;
using e_suite.Utilities.Pagination;
using eSuite.Core.Miscellaneous;
namespace e_suite.API.Common;
public interface ISiteManager
{
Task<IPaginatedData<ReadSite>> GetSites(Paging paging, CancellationToken cancellationToken);
Task<ReadSite> GetSite(IGeneralIdRef generalIdRef, CancellationToken cancellationToken);
Task<ReadSite> GetSiteByName(IGeneralIdRef organisationGeneralIdRef, string siteName, CancellationToken cancellationToken);
Task<ReadSite> GetSiteBySigmaId(long sigmaId, CancellationToken cancellationToken);
Task CreateSite(AuditUserDetails auditUserDetails, CreateSite site, bool triggerEFlowSync, CancellationToken cancellationToken);
Task CreateSites(AuditUserDetails auditUserDetails, IEnumerable<CreateSite> sites, bool triggerEFlowSync, CancellationToken cancellationToken);
Task EditSite(AuditUserDetails auditUserDetails, EditSite site, bool triggerEFlowSync, CancellationToken cancellationToken);
Task DeleteSite(AuditUserDetails auditUserDetails, IGeneralIdRef generalIdRef, bool triggerEFlowSync, CancellationToken cancellationToken);
}