This commit is contained in:
2021-10-06 20:39:14 +00:00
parent 3c81e54710
commit 492007cc07
2 changed files with 55 additions and 26 deletions

View File

@@ -19,15 +19,9 @@
SVC-SCHEDULE OUTSTANDING ITEMS SVC-SCHEDULE OUTSTANDING ITEMS
Choose techs feature: User colors? Is this even going to be a thing or needed anymore??
Not in settings, separate feature Show filter icon opens tag picker (or persistent tag picker??) in v7 it was only in calendar so if not in calendar now then no need
tag picker surfaced all time in large views or in settings for narrow views
filters users by tags and shows them in alpha order by name
NO ability to set the order for this release but we could consider adding a field as a sorting field later
Tag selection is persistent and stored with the users temp settings so persistent by browser not saved to server
During settings form, fetchEvents should be disabled until after save as changing DOW is triggering fetch which can be slow in a loaded sched
See about including no tech items as sched should show them as unassigned or something it's built in for non matches but I could enable that anyway See about including no tech items as sched should show them as unassigned or something it's built in for non matches but I could enable that anyway
it was in v7 it was in v7
maybe always far right by default, but then people may not want it to take up space maybe always far right by default, but then people may not want it to take up space
@@ -37,8 +31,7 @@
Keep both Day view and Category views but make category the default drill into view when click on a date Keep both Day view and Category views but make category the default drill into view when click on a date
User colors? Is this even going to be a thing or needed anymore??
in v7 it was only in calendar so if not in calendar now then no need
need ability to drag to another tech in category view need ability to drag to another tech in category view

View File

