From 9a61e46d96536f3299e57f7259ae1c9972256ec6 Mon Sep 17 00:00:00 2001
From: riku <risaku@163.com>
Date: 星期二, 30 九月 2025 09:42:09 +0800
Subject: [PATCH] 1. 隐藏未完成的账户匹配页面 2. 根据第三方新的接口文档修改接口url地址

---
 src/views/fysp/task/components/CompMonitorPlan.vue |  104 +++++++++++++++++++++++++++++++++-------------------
 1 files changed, 66 insertions(+), 38 deletions(-)

diff --git a/src/views/fysp/task/components/CompMonitorPlan.vue b/src/views/fysp/task/components/CompMonitorPlan.vue
index e59c37a..954a280 100644
--- a/src/views/fysp/task/components/CompMonitorPlan.vue
+++ b/src/views/fysp/task/components/CompMonitorPlan.vue
@@ -1,6 +1,5 @@
 <template>
   <el-calendar
-    v-loading="dayTaskLoading"
     v-model="dateValue"
     :range="dateRange"
     @update:model-value="onDateChange"
@@ -22,15 +21,15 @@
           <el-row justify="space-between" class="m-t-16">
             <el-space direction="vertical">
               <el-text size="small">鎬昏</el-text>
-              <el-text>{{computeDayTask(data.day).totalTaskNum}}</el-text>
+              <el-text>{{ computeDayTask(data.day).totalTaskNum }}</el-text>
             </el-space>
             <el-space direction="vertical">
               <el-text size="small">瀹屾垚</el-text>
-              <el-text>{{computeDayTask(data.day).completeTaskNum}}</el-text>
+              <el-text>{{ computeDayTask(data.day).completeTaskNum }}</el-text>
             </el-space>
             <el-space direction="vertical">
               <el-text size="small">鏁存敼</el-text>
-              <el-text>{{computeDayTask(data.day).changedTaskNum}}</el-text>
+              <el-text>{{ computeDayTask(data.day).changedTaskNum }}</el-text>
             </el-space>
             <!-- <el-statistic title="鎬昏" :value="computeDayTask(data.day).totalTaskNum" />
             <el-statistic title="瀹屾垚" :value="computeDayTask(data.day).completeTaskNum" />
@@ -53,11 +52,15 @@
   task: {
     type: Object,
     default: () => {}
+  },
+  dayTaskList: {
+    type: Array,
+    default: () => []
   }
 });
-const emit = defineEmits(['dateChange'])
+const emit = defineEmits(['dateChange']);
 // 閫変腑鏃ユ湡
