This commit is contained in:
2022-03-03 20:25:33 +00:00
parent 11f9aa87c2
commit 0ba68a6f33
11 changed files with 153 additions and 16 deletions

View File

@@ -21,6 +21,8 @@ export default {
singleOnly: false,
settings: {
customTitle: null,
timeSpan: "*thisyear*",
interval: "month",
wostatus: null,
wotags: [],
wotagsany: true,

View File

@@ -304,7 +304,6 @@ async function initWidget(vm) {
//
async function fetchTranslatedText() {
await window.$gz.translation.cacheTranslations([
"Filter",
"DateRangeYesterday",
"DateRangeToday",
"DateRangeLastWeek",

View File

@@ -306,7 +306,6 @@ async function initWidget(vm) {
//
async function fetchTranslatedText() {
await window.$gz.translation.cacheTranslations([
"Filter",
"DateRangeYesterday",
"DateRangeToday",
"DateRangeLastWeek",

View File

@@ -266,7 +266,6 @@ async function initWidget(vm) {
//
async function fetchTranslatedText() {
await window.$gz.translation.cacheTranslations([
"Filter",
"DateRangeYesterday",
"DateRangeToday",
"DateRangeLastWeek",

View File

@@ -269,7 +269,6 @@ async function initWidget(vm) {
//
async function fetchTranslatedText() {
await window.$gz.translation.cacheTranslations([
"Filter",
"DateRangeYesterday",
"DateRangeToday",
"DateRangeLastWeek",

View File

@@ -249,7 +249,6 @@ async function initWidget(vm) {
//
async function fetchTranslatedText() {
await window.$gz.translation.cacheTranslations([
"Filter",
"DateRangeYesterday",
"DateRangeToday",
"DateRangeLastWeek",

View File

@@ -266,7 +266,6 @@ async function initWidget(vm) {
//
async function fetchTranslatedText() {
await window.$gz.translation.cacheTranslations([
"Filter",
"DateRangeYesterday",
"DateRangeToday",
"DateRangeLastWeek",

View File

@@ -269,7 +269,6 @@ async function initWidget(vm) {
//
async function fetchTranslatedText() {
await window.$gz.translation.cacheTranslations([
"Filter",
"DateRangeYesterday",
"DateRangeToday",
"DateRangeLastWeek",

View File

@@ -244,7 +244,6 @@ async function initWidget(vm) {
//
async function fetchTranslatedText() {
await window.$gz.translation.cacheTranslations([
"Filter",
"DateRangeYesterday",
"DateRangeToday",
"DateRangeLastWeek",

View File

@@ -223,6 +223,7 @@ export default {
name: "---",
color: "#eeeeee"
});
console.log(this.meta);
this.obj = res.data;
}
} catch (error) {
@@ -246,7 +247,6 @@ async function initWidget(vm) {
//
async function fetchTranslatedText() {
await window.$gz.translation.cacheTranslations([
"Filter",
"DateRangeYesterday",
"DateRangeToday",
"DateRangeLastWeek",

View File

@@ -22,8 +22,13 @@
<v-list-item :key="i" two-line :to="'/svc-workorders/' + item.id">
<v-list-item-content>
<v-list-item-title
><span class="text-h6 primary--text">{{ item.serial }}</span
><span class="ml-4">{{ $ay.dt(item.servicedate) }}</span>
><span class="text-h6 primary--text"
>{{ item.serial }}
<v-icon :color="statusColor(item.laststatusid)"
>$ayiFlag</v-icon
></span
>
<span class="ml-4">{{ $ay.dt(item.servicedate) }}</span>
<span class="ml-4">{{ item.name }}</span></v-list-item-title
>
<v-list-item-subtitle>{{ item.notes }}</v-list-item-subtitle>
@@ -72,19 +77,35 @@
class="ml-2"
>$ayiLock</v-icon
>
<!-- <v-icon
<v-icon
v-if="data.item.completed"
color="disabled"
class="ml-1"
small
>$ayiCheckCircle</v-icon
> -->
>
</v-list-item-title>
</v-list-item-content>
<v-list-item-action> </v-list-item-action>
</template>
</v-autocomplete>
<v-select
v-model="localSettings.timeSpan"
class="mt-4"
:items="selectLists.dateFilterTokens"
item-text="name"
item-value="id"
:label="$ay.t('TimeSpan')"
></v-select>
<v-select
v-model="localSettings.interval"
class="mt-4"
:items="selectLists.units"
item-text="name"
item-value="id"
:label="$ay.t('Interval')"
></v-select>
<gz-tag-picker
v-model="localSettings.wotags"
class="mt-4"
@@ -183,6 +204,12 @@ export default {
await this.getDataFromApi();
},
methods: {
statusColor: function(statusId) {
let ret = this.selectLists.wostatus.filter(z => z.id == statusId);
if (ret && ret.length > 0) {
return ret[0].color;
}
},
showContext: function() {
this.localSettings = window.$gz.util.deepCopySkip(this.settings);
this.context = true;
@@ -190,6 +217,8 @@ export default {
updateSettings: function() {
//copy settings from local to parent settings, need to do it this way or get error about mutating prop directly which is vexing and has no easy solution seemingly
this.settings.customTitle = this.localSettings.customTitle;
this.settings.timeSpan = this.localSettings.timeSpan;
this.settings.interval = this.localSettings.interval;
this.settings.wostatus = this.localSettings.wostatus;
this.settings.wotags = this.localSettings.wotags;
this.settings.wotagsany = this.localSettings.wotagsany;
@@ -207,6 +236,8 @@ export default {
const res = await window.$gz.api.post("kpi", {
KPIName: "WorkOrderByStatusList",
criteria: {
timeSpan: this.settings.timeSpan,
interval: this.settings.interval,
wostatus: this.settings.wostatus,
wotags: this.settings.wotags,
wotagsany: this.settings.wotagsany,
@@ -233,7 +264,7 @@ export default {
async function initWidget(vm) {
await fetchTranslatedText();
await fetchWorkorderStatusList(vm);
//populateSelectionLists(vm);
populateSelectionLists(vm);
}
//////////////////////////////////////////////////////////
@@ -242,6 +273,45 @@ async function initWidget(vm) {
//
async function fetchTranslatedText() {
await window.$gz.translation.cacheTranslations([
"DateRangeYesterday",
"DateRangeToday",
"DateRangeLastWeek",
"DateRangeThisWeek",
"DateRangeNextWeek",
"DateRangeLastMonth",
"DateRangeThisMonth",
"DateRangeNextMonth",
"DateRange14DayWindow",
"DateRangePast",
"DateRangeLastYear",
"DateRangeThisYear",
"DateRangeInTheLastThreeMonths",
"DateRangeInTheLastSixMonths",
"DateRangePastYear",
"DateRangePast90Days",
"DateRangePast30Days",
"DateRangePast7Days",
"DateRangePast24Hours",
"DateRangePast6Hours",
"DateRangeJanuary",
"DateRangeFebruary",
"DateRangeMarch",
"DateRangeApril",
"DateRangeMay",
"DateRangeJune",
"DateRangeJuly",
"DateRangeAugust",
"DateRangeSeptember",
"DateRangeOctober",
"DateRangeNovember",
"DateRangeDecember",
"DateRangePreviousYearThisMonth",
"DateRangePreviousYearLastMonth",
"DateRangePreviousYearNextMonth",
"TimeSpanDays",
"TimeSpanMonths",
"TimeSpan",
"Interval",
"Name",
"WorkOrder",
"WorkOrderItem",
@@ -258,8 +328,81 @@ async function fetchWorkorderStatusList(vm) {
vm.formState.serverError = res.error;
window.$gz.form.setErrorBoxErrors(vm);
} else {
vm.selectLists.wostatus = res.data.all.filter(z => z.completed == false); //TODO: weed out closed status
vm.selectLists.wostatus.unshift(window.$gz.form.getNoSelectionItem(true));
vm.selectLists.wostatus = res.data.all;
let noStatus = window.$gz.form.getNoSelectionItem(true);
noStatus.color = "#eeeeee";
noStatus.locked = false;
noStatus.completed = false;
vm.selectLists.wostatus.unshift(noStatus);
}
}
/////////////////////////////////
//
//
function populateSelectionLists(vm) {
vm.selectLists.dateFilterTokens.push(
...[
// { name: vm.$ay.t("DateRangeYesterday"), id: "*yesterday*" },
// { name: vm.$ay.t("DateRangeToday"), id: "*today*" },
{ name: vm.$ay.t("DateRangeThisYear"), id: "*thisyear*" },
{ name: vm.$ay.t("DateRangeThisMonth"), id: "*thismonth*" },
{ name: vm.$ay.t("DateRangeThisWeek"), id: "*thisweek*" },
{ name: vm.$ay.t("DateRangeLastYear"), id: "*lastyear*" }, //prior year from jan to dec
{ name: vm.$ay.t("DateRangeLastMonth"), id: "*lastmonth*" },
{ name: vm.$ay.t("DateRangeLastWeek"), id: "*lastweek*" },
//-------------------------- rando ones -------------------
{ name: vm.$ay.t("DateRange14DayWindow"), id: "*14daywindow*" },
{ name: vm.$ay.t("DateRangePast"), id: "*past*" },
{
name: vm.$ay.t("DateRangeInTheLastThreeMonths"),
id: "*last3months*"
},
{
name: vm.$ay.t("DateRangeInTheLastSixMonths"),
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("DateRangePast7Days"), id: "*past7days*" },
// { name: vm.$ay.t("DateRangePast24Hours"), id: "*past24hours*" },
// { name: vm.$ay.t("DateRangePast6Hours"), id: "*past6hours*" },
{ 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*"
}
]
);
vm.selectLists.units.push(
...[
{ name: vm.$ay.t("TimeSpanDays"), id: "day" },
{
name: vm.$ay.t("TimeSpanMonths"),
id: "month"
}
]
);
}
</script>