@@ -3,31 +3,37 @@
<gz-error :error-box-message="formState.errorBoxMessage"></gz-error> <gz-error :error-box-message="formState.errorBoxMessage"></gz-error>
<!-- {{ categories }}<br /> <!-- {{ categories }}<br />
{{ events }} --> {{ events }} -->
<v-sheet height="64"> <v-sheet height="64">
<v-toolbar flat dense class="ml-n3"> <v-toolbar flat dense class="ml-n3">
<v-btn <v-btn
outlined text
:small="$vuetify.breakpoint.xs" :small="isXS"
:large="$vuetify.breakpoint.md" :large="issmAndUp"
class="xxmr-4" class="xxmr-4"
@click="setToday" @click="setToday"
> >
{{ $ay.t("DateRangeToday") }} {{ $ay.t("DateRangeToday") }}
</v-btn> </v-btn>
<v-btn fab text small @click="prev"> <v-btn fab text small @click="prev">
<v-icon small>$prev</v-icon> <v-icon :small="isXS">$prev</v-icon>
</v-btn> </v-btn>
<v-btn fab text small @click="next"> <v-btn fab text small @click="next">
<v-icon small>$next</v-icon> <v-icon :small="isXS">$next</v-icon>
</v-btn> </v-btn>
<v-toolbar-title v-if="$refs.calendar"> <v-toolbar-title v-if="$refs.calendar">
<v-btn small text @click="viewType = 'month'"> <v-btn
:small="isXS"
:large="issmAndUp"
text
@click="viewType = 'month'"
>
{{ $refs.calendar.title }}</v-btn {{ $refs.calendar.title }}</v-btn
> >
</v-toolbar-title> </v-toolbar-title>
<v-spacer v-if="!$vuetify.breakpoint.xs"></v-spacer> <v-spacer v-if="issmAndUp"></v-spacer>
<template v-if="!$vuetify.breakpoint.xs"> <template v-if="issmAndUp">
<gz-tag-picker <gz-tag-picker
class="mr-3" class="mr-3"
:place-holder="$ay.t('FilterUsers')" :place-holder="$ay.t('FilterUsers')"
@@ -39,13 +45,26 @@
@input="refresh" @input="refresh"
></gz-tag-picker> ></gz-tag-picker>
</template> </template>
<v-btn class="mr-3" fab text small @click="settingsDialog = true"> <v-btn
<v-icon small>$ayiCog</v-icon> class="mr-3"
fab
text
:small="isXS"
:large="issmAndUp"
@click="settingsDialog = true"
>
<v-icon :small="isXS" >$ayiCog</v-icon>
</v-btn> </v-btn>
<v-menu bottom right> <v-menu bottom right>
<template v-slot:activator="{ on, attrs }"> <template v-slot:activator="{ on, attrs }">
<v-btn small outlined v-bind="attrs" v-on="on"> <v-btn
:small="isXS"
:large="issmAndUp"
text
v-bind="attrs"
v-on="on"
>
<span>{{ typeToLabel() }}</span> <span>{{ typeToLabel() }}</span>
<v-icon right>$sort</v-icon> <v-icon right>$sort</v-icon>
</v-btn> </v-btn>
@@ -105,8 +124,15 @@
category-show-all category-show-all
:categories="categories" :categories="categories"
category-text="name" category-text="name"
category-for-invalid="UNKNOWN USER" category-for-invalid="????"
> >
<template v-slot:category="{ category }">
<div @click="openUserSchedule(category.id)" class="text-center">
<v-btn text class="text-none">{{ category.name }}</v-btn>
</div>
</template>
<!-- <div class="v-calendar-category__category">Clarabelle Turcotte - SubContractor</div> -->
<template v-slot:event="{ event, eventSummary }"> <template v-slot:event="{ event, eventSummary }">
<div class="v-event-draggable"> <div class="v-event-draggable">
<span <span
@@ -270,7 +296,7 @@
$ay.t("Open") $ay.t("Open")
}}</v-btn> }}</v-btn>
<v-spacer v-if="!$vuetify.breakpoint.xs"></v-spacer> <v-spacer v-if="issmAndUp"></v-spacer>
<v-btn color="primary" text @click="moreInfoDialog = false"> <v-btn color="primary" text @click="moreInfoDialog = false">
{{ $ay.t("Close") }} {{ $ay.t("Close") }}
@@ -289,7 +315,7 @@
<v-card-title>{{ $ay.t("ScheduleOptions") }} </v-card-title> <v-card-title>{{ $ay.t("ScheduleOptions") }} </v-card-title>
<v-card-text> <v-card-text>
<v-row no-gutters> <v-row no-gutters>
<template v-if="$vuetify.breakpoint.xs"> <template v-if="isXS">
<v-col cols="12"> <v-col cols="12">
<gz-tag-picker <gz-tag-picker
:label="$ay.t('FilterUsers')" :label="$ay.t('FilterUsers')"
@@ -344,7 +370,7 @@
<v-btn text @click="settingsDialog = false" color="primary">{{ <v-btn text @click="settingsDialog = false" color="primary">{{
$ay.t("Cancel") $ay.t("Cancel")
}}</v-btn> }}</v-btn>
<v-spacer v-if="!$vuetify.breakpoint.xs"></v-spacer> <v-spacer v-if="issmAndUp"></v-spacer>
<v-btn <v-btn
color="primary" color="primary"
text text
@@ -427,6 +453,9 @@ export default {
async refresh() { async refresh() {
await this.fetchEvents({ start: null, end: null }); await this.fetchEvents({ start: null, end: null });
}, },
openUserSchedule: function(id) {
console.log("STUB OPEN USER SCHEDULE FOR " + id);
},
openObject: function(type, id) { openObject: function(type, id) {
window.$gz.eventBus.$emit("openobject", { window.$gz.eventBus.$emit("openobject", {
type: type, type: type,
@@ -862,6 +891,13 @@ export default {
return window.$gz.util.DaysOfWeekToWeekdays( return window.$gz.util.DaysOfWeekToWeekdays(
this.formUserOptions.excludeDaysOfWeek this.formUserOptions.excludeDaysOfWeek
); );
},
isXS() {
//console.log(this.$vuetify.breakpoint);
return this.$vuetify.breakpoint.xs;
},
issmAndUp() {
return this.$vuetify.breakpoint.smAndUp;
} }
} }
}; };