Updates for dynamic ruleset choices.
This commit is contained in:
45
electron/decoder/constants.js
Normal file
45
electron/decoder/constants.js
Normal file
@@ -0,0 +1,45 @@
|
||||
const moment = require("moment");
|
||||
|
||||
const DateFormat = "MM/DD/yyyy";
|
||||
const RuleSets = [
|
||||
{
|
||||
title: "V1",
|
||||
range: [moment("2010-01-01"), moment("2023-04-01")],
|
||||
},
|
||||
{
|
||||
title: "V2",
|
||||
range: [moment("2023-04-01"), moment("2040-01-01")],
|
||||
},
|
||||
];
|
||||
|
||||
function ChangeOfRuleSet({
|
||||
prevDateMoment = moment(),
|
||||
newDateMoment = moment(),
|
||||
}) {
|
||||
const prevRuleSet = RuleSets.find(
|
||||
(r) =>
|
||||
prevDateMoment.isSameOrAfter(r.range[0]) &&
|
||||
prevDateMoment.isSameOrBefore(r.range[1])
|
||||
);
|
||||
|
||||
const newRuleSet = RuleSets.find(
|
||||
(r) =>
|
||||
newDateMoment.isSameOrAfter(r.range[0]) &&
|
||||
newDateMoment.isSameOrBefore(r.range[1])
|
||||
);
|
||||
|
||||
return prevRuleSet?.title !== newRuleSet?.title;
|
||||
}
|
||||
|
||||
function WhichRulesetToApply(close_date) {
|
||||
const DateMoment = moment(close_date);
|
||||
const newRuleSet = RuleSets.find(
|
||||
(r) =>
|
||||
DateMoment.isSameOrAfter(r.range[0]) &&
|
||||
DateMoment.isSameOrBefore(r.range[1])
|
||||
);
|
||||
console.log("Using ruleset:", newRuleSet);
|
||||
|
||||
return newRuleSet?.title;
|
||||
}
|
||||
exports.WhichRulesetToApply = WhichRulesetToApply;
|
||||
Reference in New Issue
Block a user