diff --git a/src/components/common/echartCard/commonFilterChart.vue b/src/components/common/echartCard/commonFilterChart.vue index 202c8ee6..1ffbbe91 100644 --- a/src/components/common/echartCard/commonFilterChart.vue +++ b/src/components/common/echartCard/commonFilterChart.vue @@ -174,6 +174,10 @@ const props = defineProps({ type: Boolean, default: false, }, + filterData: { + type: Object, + default: null, + }, }); const emit = defineEmits(['update']); @@ -190,6 +194,21 @@ const formData = ref({ finishTimeArr: [], }); +watch( + () => props.filterData, + (newVal) => { + if (newVal && Object.keys(newVal).length > 0) { + const { tag1, workspace, discipline, createTimeArr, finishTimeArr } = newVal; + if (tag1 !== undefined) formData.value.tag1 = tag1; + if (workspace !== undefined) formData.value.workspace = workspace; + if (discipline !== undefined) formData.value.discipline = discipline; + if (createTimeArr !== undefined) formData.value.createTimeArr = createTimeArr; + if (finishTimeArr !== undefined) formData.value.finishTimeArr = finishTimeArr; + } + }, + { deep: true } +); + const disabledDate = (time: Date) => { return time.getTime() > Date.now(); }; diff --git a/src/views/system/configuration/components/workloadPermission.vue b/src/views/system/configuration/components/workloadPermission.vue index 807a0b0c..6a8d78cc 100644 --- a/src/views/system/configuration/components/workloadPermission.vue +++ b/src/views/system/configuration/components/workloadPermission.vue @@ -74,7 +74,7 @@
- + 负责列表 | 已选 @@ -288,7 +288,6 @@ watch( ); // #endregion -// 弹窗数据更新 // 弹窗数据更新 const handleDataChange = (newData: any[]) => { const isLeft = dialogDataType.value === 'left'; diff --git a/src/views/task/dashboard/components/summaryNewBoard.vue b/src/views/task/dashboard/components/summaryNewBoard.vue index bb7684e3..2e383914 100644 --- a/src/views/task/dashboard/components/summaryNewBoard.vue +++ b/src/views/task/dashboard/components/summaryNewBoard.vue @@ -17,7 +17,8 @@ 'createTime', 'finishTime', ]" - @update="progressBarChartUpdate" + :filterData="progressFilterData" + @update="handleProgressFilterUpdate" >
@@ -36,7 +37,8 @@ 'createTime', 'finishTime', ]" - @update="progressPieChartUpdate" + :filterData="progressFilterData" + @update="handleProgressFilterUpdate" >
@@ -56,7 +58,8 @@ 'createTime', 'finishTime', ]" - @update="achieveBarChartUpdate" + :filterData="achieveFilterData" + @update="handleAchieveFilterUpdate" >
@@ -75,7 +78,8 @@ 'createTime', 'finishTime', ]" - @update="achievePieChartUpdate" + :filterData="achieveFilterData" + @update="handleAchieveFilterUpdate" > @@ -91,7 +95,6 @@ import { getTaskCompleteStatisticsByDisciplineApi, getTaskAchieveStatisticsByDisciplineApi, } from '@/api/project/node'; -// import { getTaskAchieveStatisticsApi } from '@/api/project/task'; import { useDict } from '@/utils/useDict'; import { getTaskStatusColorList } from '@/utils/enum/task'; import { TASK_CALCULATE_STATUS_OPTIONS } from '@/utils/enum/task'; @@ -106,6 +109,34 @@ const { TASK_ACHIEVE_STATUS, RESULT_ACHIEVE_STATUS } = useDict( ); const statusColorList = getTaskStatusColorList(Object.keys(TASK_ACHIEVE_STATUS.value.O)); +const progressFilterData = ref({ + tag1: '', + workspace: '', + discipline: '', + createTimeArr: [], + finishTimeArr: [], +}); + +const achieveFilterData = ref({ + tag1: '', + workspace: '', + discipline: '', + createTimeArr: [], + finishTimeArr: [], +}); + +const handleProgressFilterUpdate = async (data: any) => { + progressFilterData.value = data; + await progressBarChartUpdate(data); + await progressPieChartUpdate(data); +}; + +const handleAchieveFilterUpdate = async (data: any) => { + achieveFilterData.value = data; + await achieveBarChartUpdate(data); + await achievePieChartUpdate(data); +}; + // 【1】进度统计柱状图 const progressBarChartNodata = ref(false); const progressBarOption = ref();