Skip to content

Commit c9b5c7b

Browse files
JanJan
andauthored
CM-838: adjust backend to filter benefit consumption by payment cycle (#48)
Co-authored-by: Jan <[email protected]>
1 parent c34dc67 commit c9b5c7b

File tree

2 files changed

+12
-1
lines changed

2 files changed

+12
-1
lines changed

payroll/schema.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -94,13 +94,15 @@ class Query(graphene.ObjectType):
9494
client_mutation_id=graphene.String(),
9595
benefitPlanName=graphene.String(),
9696
benefitPlanUuid=graphene.String(),
97+
paymentCycleUuid=graphene.String(),
9798
)
9899

99100
benefits_summary = graphene.Field(
100101
BenefitsSummaryGQLType,
101102
individualId=graphene.String(),
102103
payrollId=graphene.String(),
103104
benefitPlanUuid=graphene.String(),
105+
paymentCycleUuid=graphene.String(),
104106
)
105107

106108
def resolve_bill_by_payroll(self, info, **kwargs):
@@ -195,6 +197,10 @@ def resolve_payroll_benefit_consumption(self, info, **kwargs):
195197
if benefit_plan_uuid:
196198
filters.append(Q(payroll__payment_plan__benefit_plan_id=benefit_plan_uuid))
197199

200+
payment_cycle_uuid = kwargs.get("paymentCycleUuid")
201+
if payment_cycle_uuid:
202+
filters.append(Q(payroll__payment_cycle_id=payment_cycle_uuid))
203+
198204
query = PayrollBenefitConsumption.objects.filter(*filters)
199205
return gql_optimizer.query(query, info)
200206

@@ -232,6 +238,7 @@ def resolve_benefits_summary(self, info, **kwargs):
232238
individual_id = kwargs.get("individualId", None)
233239
payroll_id = kwargs.get("payrollId", None)
234240
benefit_plan_uuid = kwargs.get("benefitPlanUuid", None)
241+
payment_cycle_uuid = kwargs.get("paymentCycleUuid", None)
235242

236243
if individual_id:
237244
filters.append(Q(individual__id=individual_id))
@@ -242,6 +249,9 @@ def resolve_benefits_summary(self, info, **kwargs):
242249
if benefit_plan_uuid:
243250
filters.append(Q(payrollbenefitconsumption__payroll__payment_plan__benefit_plan_id=benefit_plan_uuid))
244251

252+
if payment_cycle_uuid:
253+
filters.append(Q(payrollbenefitconsumption__payroll__payment_cycle_id=payment_cycle_uuid))
254+
245255
amount_received = BenefitConsumption.objects.filter(
246256
*filters,
247257
is_deleted=False,

setup.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,8 @@
2626
'djangorestframework',
2727
'openimis-be-core',
2828
'openimis-be-location',
29-
'openimis-be-invoice'
29+
'openimis-be-invoice',
30+
'openimis-be-payment_cycle',
3031
],
3132
classifiers=[
3233
'Environment :: Web Environment',

0 commit comments

Comments
 (0)