KI-AGENT: Leite Termine nach dem Speichern zurück zur Plantafel
This commit is contained in:
@@ -378,6 +378,21 @@ const getEntityModalCreateQuery = (datapoint) => {
|
||||
return datapoint.entityModalCreateQuery || {}
|
||||
}
|
||||
|
||||
const getPostSaveRoute = () => {
|
||||
if (type !== "events") return null
|
||||
|
||||
if (route.query.returnTo === "plantafel") {
|
||||
return {
|
||||
path: "/organisation/plantafel",
|
||||
query: {
|
||||
date: route.query.returnDate || undefined,
|
||||
view: route.query.returnView || undefined
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return null
|
||||
}
|
||||
|
||||
const createItem = async () => {
|
||||
let ret = null
|
||||
@@ -386,7 +401,14 @@ const createItem = async () => {
|
||||
ret = await useEntities(type).create(item.value, true)
|
||||
|
||||
} else {
|
||||
ret = await useEntities(type).create(item.value)//dataStore.createNewItem(type,item.value)
|
||||
const postSaveRoute = getPostSaveRoute()
|
||||
|
||||
if (postSaveRoute) {
|
||||
ret = await useEntities(type).create(item.value, true)
|
||||
await router.push(postSaveRoute)
|
||||
} else {
|
||||
ret = await useEntities(type).create(item.value)//dataStore.createNewItem(type,item.value)
|
||||
}
|
||||
}
|
||||
|
||||
emit('returnData', ret)
|
||||
@@ -401,7 +423,14 @@ const updateItem = async () => {
|
||||
emit('returnData', ret)
|
||||
modal.close()
|
||||
} else {
|
||||
ret = await useEntities(type).update(item.value.id, item.value)
|
||||
const postSaveRoute = getPostSaveRoute()
|
||||
|
||||
if (postSaveRoute) {
|
||||
ret = await useEntities(type).update(item.value.id, item.value, true)
|
||||
await router.push(postSaveRoute)
|
||||
} else {
|
||||
ret = await useEntities(type).update(item.value.id, item.value)
|
||||
}
|
||||
emit('returnData', ret)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -8,6 +8,7 @@ import { useDraggable } from "@vueuse/core"
|
||||
import { expandRecurringEvent } from "~/utils/eventRecurrence"
|
||||
|
||||
const router = useRouter()
|
||||
const route = useRoute()
|
||||
const auth = useAuthStore()
|
||||
const profileStore = useProfileStore()
|
||||
const toast = useToast()
|
||||
@@ -15,12 +16,16 @@ const { $api, $dayjs } = useNuxtApp()
|
||||
const { create: createEvent } = useEntities("events")
|
||||
const { list: listStaffTimeSpans, createEntry, update: updateStaffTimeEntry } = useStaffTime()
|
||||
|
||||
const allowedCalendarViews = ["resourceTimelineDay", "resourceTimelineWeek", "resourceTimelineMonth"]
|
||||
const initialRouteDate = /^\d{4}-\d{2}-\d{2}$/.test(String(route.query.date || "")) ? String(route.query.date) : null
|
||||
const initialRouteView = allowedCalendarViews.includes(String(route.query.view || "")) ? String(route.query.view) : null
|
||||
|
||||
const loading = ref(true)
|
||||
const savingAbsence = ref(false)
|
||||
const selectedType = ref("all")
|
||||
const calendarRef = ref(null)
|
||||
const calendarView = ref("resourceTimelineWeek")
|
||||
const calendarCurrentDate = ref($dayjs().format("YYYY-MM-DD"))
|
||||
const calendarView = ref(initialRouteView || "resourceTimelineWeek")
|
||||
const calendarCurrentDate = ref(initialRouteDate || $dayjs().format("YYYY-MM-DD"))
|
||||
const calendarTitle = ref("")
|
||||
const visibleRange = ref({
|
||||
from: $dayjs().startOf("month").format("YYYY-MM-DD"),
|
||||
@@ -370,7 +375,14 @@ const calendarOptions = computed(() => ({
|
||||
return
|
||||
}
|
||||
|
||||
router.push(`/standardEntity/events/edit/${info.event.extendedProps.eventId}`)
|
||||
router.push({
|
||||
path: `/standardEntity/events/edit/${info.event.extendedProps.eventId}`,
|
||||
query: {
|
||||
returnTo: "plantafel",
|
||||
returnDate: calendarCurrentDate.value,
|
||||
returnView: calendarView.value
|
||||
}
|
||||
})
|
||||
},
|
||||
datesSet(info) {
|
||||
const nextFrom = $dayjs(info.start).format("YYYY-MM-DD")
|
||||
|
||||
Reference in New Issue
Block a user