-const dateValue = ref(new Date());
+const dateValue = ref();
 // 鏃ュ巻鏍囬
 const title = computed(() => {
   if (props.task) {
@@ -70,18 +73,27 @@
 // 鏃ュ巻鑼冨洿
 const startDay = computed(() => dayjs(props.task.starttime));
 const endDay = computed(() => dayjs(props.task.endtime));
-const dateRange = computed(() => [startDay.value.toDate(), endDay.value.toDate()]);
+const dateRange = computed(() => [
+  startDay.value.toDate(),
+  endDay.value.toDate()
+]);
 // const dateRange = computed(() => [new Date(2024, 4, 27), new Date(2024, 5, 30)]);
 
 // 鏃ユ湡鏄惁鍦ㄤ换鍔¤寖鍥村唴
 function isDayEnable(day) {
   const _day = dayjs(day);
-  return _day.isSameOrAfter(startDay.value, 'day') && _day.isSameOrBefore(endDay.value, 'day');
+  return (
+    _day.isSameOrAfter(startDay.value, 'day') &&
+    _day.isSameOrBefore(endDay.value, 'day')
+  );
 }
 
 /********************** 鏃ユ湡鏍峰紡 *********************************/
 function calendarDayClz(day) {
-  return 'calendar-day ' + (isDayEnable(day) ? 'calendar-day-enable' : 'calendar-day-disable');
+  return (
+    'calendar-day ' +
+    (isDayEnable(day) ? 'calendar-day-enable' : 'calendar-day-disable')
+  );
 }
 function getDay(day) {
   return day.split('-').splice(1, 2).join('-');
@@ -89,18 +101,32 @@
 
 /********************** 浠诲姟鏁版嵁 *********************************/
 
-// 鑾峰彇鏃ヤ换鍔$粺璁′俊鎭�
-const dayTaskLoading = ref(false);
-const dayTaskList = ref([]);
-function fetchDayTasks(topTaskId) {
-  dayTaskLoading.value = true;
-  taskApi
-    .fetchDayTasks(topTaskId)
-    .then((res) => {
-      dayTaskList.value = res;
-    })
-    .finally(() => (dayTaskLoading.value = false));
-}
+watch(
+  () => props.dayTaskList,
+  (nV, oV) => {
+    if (nV && dateValue.value) {
+      onDateChange(dateValue.value);
+    }
+  },
+  { immediate: false }
+);
+
+// // 鑾峰彇鏃ヤ换鍔$粺璁′俊鎭�
+// const dayTaskLoading = ref(false);
+// const dayTaskList = ref([]);
+// function fetchDayTasks() {
+//   dayTaskLoading.value = true;
+//   return taskApi
+//     .fetchDayTasks(props.task.tguid)
+//     .then((res) => {
+//       dayTaskList.value = res;
+//       // 濡傛灉宸查�夋棩鏈熷瓨鍦紝鍦ㄩ噸鏂拌幏鍙栨棩浠诲姟缁熻淇℃伅鍚庯紝鍐嶆瑙﹀彂鐐瑰嚮浜嬩欢
+//       if (dateValue.value) {
+//         onDateChange(dateValue.value);
+//       }
+//     })
+//     .finally(() => (dayTaskLoading.value = false));
+// }
 
 // 鏃ヤ换鍔℃暟鎹睍绀�
 const compMap = new Map();
@@ -110,7 +136,7 @@
     return compMap.get(key).value;
   }
   const result = computed(() => {
-    return dayTaskList.value.find((v) => {
+    return props.dayTaskList.find((v) => {
       return dayjs(v.date).isSame(dayjs(day));
     });
   });
@@ -119,17 +145,17 @@
 }
 
 function onDateChange(e) {
-  const day = dayjs(e).format('YYYY-MM-DD')
-  const t = computeDayTask(day)
-  console.log(t);
-  
-  emit('dateChange', t)
+  if (isDayEnable(e)) {
+    const day = dayjs(e).format('YYYY-MM-DD');
+    const t = computeDayTask(day);
+    emit('dateChange', t, day);
+  }
 }
 
 // 鎬讳换鍔$粺璁�
 const taskStatistic = computed(() => {
   const res = { total: 0, complete: 0, changed: 0 };
-  dayTaskList.value.forEach((e) => {
+  props.dayTaskList.forEach((e) => {
     res.total += e.totalTaskNum;
     res.complete += e.completeTaskNum;
     res.changed += e.changedTaskNum;
@@ -138,15 +164,17 @@
 });
 /********************** 鍒濆鍖� *********************************/
 
-watch(
-  () => props.task,
-  (nV) => {
-    if (nV.tguid) {
-      fetchDayTasks(nV.tguid);      
-    }
-  },
-  { immediate: true }
-);
+// watch(
+//   () => props.task,
+//   (nV) => {
+//     if (nV && nV.tguid) {
+//       fetchDayTasks();
+//     }
+//   },
+//   { immediate: true }
+// );
+
+// defineExpose({ fetchDayTasks });
 </script>
 <style scoped>
 .li-01 {
@@ -185,7 +213,7 @@
   border: 1px solid rgb(172, 165, 165);
   border-radius: 50%; */
   padding: 8px;
-  height: var(--el-calendar-cell-width);
+  /* min-height: var(--el-calendar-cell-width); */
 }
 
 .calendar-day-enable {

--
Gitblit v1.9.3