feat(commission): add per-package filtering to commission & balance queries
- Proto: add package_id filter to 4 request messages, package_id/package_title to 4 response models - Queries: add PackageId filter to GetUserWeeklyBalances, GetUserCommissionPayouts, GetMyCommissionPayouts, GetMyWeeklyBalances - Handlers: include Package navigation, filter by PackageId, map PackageId/PackageTitle - DTOs: add PackageId + PackageTitle to all response models - Mappings: update CommissionProfile with PackageId/PackageTitle for all admin+customer mappings - NuGet: bump proto version to 0.0.187
This commit is contained in:
@@ -68,7 +68,9 @@ public class CommissionProfile : IRegister
|
||||
.Map(dest => dest.WithdrawnAt, src => src.WithdrawnAt.HasValue
|
||||
? Timestamp.FromDateTime(src.WithdrawnAt.Value.ToUniversalTime())
|
||||
: null)
|
||||
.Map(dest => dest.Created, src => Timestamp.FromDateTimeOffset(src.Created));
|
||||
.Map(dest => dest.Created, src => Timestamp.FromDateTimeOffset(src.Created))
|
||||
.Map(dest => dest.PackageId, src => src.PackageId)
|
||||
.Map(dest => dest.PackageTitle, src => src.PackageTitle);
|
||||
|
||||
// GetWeekDefinitions Request Mapping
|
||||
config.NewConfig<GetWeekDefinitionsRequest, GetWeekDefinitionsQuery>()
|
||||
@@ -127,7 +129,9 @@ public class CommissionProfile : IRegister
|
||||
? Timestamp.FromDateTime(DateTime.SpecifyKind(src.CalculatedAt.Value, DateTimeKind.Utc))
|
||||
: null)
|
||||
.Map(dest => dest.IsExpired, src => src.IsExpired)
|
||||
.Map(dest => dest.Created, src => Timestamp.FromDateTimeOffset(src.Created));
|
||||
.Map(dest => dest.Created, src => Timestamp.FromDateTimeOffset(src.Created))
|
||||
.Map(dest => dest.PackageId, src => src.PackageId)
|
||||
.Map(dest => dest.PackageTitle, src => src.PackageTitle);
|
||||
|
||||
// GetMyCommissionPayouts Request Mapping
|
||||
config.NewConfig<GetMyCommissionPayoutsRequest, GetMyCommissionPayoutsQuery>()
|
||||
@@ -135,6 +139,7 @@ public class CommissionProfile : IRegister
|
||||
? (CommissionPayoutStatus?)src.Status.Value
|
||||
: null)
|
||||
.Map(dest => dest.WeekDefinitionId, src => src.WeekDefinitionId != null ? src.WeekDefinitionId.Value : (long?)null)
|
||||
.Map(dest => dest.PackageId, src => src.PackageId != null ? src.PackageId.Value : (long?)null)
|
||||
.Map(dest => dest.PaginationState, src => new PaginationState
|
||||
{
|
||||
PageNumber = src.PageNumber > 0 ? src.PageNumber : 1,
|
||||
@@ -160,12 +165,15 @@ public class CommissionProfile : IRegister
|
||||
.Map(dest => dest.CalculatedDate, src => src.CalculatedDate.HasValue
|
||||
? Timestamp.FromDateTime(src.CalculatedDate.Value.ToUniversalTime())
|
||||
: null)
|
||||
.Map(dest => dest.DatePersian, src => src.DatePersian);
|
||||
.Map(dest => dest.DatePersian, src => src.DatePersian)
|
||||
.Map(dest => dest.PackageId, src => src.PackageId)
|
||||
.Map(dest => dest.PackageTitle, src => src.PackageTitle);
|
||||
|
||||
// GetMyWeeklyBalances Request Mapping
|
||||
config.NewConfig<GetMyWeeklyBalancesRequest, GetMyWeeklyBalancesQuery>()
|
||||
.Map(dest => dest.WeekDefinitionId, src => src.WeekDefinitionId != null ? src.WeekDefinitionId.Value : (long?)null)
|
||||
.Map(dest => dest.OnlyActive, src => src.OnlyActive)
|
||||
.Map(dest => dest.PackageId, src => src.PackageId != null ? src.PackageId.Value : (long?)null)
|
||||
.Map(dest => dest.PaginationState, src => new PaginationState
|
||||
{
|
||||
PageNumber = src.PageNumber > 0 ? src.PageNumber : 1,
|
||||
@@ -199,6 +207,8 @@ public class CommissionProfile : IRegister
|
||||
.Map(dest => dest.IsExpired, src => src.IsExpired)
|
||||
.Map(dest => dest.CalculatedAt, src => src.CalculatedAt.HasValue
|
||||
? Timestamp.FromDateTime(DateTime.SpecifyKind(src.CalculatedAt.Value, DateTimeKind.Utc))
|
||||
: null);
|
||||
: null)
|
||||
.Map(dest => dest.PackageId, src => src.PackageId)
|
||||
.Map(dest => dest.PackageTitle, src => src.PackageTitle);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user