26 lines
1.3 KiB
C#
26 lines
1.3 KiB
C#
using System.Collections.Generic;
|
|
using System.Threading.Tasks;
|
|
using LCU.Library.Internal.IncentiveApiModels.Entities;
|
|
using LCU.Library.Internal.IncentiveApiModels.Common;
|
|
using LCU.Library.Internal.IncentiveApiModels.Requests;
|
|
|
|
namespace LCU.API.Internal.Operations.IncentiveApiLib.Repositories;
|
|
|
|
public interface IUserRepository
|
|
{
|
|
Task<ICollection<AppUser>> GetAllUsersAsync();
|
|
Task<ICollection<AppUser>> GetAllUsersToPayoutAsync(MonthRange range);
|
|
Task<AppUser> FindUserByEmployeeIdAsync(string employeeId);
|
|
Task<AppUser> FindUserByAdEmailAsync(string adEmail);
|
|
Task<AppUser> FindActiveUserByEmployeeIdAsync(string employeeId);
|
|
Task<AppUser> FindActiveUserByAdEmailAsync(string adEmail);
|
|
Task<AppUser> FindUserAsync(string employeeId, string adEmail);
|
|
Task<ICollection<AppUser>> FindUsersByHomeDepartmentsAsync(List<string> homeDepartments);
|
|
Task<ICollection<AppUser>> FindUsersByBaseRolesAsync(List<string> baseRoles);
|
|
Task<AppUser> SaveUserAsync(AppUser newAppUser);
|
|
Task<ICollection<AppUser>> SaveUserRangeAsync(List<AppUser> newUsers);
|
|
Task<ICollection<AppUser>> SearchUsersAsync(UserSearchRequest userSearchRequest);
|
|
Task<IReadOnlyCollection<UserSummary>> GetAllUserSummariesAsync();
|
|
IReadOnlyCollection<UserSummary> GetTerminatedUsersAsync(MonthRange monthRange);
|
|
}
|