diff --git a/apps/web-antd/src/views/dashboard/analytics/analytics-trends.vue b/apps/web-antd/src/views/dashboard/analytics/analytics-trends.vue index 353d4c96..3e720e73 100644 --- a/apps/web-antd/src/views/dashboard/analytics/analytics-trends.vue +++ b/apps/web-antd/src/views/dashboard/analytics/analytics-trends.vue @@ -2,9 +2,18 @@ import type { EchartsUIType } from '@vben/plugins/echarts'; import { EchartsUI, useEcharts } from '@vben/plugins/echarts'; -import { onMounted, ref, defineExpose } from 'vue'; +import { onMounted, ref, defineExpose, watch } from 'vue'; import { meterRecordTrend } from '#/api/property/energyManagement/meterRecord'; import dayjs from 'dayjs'; + +const props = defineProps({ + meterType: { + type: Number, + default: 1, + }, +}); + +const meterType = ref(1); const chartRef = ref(); const { renderEcharts } = useEcharts(chartRef); // 添加日期选择相关逻辑 @@ -16,12 +25,12 @@ const getDaysInMonth = (date: any) => { const daysInMonth = new Date(year, month, 0).getDate(); return Array.from({ length: daysInMonth }, (_, i) => i + 1); }; -const getMeterRecordTrend = async (selectedDate: any) => { +const getMeterRecordTrend = async (selectedDate: any, meterType: any) => { const res = await meterRecordTrend({ day: dayjs().format('YYYY-MM-DD'), month: selectedDate.value, year: dayjs().format('YYYY'), - meterType: 1, + meterType: meterType.value, meterId: null, floorId: null, }); @@ -109,7 +118,7 @@ const getMeterRecordTrend = async (selectedDate: any) => { }); }; onMounted(async () => { - getMeterRecordTrend(selectedDate); + getMeterRecordTrend(selectedDate, meterType); }); // 暴露方法给父组件调用 defineExpose({ diff --git a/apps/web-antd/src/views/dashboard/analytics/index.vue b/apps/web-antd/src/views/dashboard/analytics/index.vue index 4eb8c766..59d09876 100644 --- a/apps/web-antd/src/views/dashboard/analytics/index.vue +++ b/apps/web-antd/src/views/dashboard/analytics/index.vue @@ -12,7 +12,7 @@ import AnalyticsVisitsData from './analytics-visits-data.vue'; import AnalyticsVisitsSales from './analytics-visits-sales.vue'; import AnalyticsVisitsSource from './analytics-visits-source.vue'; import { ref, onMounted } from 'vue'; -import { DatePicker } from 'ant-design-vue'; +import { DatePicker, message } from 'ant-design-vue'; import { Radio } from 'ant-design-vue'; import { getIndexCount, @@ -52,7 +52,7 @@ const overviewItems = ref([ ]); //tab选择 -const timeUnit = ref(1); +const meterType = ref(1); // 月份选择 const selectedDate = ref(null); const paramDate = ref(null); @@ -65,12 +65,28 @@ const analyticsTrendsRef = ref | null>( ); const handleDateChange = (date: any) => { paramDate.value = date.format('YYYY-MM'); + console.log('meterType', meterType); // 调用子组件的方法 if ( analyticsTrendsRef.value && analyticsTrendsRef.value.getMeterRecordTrend ) { - analyticsTrendsRef.value.getMeterRecordTrend(paramDate); + analyticsTrendsRef.value.getMeterRecordTrend(paramDate, meterType); + } +}; + +const handleMeterTypeChange = (e: Event) => { + if (!selectedDate.value) { + message.warning('请选择月份'); + return; + } + paramDate.value = selectedDate.value.format('YYYY-MM'); + // 调用子组件的方法 + if ( + analyticsTrendsRef.value && + analyticsTrendsRef.value.getMeterRecordTrend + ) { + analyticsTrendsRef.value.getMeterRecordTrend(paramDate, meterType); } }; @@ -199,8 +215,13 @@ onMounted(() => { class="flex items-center justify-between p-5" style="width: 100%; height: 100px" > - + 电量 + 水量 { @change="handleDateChange" /> -
+
-
diff --git a/apps/web-antd/src/views/property/costManagement/costItemSetting/data.ts b/apps/web-antd/src/views/property/costManagement/costItemSetting/data.ts index 3c218bc6..43f36d10 100644 --- a/apps/web-antd/src/views/property/costManagement/costItemSetting/data.ts +++ b/apps/web-antd/src/views/property/costManagement/costItemSetting/data.ts @@ -158,15 +158,15 @@ export const modalSchema: FormSchemaGetter = () => [ placeholder: '请输入(如:元)', }, }, - { - label: '付费方式', - fieldName: 'paymentMode', - component: 'Select', - componentProps: { - options: getDictOptions('wy_fffs'), - }, - rules: 'selectRequired', - }, + // { + // label: '付费方式', + // fieldName: 'paymentMode', + // component: 'Select', + // componentProps: { + // options: getDictOptions('wy_fffs'), + // }, + // rules: 'selectRequired', + // }, { label: '进位方式', fieldName: 'roundingMode', @@ -202,7 +202,6 @@ export const modalSchema: FormSchemaGetter = () => [ options: getDictOptions('pro_calculation_formula'), }, rules: 'selectRequired', - formItemClass: 'col-span-2', }, { label: '计费单价',