using FrontOffice.BFF.WebApi.Common.Services;
using FrontOffice.BFF.Application.CommissionCQ.Queries.GetMyCommissionPayouts;
using FrontOffice.BFF.Application.CommissionCQ.Queries.GetMyWeeklyBalances;
using FrontOffice.BFF.Application.CommissionCQ.Queries.GetWeekDefinitions;
using FrontOffice.BFF.Commission.Protobuf.Protos.Commission;
namespace FrontOffice.BFF.WebApi.Services;
///
/// سرویس کمیسیون - برای کاربران FrontOffice
///
public class CommissionService : CommissionContract.CommissionContractBase
{
private readonly IDispatchRequestToCQRS _dispatchRequestToCQRS;
public CommissionService(IDispatchRequestToCQRS dispatchRequestToCQRS)
{
_dispatchRequestToCQRS = dispatchRequestToCQRS;
}
///
/// دریافت لیست پرداختهای کمیسیون کاربر
///
public override async Task GetMyCommissionPayouts(GetMyCommissionPayoutsRequest request, ServerCallContext context)
{
return await _dispatchRequestToCQRS.Handle(request, context);
}
///
/// دریافت لیست بالانسهای هفتگی کاربر
///
public override async Task GetMyWeeklyBalances(GetMyWeeklyBalancesRequest request, ServerCallContext context)
{
return await _dispatchRequestToCQRS.Handle(request, context);
}
///
/// دریافت لیست هفتهها برای dropdown
///
public override async Task GetWeekDefinitions(GetWeekDefinitionsRequest request, ServerCallContext context)
{
return await _dispatchRequestToCQRS.Handle(request, context);
}
}