Skip to content
This repository has been archived by the owner on Aug 20, 2024. It is now read-only.

Commit

Permalink
Merge pull request #3 from redlink-gmbh/TT-109-smf-relative-scheduler…
Browse files Browse the repository at this point in the history
…-sents-wrong-time

Tt 109 smf relative scheduler sents wrong time
  • Loading branch information
AdPat-Redlink authored Dec 21, 2023
2 parents 6b16631 + b98b09c commit fbb97c1
Show file tree
Hide file tree
Showing 4 changed files with 25 additions and 18 deletions.
5 changes: 5 additions & 0 deletions openapi/RelativeEvent.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ components:
- MINUTE
- HOUR
- DAY

RelativeDate:
type: object
description: A date relative to a specific base date (e.g study start)
Expand All @@ -29,6 +30,10 @@ components:
type: string
format: time
description: Follows ISO 8601 format for time
timezone:
type: string
description: Time Zone string for relative event

RelativeRecurrenceRule:
type: object
description: A recurrence rule relative to dtstart
Expand Down
7 changes: 2 additions & 5 deletions src/components/ObservationList.vue
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,6 @@ Licensed under the Elastic License 2.0. */
import { useErrorHandling } from '../composable/useErrorHandling';
import DeleteMoreTableRowDialog from './dialog/DeleteMoreTableRowDialog.vue';
import dayjs from 'dayjs';
import { ZTimeStringToOffsetTimeString } from '../utils/dateUtils';
const loader = useLoader();
const { observationsApi } = useObservationsApi();
Expand Down Expand Up @@ -314,15 +313,13 @@ Licensed under the Elastic License 2.0. */
schedule.dtstart.offset?.unit
? `${t(
`scheduler.preview.unit.${schedule.dtstart.offset.unit}`
)} ${
schedule.dtstart.offset.value
}, ${ZTimeStringToOffsetTimeString(schedule.dtstart.time)}`
)} ${schedule.dtstart.offset.value}, ${schedule.dtstart.time}`
: undefined;
case 'dtend':
return schedule.dtend.offset?.value && schedule.dtend.offset?.unit
? `${t(`scheduler.preview.unit.${schedule.dtend.offset.unit}`)} ${
schedule.dtend.offset.value
}, ${ZTimeStringToOffsetTimeString(schedule.dtend.time)} `
}, ${schedule.dtend.time} `
: undefined;
default:
return undefined;
Expand Down
24 changes: 16 additions & 8 deletions src/components/shared/RelativeScheduler.vue
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@
import InputNumber from 'primevue/inputnumber';
import Dropdown from 'primevue/dropdown';
import Checkbox from 'primevue/checkbox';
import { ZTimeToOffsetTime } from '../../utils/dateUtils';
import {
RelativeEvent,
RelativeRecurrenceRule,
Expand All @@ -28,13 +27,15 @@
unit: schedule.dtstart?.offset?.unit,
},
time: schedule.dtstart?.time,
timezone: schedule.dtstart?.timezone,
},
dtend: {
offset: {
value: schedule.dtend?.offset?.value,
unit: schedule.dtend?.offset?.unit,
},
time: schedule.dtend?.time,
timezone: schedule.dtend?.timezone,
},
rrrule: {
frequency: {
Expand All @@ -56,7 +57,6 @@
parseInt(schedule.dtstart.time?.substring(0, 2)),
parseInt(schedule.dtstart.time?.substring(3, 5), 0)
);
startTime.value = ZTimeToOffsetTime(startTime.value);
} else {
startTime.value.setHours(10, 30);
}
Expand All @@ -65,14 +65,13 @@
parseInt(schedule.dtend.time?.substring(0, 2)),
parseInt(schedule.dtend.time?.substring(3, 5), 0)
);
endTime.value = ZTimeToOffsetTime(endTime.value);
} else {
endTime.value.setHours(18, 30);
}
returnSchedule.value.dtstart.time = returnSchedule.value.dtstart.time
? returnSchedule.value.dtstart.time
: '10:10';
: '10:00';
returnSchedule.value.dtend.time = returnSchedule.value.dtend.time
? returnSchedule.value.dtend.time
: '18:00';
Expand Down Expand Up @@ -250,15 +249,24 @@
function save() {
returnSchedule.value.dtstart.time = startTime.value
?.toISOString()
.substring(11, 16);
?.toTimeString()
.substring(0, 5);
returnSchedule.value.dtend.time = endTime.value
?.toISOString()
.substring(11, 16);
?.toTimeString()
.substring(0, 5);
returnSchedule.value.dtstart.offset = rDtstartOffset.value;
returnSchedule.value.dtend.offset = rDtendOffset.value;
if (typeof returnSchedule.value.dtstart.time !== 'undefined') {
returnSchedule.value.dtstart.timezone =
Intl.DateTimeFormat().resolvedOptions().timeZone;
}
if (typeof returnSchedule.value.dtend.time !== 'undefined') {
returnSchedule.value.dtend.timezone =
Intl.DateTimeFormat().resolvedOptions().timeZone;
}
if (repeatChecked.value) {
const rrrule: RelativeRecurrenceRule = {
frequency: rFrequency.value,
Expand Down
7 changes: 2 additions & 5 deletions src/components/subComponents/SchedulerInfoBlock.vue
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,6 @@ Licensed under the Elastic License 2.0. */
import Button from 'primevue/button';
import { useI18n } from 'vue-i18n';
import dayjs from 'dayjs';
import { ZTimeStringToOffsetTimeString } from '../../utils/dateUtils';
const { t } = useI18n();
Expand Down Expand Up @@ -79,16 +78,14 @@ Licensed under the Elastic License 2.0. */
schedule.dtstart.offset?.unit
? `${t(
`scheduler.preview.unit.${schedule.dtstart.offset.unit}`
)} ${
schedule.dtstart.offset.value
}, ${ZTimeStringToOffsetTimeString(schedule.dtstart.time)}`
)} ${schedule.dtstart.offset.value}, ${schedule.dtstart.time}`
: undefined;
}
case 'dtend':
return schedule.dtend.offset?.value && schedule.dtend.offset?.unit
? `${t(`scheduler.preview.unit.${schedule.dtend.offset.unit}`)} ${
schedule.dtend.offset.value
}, ${ZTimeStringToOffsetTimeString(schedule.dtend.time)} `
}, ${schedule.dtend.time} `
: undefined;
default:
return undefined;
Expand Down

0 comments on commit fbb97c1

Please sign in to comment.