Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

no signal listener to register

activeForObject(self, instance, context)

...

instance.__class__ == CCPD

...

and context

...

IN (create,update

...

condition = if instance.contribution_plan.calculation_rule_id = 0e1b6dd4-04a0-4ee6-ac47-2a99cfa5e9a8

calculate(instance, *args)

...

) and self.checkCalculation(instance)
checkCalculation(self, instance)

class= class of instance

match = False

if class == ContributionPlan

match =self.UUID == instance.calculation

else if class == PH insuree

match = checkCalculation(instance.cpb)

else if class == ContractDetails:

match =checkCalculation(instance.cpb)

else if class == ContractContributionPlanDetails

match =checkCalculation(instance.cp)

else if class == ContributionPlanBundle:

for cp in instance.cp

if checkCalculation(cp)

match = True

break

}

calculate(instance)

if instance.__class__ == ContractContributionPlanDetails

rate = instance.contribution_plan.json_ext.rate

income = instance.contract_details.json_ext.income

CCPD.value = income * rate

return CCPD.value

else Return False