using Marco.Pms.Model.Dtos.Directory; using Marco.Pms.Model.Employees; using Marco.Pms.Model.Utilities; namespace Marco.Pms.Services.Service.ServiceInterfaces { public interface IDirectoryService { Task> GetListOfContactsAsync(string? search, string? filter, Guid? projectId, bool active, int pageSize, int pageNumber, Guid tenantId, Employee loggedInEmployee); Task> GetListOfContactsOld(string? search, bool active, ContactFilterDto? filterDto, Guid? projectId); Task> GetContactsListByBucketIdAsync(Guid bucketId, Guid tenantId, Employee loggedInEmployee); Task> GetContactProfileAsync(Guid id, Guid tenantId, Employee loggedInEmployee); Task> GetOrganizationListAsync(Guid tenantId, Employee loggedInEmployee); Task> GetDesignationListAsync(Guid tenantId, Employee loggedInEmployee); Task> GetContactFilterObjectAsync(Guid tenantId, Employee loggedInEmployee); Task> CreateContactAsync(CreateContactDto createContact, Guid tenantId, Employee loggedInEmployee); Task> UpdateContactAsync(Guid id, UpdateContactDto updateContact, Guid tenantId, Employee loggedInEmployee); Task> DeleteContactAsync(Guid id, bool active, Guid tenantId, Employee loggedInEmployee); Task> GetListOFAllNotesAsync(Guid? projectId, int pageSize, int pageNumber, Guid tenantId, Employee loggedInEmployee); Task> GetNoteListByContactIdAsync(Guid id, bool active, Guid tenantId, Employee loggedInEmployee); Task> GetContactNotesFilterObjectAsync(Guid tenantId, Employee loggedInEmployee); Task> CreateContactNoteAsync(CreateContactNoteDto noteDto, Guid tenantId, Employee loggedInEmployee); Task> UpdateContactNoteAsync(Guid id, UpdateContactNoteDto noteDto, Guid tenantId, Employee loggedInEmployee); Task> DeleteContactNoteAsync(Guid id, bool active, Guid tenantId, Employee loggedInEmployee); Task> GetBucketListAsync(Guid tenantId, Employee loggedInEmployee); Task> CreateBucketAsync(CreateBucketDto bucketDto, Guid tenantId, Employee loggedInEmployee); Task> UpdateBucketAsync(Guid id, UpdateBucketDto bucketDto, Guid tenantId, Employee loggedInEmployee); Task> AssignBucketAsync(Guid bucketId, List assignBuckets, Guid tenantId, Employee loggedInEmployee); Task> DeleteBucketAsync(Guid id, Guid tenantId, Employee loggedInEmployee); } }