From f01345974a3e7f40d25f18690b98476b8c29de42 Mon Sep 17 00:00:00 2001 From: John Cardinal Date: Wed, 5 Aug 2020 23:40:30 +0000 Subject: [PATCH] --- ayanova/devdocs/todo.txt | 1 + .../api/relative-date-filter-calculator.js | 270 +++++++++++++++++- ayanova/src/views/ay-data-list-view.vue | 60 ++-- 3 files changed, 297 insertions(+), 34 deletions(-) diff --git a/ayanova/devdocs/todo.txt b/ayanova/devdocs/todo.txt index a52b7cb7..28fb216a 100644 --- a/ayanova/devdocs/todo.txt +++ b/ayanova/devdocs/todo.txt @@ -10,6 +10,7 @@ todo: found more presets in cases or is it a feature of some kind on it's own This one: https://rockfish.ayanova.com/default.htm#!/rfcaseEdit/1441 +todo: Can I do a backup when in ops mode? todo: router should check rights on each route shouldn't it? - or should the form check and nav backwards if they don't have the rights diff --git a/ayanova/src/api/relative-date-filter-calculator.js b/ayanova/src/api/relative-date-filter-calculator.js index 3d889f77..acaea5ac 100644 --- a/ayanova/src/api/relative-date-filter-calculator.js +++ b/ayanova/src/api/relative-date-filter-calculator.js @@ -367,6 +367,234 @@ export default { //move after back a second for boundary dtAfter = dtAfter.plus({ seconds: -1 }); + //set return values from calculated values + ret.after = dtAfter.toUTC().toString(); + ret.before = dtBefore.toUTC().toString(); + break; + /////////////////////////////////////////////////////////////////////////// + case "*january*": + //This year specific month (month is 1 based) + dtAfter = window.$gz.DateTime.local(dtNow.year, 1, 1); + + //Add one month to dtAfter to get end date + dtBefore = dtAfter.plus({ months: 1 }); + + //move after back a second for boundary + dtAfter = dtAfter.plus({ seconds: -1 }); + + //set return values from calculated values + ret.after = dtAfter.toUTC().toString(); + ret.before = dtBefore.toUTC().toString(); + break; + + case "*february*": + //This year specific month (month is 1 based) + dtAfter = window.$gz.DateTime.local(dtNow.year, 2, 1); + + //Add one month to dtAfter to get end date + dtBefore = dtAfter.plus({ months: 1 }); + + //move after back a second for boundary + dtAfter = dtAfter.plus({ seconds: -1 }); + + //set return values from calculated values + ret.after = dtAfter.toUTC().toString(); + ret.before = dtBefore.toUTC().toString(); + break; + + case "*march*": + //This year specific month (month is 1 based) + dtAfter = window.$gz.DateTime.local(dtNow.year, 3, 1); + + //Add one month to dtAfter to get end date + dtBefore = dtAfter.plus({ months: 1 }); + + //move after back a second for boundary + dtAfter = dtAfter.plus({ seconds: -1 }); + + //set return values from calculated values + ret.after = dtAfter.toUTC().toString(); + ret.before = dtBefore.toUTC().toString(); + break; + + case "*april*": + //This year specific month (month is 1 based) + dtAfter = window.$gz.DateTime.local(dtNow.year, 4, 1); + + //Add one month to dtAfter to get end date + dtBefore = dtAfter.plus({ months: 1 }); + + //move after back a second for boundary + dtAfter = dtAfter.plus({ seconds: -1 }); + + //set return values from calculated values + ret.after = dtAfter.toUTC().toString(); + ret.before = dtBefore.toUTC().toString(); + break; + + case "*may*": + //This year specific month (month is 1 based) + dtAfter = window.$gz.DateTime.local(dtNow.year, 5, 1); + + //Add one month to dtAfter to get end date + dtBefore = dtAfter.plus({ months: 1 }); + + //move after back a second for boundary + dtAfter = dtAfter.plus({ seconds: -1 }); + + //set return values from calculated values + ret.after = dtAfter.toUTC().toString(); + ret.before = dtBefore.toUTC().toString(); + break; + + case "*june*": + //This year specific month (month is 1 based) + dtAfter = window.$gz.DateTime.local(dtNow.year, 6, 1); + + //Add one month to dtAfter to get end date + dtBefore = dtAfter.plus({ months: 1 }); + + //move after back a second for boundary + dtAfter = dtAfter.plus({ seconds: -1 }); + + //set return values from calculated values + ret.after = dtAfter.toUTC().toString(); + ret.before = dtBefore.toUTC().toString(); + break; + + case "*july*": + //This year specific month (month is 1 based) + dtAfter = window.$gz.DateTime.local(dtNow.year, 7, 1); + + //Add one month to dtAfter to get end date + dtBefore = dtAfter.plus({ months: 1 }); + + //move after back a second for boundary + dtAfter = dtAfter.plus({ seconds: -1 }); + + //set return values from calculated values + ret.after = dtAfter.toUTC().toString(); + ret.before = dtBefore.toUTC().toString(); + break; + + case "*august*": + //This year specific month (month is 1 based) + dtAfter = window.$gz.DateTime.local(dtNow.year, 8, 1); + + //Add one month to dtAfter to get end date + dtBefore = dtAfter.plus({ months: 1 }); + + //move after back a second for boundary + dtAfter = dtAfter.plus({ seconds: -1 }); + + //set return values from calculated values + ret.after = dtAfter.toUTC().toString(); + ret.before = dtBefore.toUTC().toString(); + break; + + case "*september*": + //This year specific month (month is 1 based) + dtAfter = window.$gz.DateTime.local(dtNow.year, 9, 1); + + //Add one month to dtAfter to get end date + dtBefore = dtAfter.plus({ months: 1 }); + + //move after back a second for boundary + dtAfter = dtAfter.plus({ seconds: -1 }); + + //set return values from calculated values + ret.after = dtAfter.toUTC().toString(); + ret.before = dtBefore.toUTC().toString(); + break; + + case "*october*": + //This year specific month (month is 1 based) + dtAfter = window.$gz.DateTime.local(dtNow.year, 10, 1); + + //Add one month to dtAfter to get end date + dtBefore = dtAfter.plus({ months: 1 }); + + //move after back a second for boundary + dtAfter = dtAfter.plus({ seconds: -1 }); + + //set return values from calculated values + ret.after = dtAfter.toUTC().toString(); + ret.before = dtBefore.toUTC().toString(); + break; + + case "*november*": + //This year specific month (month is 1 based) + dtAfter = window.$gz.DateTime.local(dtNow.year, 11, 1); + + //Add one month to dtAfter to get end date + dtBefore = dtAfter.plus({ months: 1 }); + + //move after back a second for boundary + dtAfter = dtAfter.plus({ seconds: -1 }); + + //set return values from calculated values + ret.after = dtAfter.toUTC().toString(); + ret.before = dtBefore.toUTC().toString(); + break; + + case "*december*": + //This year specific month (month is 1 based) + dtAfter = window.$gz.DateTime.local(dtNow.year, 12, 1); + + //Add one month to dtAfter to get end date + dtBefore = dtAfter.plus({ months: 1 }); + + //move after back a second for boundary + dtAfter = dtAfter.plus({ seconds: -1 }); + + //set return values from calculated values + ret.after = dtAfter.toUTC().toString(); + ret.before = dtBefore.toUTC().toString(); + break; + + case "*lastyearlastmonth*": + //start with the first day of this month + dtAfter = window.$gz.DateTime.local(dtNow.year, dtNow.month, 1); + //subtract a Year and a Month + dtAfter = dtAfter.plus({ years: -1, months: -1 }); + //Add one month to dtAfter to get end date + dtBefore = dtAfter.plus({ months: 1 }); + //move after back a second for boundary + dtAfter = dtAfter.plus({ seconds: -1 }); + + //set return values from calculated values + ret.after = dtAfter.toUTC().toString(); + ret.before = dtBefore.toUTC().toString(); + break; + + case "*lastyearthismonth*": + //start with the first day of this month + dtAfter = window.$gz.DateTime.local(dtNow.year, dtNow.month, 1); + //subtract a Year + dtAfter = dtAfter.plus({ years: -1 }); + //Add one month to dtAfter to get end date + dtBefore = dtAfter.plus({ months: 1 }); + //move after back a second for boundary + dtAfter = dtAfter.plus({ seconds: -1 }); + + //set return values from calculated values + ret.after = dtAfter.toUTC().toString(); + ret.before = dtBefore.toUTC().toString(); + break; + + case "*lastyearnextmonth*": + //start with the first day of this month + dtAfter = window.$gz.DateTime.local(dtNow.year, dtNow.month, 1); + + //subtract a year, add a month + dtAfter = dtAfter.plus({ years: -1, months: 1 }); + + //Add one month to dtAfter to get end date + dtBefore = dtAfter.plus({ months: 1 }); + + //move after back a second for boundary + dtAfter = dtAfter.plus({ seconds: -1 }); + //set return values from calculated values ret.after = dtAfter.toUTC().toString(); ret.before = dtBefore.toUTC().toString(); @@ -383,21 +611,33 @@ export default { } /* - "DateRangeJanuary": "January", - "DateRangeFebruary": "February", - "DateRangeMarch": "March", - "DateRangeApril": "April", - "DateRangeMay": "May", - "DateRangeJune": "June", - "DateRangeJuly": "July", - "DateRangeAugust": "August", - "DateRangeSeptember": "September", - "DateRangeOctober": "October", - "DateRangeNovember": "November", - "DateRangeDecember": "December", - "DateRangePreviousYearThisMonth":"Previous year - this month", - "DateRangePreviousYearLastMonth":"Previous year - last month", - "DateRangePreviousYearNextMonth":"Previous year - next month", */ + + { name: vm.$ay.t("DateRangeJanuary"), id: "*january*" }, + { name: vm.$ay.t("DateRangeFebruary"), id: "*february*" }, + { name: vm.$ay.t("DateRangeMarch"), id: "*march*" }, + { name: vm.$ay.t("DateRangeApril"), id: "*april*" }, + { name: vm.$ay.t("DateRangeMay"), id: "*may*" }, + { name: vm.$ay.t("DateRangeJune"), id: "*june*" }, + { name: vm.$ay.t("DateRangeJuly"), id: "*july*" }, + { name: vm.$ay.t("DateRangeAugust"), id: "*august*" }, + { name: vm.$ay.t("DateRangeSeptember"), id: "*september*" }, + { name: vm.$ay.t("DateRangeOctober"), id: "*october*" }, + { name: vm.$ay.t("DateRangeNovember"), id: "*november*" }, + { name: vm.$ay.t("DateRangeDecember"), id: "*december*" }, + { + name: vm.$ay.t("DateRangePreviousYearThisMonth"), + id: "*lastyearthismonth*" + }, + { + name: vm.$ay.t("DateRangePreviousYearLastMonth"), + id: "*lastyearlastmonth*" + }, + { + name: vm.$ay.t("DateRangePreviousYearNextMonth"), + id: "*lastyearnextmonth*" + } + + */ //new functions above here }; //LUXON MATH: https://moment.github.io/luxon/docs/manual/zones.html#math-across-dsts diff --git a/ayanova/src/views/ay-data-list-view.vue b/ayanova/src/views/ay-data-list-view.vue index d13758c4..447555cc 100644 --- a/ayanova/src/views/ay-data-list-view.vue +++ b/ayanova/src/views/ay-data-list-view.vue @@ -991,6 +991,21 @@ async function fetchTranslatedText(vm) { "DateRangePast90Days", "DateRangePast30Days", "DateRangePast24Hours", + "DateRangeJanuary", + "DateRangeFebruary", + "DateRangeMarch", + "DateRangeApril", + "DateRangeMay", + "DateRangeJune", + "DateRangeJuly", + "DateRangeAugust", + "DateRangeSeptember", + "DateRangeOctober", + "DateRangeNovember", + "DateRangeDecember", + "DateRangePreviousYearThisMonth", + "DateRangePreviousYearLastMonth", + "DateRangePreviousYearNextMonth", "True", "False", "Name" @@ -1020,23 +1035,6 @@ function populateSelectionLists(vm) { ] ); - -/* - "DateRangeJanuary": "January", - "DateRangeFebruary": "February", - "DateRangeMarch": "March", - "DateRangeApril": "April", - "DateRangeMay": "May", - "DateRangeJune": "June", - "DateRangeJuly": "July", - "DateRangeAugust": "August", - "DateRangeSeptember": "September", - "DateRangeOctober": "October", - "DateRangeNovember": "November", - "DateRangeDecember": "December", - "DateRangePreviousYearThisMonth":"Previous year - this month", - "DateRangePreviousYearLastMonth":"Previous year - last month", - "DateRangePreviousYearNextMonth":"Previous year - next month", */ vm.selectLists.dateFilterTokens.push( ...[ { name: "(" + vm.$ay.t("SelectItem") + ")", id: "*select*" }, //If select then use entry in date /time picker @@ -1063,10 +1061,34 @@ function populateSelectionLists(vm) { id: "*last6months*" }, { name: vm.$ay.t("DateRangePastYear"), id: "*pastyear*" }, //last 365 days - { name: vm.$ay.t("DateRangePast90Days"), id: "*past90days*" }, { name: vm.$ay.t("DateRangePast30Days"), id: "*past30days*" }, - { name: vm.$ay.t("DateRangePast24Hours"), id: "*past24hours*" } + { name: vm.$ay.t("DateRangePast24Hours"), id: "*past24hours*" }, + + { name: vm.$ay.t("DateRangeJanuary"), id: "*january*" }, + { name: vm.$ay.t("DateRangeFebruary"), id: "*february*" }, + { name: vm.$ay.t("DateRangeMarch"), id: "*march*" }, + { name: vm.$ay.t("DateRangeApril"), id: "*april*" }, + { name: vm.$ay.t("DateRangeMay"), id: "*may*" }, + { name: vm.$ay.t("DateRangeJune"), id: "*june*" }, + { name: vm.$ay.t("DateRangeJuly"), id: "*july*" }, + { name: vm.$ay.t("DateRangeAugust"), id: "*august*" }, + { name: vm.$ay.t("DateRangeSeptember"), id: "*september*" }, + { name: vm.$ay.t("DateRangeOctober"), id: "*october*" }, + { name: vm.$ay.t("DateRangeNovember"), id: "*november*" }, + { name: vm.$ay.t("DateRangeDecember"), id: "*december*" }, + { + name: vm.$ay.t("DateRangePreviousYearThisMonth"), + id: "*lastyearthismonth*" + }, + { + name: vm.$ay.t("DateRangePreviousYearLastMonth"), + id: "*lastyearlastmonth*" + }, + { + name: vm.$ay.t("DateRangePreviousYearNextMonth"), + id: "*lastyearnextmonth*" + } ] );