37 lines
2.3 KiB
C#
37 lines
2.3 KiB
C#
using LCU.Library.Internal.IncentiveApiModels.Common;
|
|
using LCU.Library.Internal.IncentiveApiModels.Entities;
|
|
using LCU.Library.Internal.IncentiveApiModels.Enums;
|
|
using System.Collections.Generic;
|
|
using System.Threading.Tasks;
|
|
|
|
namespace LCU.API.Internal.Operations.IncentiveApiLib.Repositories;
|
|
|
|
public interface IActivityRepository
|
|
{
|
|
Task<int> SaveActivityAsync(Activity activity);
|
|
Task SaveActivityRangeAsync(List<Activity> activities);
|
|
Task<IReadOnlyCollection<Activity>> GetActivitiesAsync();
|
|
Task<PagedResult<Activity>> GetActivitiesAsync(int page, int limit);
|
|
Task<PagedResult<Activity>> GetPagedFilteredActivities(ActivityFilter filter);
|
|
Task<Activity> GetActivityById(int activityId);
|
|
Task<ICollection<Activity>> FindEmployeeActivityByMonthRange(AppUser appUser, MonthRange monthRange);
|
|
Task<ICollection<Activity>> FindDepartmentActivityByMonthRange(int departmentId, MonthRange monthRange);
|
|
Task<Activity> GetActivityIncludingPayouts(int activityId);
|
|
Task<IReadOnlyCollection<Activity>> FindUnmatchedReferrals();
|
|
Task<IReadOnlyCollection<Activity>> FindPendingEStatementsReferrals();
|
|
Task<Activity> FindUnmatchedSaleForReferral(Activity referral);
|
|
EStatementDeliveryMethod FindDeliveryMethodForEStatement(Activity referral, List<EStatementDeliveryMethod> eStatementActivities);
|
|
Task<Activity> FindDuplicateSaleAsync(Activity activity);
|
|
Task<Activity> FindDuplicateReferralAsync(Activity activity);
|
|
Task<Activity> FindActivityForStateUpdate(Activity activity);
|
|
Task<Activity> FindActivityForDetailUpdate(Activity activity);
|
|
public void UpdateActivityRangeAsync(List<Activity> activities);
|
|
Task<List<Activity>> GetActivitiesBySourceId(List<string> sourceId);
|
|
Task<List<Activity>> GetAllActivitiesWithPayoutsForEmployee(string employeeId);
|
|
Task<Activity> FindDuplicateReferralBySourceIdAsync(Activity activity);
|
|
Task<List<Activity>> FindById(List<int> ids, bool withDetail = true, bool withTracking = true);
|
|
Task<List<Activity>> FindLatestBySourceId(List<string> sourceIds, bool withDetail = true, bool withTracking = true);
|
|
Task<List<Activity>> FindGapInsuranceEligible(MonthRange monthRange, bool withTracking = true);
|
|
Task<List<Activity>> GetFilteredActivities(MonthRange monthRange, Product product, ActivityState activityState, bool withTracking = true);
|
|
}
|