diff --git a/src/views/mes/cal/calendar/CalendarDateCell.vue b/src/views/mes/cal/calendar/CalendarDateCell.vue index e3f3ecb11..664eab115 100644 --- a/src/views/mes/cal/calendar/CalendarDateCell.vue +++ b/src/views/mes/cal/calendar/CalendarDateCell.vue @@ -1,8 +1,8 @@ @@ -108,3 +107,18 @@ const hasFestivalDay = computed(() => { return !!(info.solarFestival || info.lunarFestival || info.termName) }) + + diff --git a/src/views/mes/cal/calendar/TeamView.vue b/src/views/mes/cal/calendar/TeamView.vue index 309656504..c847ae889 100644 --- a/src/views/mes/cal/calendar/TeamView.vue +++ b/src/views/mes/cal/calendar/TeamView.vue @@ -40,6 +40,12 @@ import { formatDate } from '@/utils/formatTime' import { HolidayType } from '@/views/mes/utils/constants' import CalendarDateCell from './CalendarDateCell.vue' import CalendarLegend from './CalendarLegend.vue' +import dayjs from 'dayjs' +import 'dayjs/locale/zh-cn' +import PluginLunar from 'dayjs-plugin-lunar' + +dayjs.locale('zh-cn') +dayjs.extend(PluginLunar) const loading = ref(false) const currentDate = ref(new Date()) // 日历当前显示月份 @@ -94,7 +100,11 @@ const fetchCalendar = async () => { return } list.forEach((item: CalCalendarDayVO) => { - calendarDayMap.value.set(item.day, item) + // 后端返回的 day 为时间戳(long),格式化为 yyyy-MM-dd 作为 Map key + const day = item.day ? formatDate(item.day as any, 'YYYY-MM-DD') : '' + if (day) { + calendarDayMap.value.set(day, { ...item, day }) + } }) } finally { loading.value = false diff --git a/src/views/mes/cal/calendar/TypeView.vue b/src/views/mes/cal/calendar/TypeView.vue index b1a3ee603..70de72522 100644 --- a/src/views/mes/cal/calendar/TypeView.vue +++ b/src/views/mes/cal/calendar/TypeView.vue @@ -40,6 +40,12 @@ import { DICT_TYPE, getIntDictOptions } from '@/utils/dict' import { HolidayType } from '@/views/mes/utils/constants' import CalendarDateCell from './CalendarDateCell.vue' import CalendarLegend from './CalendarLegend.vue' +import dayjs from 'dayjs' +import 'dayjs/locale/zh-cn' +import PluginLunar from 'dayjs-plugin-lunar' + +dayjs.locale('zh-cn') +dayjs.extend(PluginLunar) const loading = ref(false) const currentDate = ref(new Date()) // 日历当前显示月份 @@ -85,7 +91,11 @@ const fetchCalendar = async () => { return } list.forEach((item: CalCalendarDayVO) => { - calendarDayMap.value.set(item.day, item) + // 后端返回的 day 为时间戳(long),格式化为 yyyy-MM-dd 作为 Map key + const day = item.day ? formatDate(item.day as any, 'YYYY-MM-DD') : '' + if (day) { + calendarDayMap.value.set(day, { ...item, day }) + } }) } finally { loading.value = false diff --git a/src/views/mes/cal/calendar/UserView.vue b/src/views/mes/cal/calendar/UserView.vue index a2324d3f2..e64301f83 100644 --- a/src/views/mes/cal/calendar/UserView.vue +++ b/src/views/mes/cal/calendar/UserView.vue @@ -48,6 +48,12 @@ import { formatDate } from '@/utils/formatTime' import { HolidayType } from '@/views/mes/utils/constants' import CalendarDateCell from './CalendarDateCell.vue' import CalendarLegend from './CalendarLegend.vue' +import dayjs from 'dayjs' +import 'dayjs/locale/zh-cn' +import PluginLunar from 'dayjs-plugin-lunar' + +dayjs.locale('zh-cn') +dayjs.extend(PluginLunar) const loading = ref(false) const currentDate = ref(new Date()) // 日历当前显示月份 @@ -94,7 +100,11 @@ const fetchCalendar = async () => { return } list.forEach((item: CalCalendarDayVO) => { - calendarDayMap.value.set(item.day, item) + // 后端返回的 day 为时间戳(long),格式化为 yyyy-MM-dd 作为 Map key + const day = item.day ? formatDate(item.day as any, 'YYYY-MM-DD') : '' + if (day) { + calendarDayMap.value.set(day, { ...item, day }) + } }) } finally { loading.value = false