UNPKG

cicero-engine

Version:

Cicero Engine - Node.js VM based implementation of Accord Protcol Template Specification execution

35 lines (28 loc) 954 B
'use strict'; /*eslint-disable no-unused-vars*/ /*eslint-disable no-undef*/ /*eslint-disable no-var*/ /** * Execute the smart clause * @param {Context} context - the Accord context * @param {org.accordproject.volumediscount.VolumeDiscountRequest} context.request - the incoming request * @param {org.accordproject.volumediscount.VolumeDiscountResponse} context.response - the response * @AccordClauseLogic */ function execute(context) { logger.info(context); var req = context.request; var res = context.response; var data = context.data; // decision table var netAnnualChargeVolume = req.netAnnualChargeVolume; if (netAnnualChargeVolume < data.firstVolume) { res.discountRate = data.firstRate; } else if (netAnnualChargeVolume < data.secondVolume) { res.discountRate = data.secondRate; } else { res.discountRate = data.thirdRate; } } /*eslint-enable no-unused-vars*/ /*eslint-enable no-undef*/