From 007bda30bc818a87d17202ca16489d38e5a86105 Mon Sep 17 00:00:00 2001 From: fyy <2717885210@qq.com> Date: Thu, 24 Jul 2025 16:09:54 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E6=94=B9=E5=A4=A7=E5=B1=8F?= =?UTF-8?q?=E4=B8=8D=E8=83=BD=E6=98=BE=E7=A4=BAbug=E3=80=81=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E5=A4=A7=E5=B1=8F=E5=AD=97=E4=BD=93=E3=80=81=E6=9B=BF?= =?UTF-8?q?=E6=8D=A2=E7=B3=BB=E7=BB=9Flogo?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/web-antd/src/assets/logoDark.png | Bin 0 -> 8337 bytes apps/web-antd/src/assets/logoLight.png | Bin 0 -> 7931 bytes apps/web-antd/src/preferences.ts | 7 +- .../conservationManagement/data.ts | 60 +- .../roomBooking/conferenceView/index.vue | 59 +- .../screen/digitalIntelligence/index.vue | 6 + .../energyConsumptionAnalysis/index.vue | 1307 +++++++++-------- .../src/views/screen/monitor/index.vue | 6 + .../views/screen/navigation/Navigation.vue | 6 + .../src/views/screen/property/index.vue | 1054 ++++++------- .../src/views/screen/security/index.vue | 7 + .../shadcn-ui/src/components/logo/logo.vue | 28 +- .../src/authentication/authentication.vue | 1 - 13 files changed, 1365 insertions(+), 1176 deletions(-) create mode 100644 apps/web-antd/src/assets/logoDark.png create mode 100644 apps/web-antd/src/assets/logoLight.png diff --git a/apps/web-antd/src/assets/logoDark.png b/apps/web-antd/src/assets/logoDark.png new file mode 100644 index 0000000000000000000000000000000000000000..467ed47a43461333d07282cb3971a1315c99a4bc GIT binary patch literal 8337 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 literal 0 HcmV?d00001 diff --git a/apps/web-antd/src/assets/logoLight.png b/apps/web-antd/src/assets/logoLight.png new file mode 100644 index 0000000000000000000000000000000000000000..f200d069063bca62c008e76cd7c7d9c7a790ffd5 GIT binary patch literal 7931 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 w9`jwiY6$yp?(M%R#{YAv)_=1fj~(#y [ { @@ -32,12 +32,12 @@ export const columns: VxeGridProps['columns'] = [ return (rowIndex + 1).toString(); }, }, - minWidth: '120' + minWidth: '120', }, { title: '养护名称', field: 'maintainName', - minWidth: '120' + minWidth: '120', }, // { // title: '服务地点', @@ -52,7 +52,7 @@ export const columns: VxeGridProps['columns'] = [ return renderDict(row.serveType, 'pro_service_type'); }, }, - minWidth: '120' + minWidth: '120', }, { title: '养护周期类型', @@ -62,27 +62,27 @@ export const columns: VxeGridProps['columns'] = [ return renderDict(row.periodType, 'wy_time_unit'); }, }, - minWidth: '120' + minWidth: '120', }, { title: '养护周期频次', field: 'periodFrequency', - minWidth: '120' + minWidth: '120', }, { title: '关联订单', field: 'orderId', - minWidth: '120' + minWidth: '120', }, { title: '计划执行时间', field: 'startTime', - minWidth: '120' + minWidth: '120', }, { title: '计划完成时间', field: 'endTime', - minWidth: '120' + minWidth: '120', }, { title: '巡检结果', @@ -92,12 +92,12 @@ export const columns: VxeGridProps['columns'] = [ return renderDict(row.inspectResult, 'pro_inspection_results'); }, }, - minWidth: '120' + minWidth: '120', }, { title: '处理措施', field: 'measure', - minWidth: '120' + minWidth: '120', }, { title: '客户评分', @@ -110,12 +110,12 @@ export const columns: VxeGridProps['columns'] = [ }); }, }, - minWidth: '150' + minWidth: '150', }, { title: '客户反馈', field: 'customerAdvice', - minWidth: '120' + minWidth: '120', }, { title: '处理状态', @@ -125,7 +125,7 @@ export const columns: VxeGridProps['columns'] = [ return renderDict(row.state, 'pro_processing_status'); }, }, - minWidth: '120' + minWidth: '120', }, { field: 'action', @@ -151,7 +151,7 @@ export const modalSchema: FormSchemaGetter = () => [ fieldName: 'maintainName', component: 'Input', rules: 'required', - labelWidth:100 + labelWidth: 100, }, { label: '服务地点', @@ -159,7 +159,7 @@ export const modalSchema: FormSchemaGetter = () => [ component: 'TreeSelect', defaultValue: undefined, rules: 'required', - labelWidth:100 + labelWidth: 100, }, { label: '服务类型', @@ -169,7 +169,7 @@ export const modalSchema: FormSchemaGetter = () => [ options: getDictOptions('pro_service_type'), }, rules: 'selectRequired', - labelWidth:100 + labelWidth: 100, }, { label: '养护周期类型', @@ -180,14 +180,14 @@ export const modalSchema: FormSchemaGetter = () => [ options: getDictOptions('wy_time_unit'), }, rules: 'selectRequired', - labelWidth:100 + labelWidth: 100, }, { label: '养护周期频次', fieldName: 'periodFrequency', component: 'Input', rules: 'required', - labelWidth:100 + labelWidth: 100, }, { label: '关联订单', @@ -200,7 +200,7 @@ export const modalSchema: FormSchemaGetter = () => [ valueField: 'id', }, rules: 'required', - labelWidth:100 + labelWidth: 100, }, { label: '计划执行时间', @@ -212,7 +212,7 @@ export const modalSchema: FormSchemaGetter = () => [ valueFormat: 'YYYY-MM-DD HH:mm:ss', }, rules: 'required', - labelWidth:100 + labelWidth: 100, }, { label: '计划完成时间', @@ -224,7 +224,7 @@ export const modalSchema: FormSchemaGetter = () => [ valueFormat: 'YYYY-MM-DD HH:mm:ss', }, rules: 'required', - labelWidth:100 + labelWidth: 100, }, { label: '巡检结果', @@ -234,14 +234,14 @@ export const modalSchema: FormSchemaGetter = () => [ options: getDictOptions('pro_inspection_results'), }, rules: 'selectRequired', - labelWidth:100 + labelWidth: 100, }, { label: '处理措施', fieldName: 'measure', component: 'Textarea', rules: 'required', - labelWidth:100 + labelWidth: 100, }, { label: '客户评分', @@ -251,16 +251,16 @@ export const modalSchema: FormSchemaGetter = () => [ allowHalf: false, count: 5, tooltips: ['1星', '2星', '3星', '4星', '5星'], - defaultValue: 0 + defaultValue: 0, }, rules: 'required', - labelWidth:100 + labelWidth: 100, }, { label: '客户反馈', fieldName: 'customerAdvice', component: 'Textarea', - labelWidth:100 + labelWidth: 100, }, { label: '处理状态', @@ -270,6 +270,6 @@ export const modalSchema: FormSchemaGetter = () => [ options: getDictOptions('pro_processing_status'), }, rules: 'selectRequired', - labelWidth:100 + labelWidth: 100, }, ]; diff --git a/apps/web-antd/src/views/property/roomBooking/conferenceView/index.vue b/apps/web-antd/src/views/property/roomBooking/conferenceView/index.vue index 05e99caa..3f493d73 100644 --- a/apps/web-antd/src/views/property/roomBooking/conferenceView/index.vue +++ b/apps/web-antd/src/views/property/roomBooking/conferenceView/index.vue @@ -42,7 +42,11 @@ const selectedRoom = ref(''); const selectedDate = ref(''); // 一周的日期 -const weekDates = ref([]); +interface WeekDate { + date: string; + weekDay: string; +} +const weekDates = ref([]); // 预约数据 const bookings = ref([]); @@ -54,16 +58,23 @@ const loading = ref(false); // 时间段只显示"上午" "下午" const timeSlots = ['上午', '下午']; +function getWeekDay(dateStr: string): string { + const weekMap = ['周日', '周一', '周二', '周三', '周四', '周五', '周六']; + const day = dayjs(dateStr).day(); + return weekMap[dayjs(dateStr).day()]!; +} // 生成一周日期 function generateWeekDates(): void { const today = dayjs(); - // 获取本周的周一 const startOfWeek = today.startOf('week'); - const dates = Array.from({ length: 7 }, (_, i) => { - return startOfWeek.add(i, 'day').format('YYYY-MM-DD'); + const dates: WeekDate[] = Array.from({ length: 7 }, (_, i) => { + const date = startOfWeek.add(i, 'day').format('YYYY-MM-DD'); + return { + date, + weekDay: getWeekDay(date) + }; }); weekDates.value = dates; - // 默认选中今天 selectedDate.value = today.format('YYYY-MM-DD'); } @@ -107,7 +118,7 @@ async function fetchBookings(): Promise { const booking = bookings.value.find( (b) => b.name === room.name && b.slots === slot, ); - table[slot][room.name] = booking || null; + table[slot]![room.name] = booking || null; }); }); bookingTable.value = table; @@ -135,14 +146,14 @@ async function fetchBookings(): Promise { tbConferenceId: item.meetId, })); const table: Record> = { 上午: {}, 下午: {} }; - weekDates.value.forEach((date) => { + weekDates.value.forEach((item) => { ['上午', '下午'].forEach((slot) => { const booking = bookings.value.find( (b) => - dayjs(b.scheduledStarttime).format('YYYY-MM-DD') === date && + dayjs(b.scheduledStarttime).format('YYYY-MM-DD') === item.date && b.slots === slot, ); - table[slot][date] = booking || null; + table[slot]![item.date] = booking || null; }); }); bookingTable.value = table; @@ -271,10 +282,10 @@ const columns = computed[]>(() => { key: room.name, width: 200, })) - : weekDates.value.map((date) => ({ - title: dayjs(date).format('YYYY-MM-DD'), - dataIndex: date, - key: date, + : weekDates.value.map((item) => ({ + title: item.date, + dataIndex: item.date, + key: item.date, width: 200, })); return [...baseColumns, ...dynamicColumns]; @@ -284,10 +295,12 @@ const tableData = computed(() => { const slots = ['上午', '下午']; return slots.map((slot) => { const row: any = { slot }; - const cols = - viewMode.value === 'date' - ? getFullRoomList().map((room) => room.name) - : weekDates.value; + let cols: string[] = []; + if (viewMode.value === 'date') { + cols = getFullRoomList().map((room) => room.name); + } else { + cols = weekDates.value.map(item => item.date); + } cols.forEach((col) => { row[col] = bookingTable.value[slot]?.[col] || null; }); @@ -328,12 +341,12 @@ onMounted(() => {
{ >