Selaa lähdekoodia

【值班系统】值班人员-工作台,点击下班打卡,打卡成功后签退打卡状态还是未打卡,应该更新为已打卡并更新打卡时间

CzRger 1 vuosi sitten
vanhempi
commit
81fd088fcf

+ 1 - 1
src/store/modules/app.ts

@@ -32,7 +32,7 @@ const state = {
 	signInfo: null,
 	dailyInfo: null,
 	weeklyInfo: null,
-	projectFirstDate: new Date('2023-11-24 00:00:00')
+	projectFirstDate: new Date('2023-11-24 00:00:00'),
 }
 
 const getters = {

+ 6 - 0
src/views/staging/zby/center/calendar.vue

@@ -117,6 +117,9 @@ import {ElMessage} from "element-plus";
 export default defineComponent({
   name: '',
   components: {},
+  props: {
+    refresh: {}
+  },
   setup(props, {emit}) {
     const store = useStore();
     const router = useRouter();
@@ -255,6 +258,9 @@ export default defineComponent({
     }, {
       immediate: true
     })
+    watch(() => props.refresh, () => {
+      getCalendarInfo()
+    })
     return {
       ...toRefs(state),
       getWeekCN,

+ 7 - 5
src/views/staging/zby/center/index.vue

@@ -44,14 +44,14 @@
           {label: '日历', value: '2'},
       ]" padding="6px 16px" type="type2" v-model:active="sourceType"/>
       <template v-if="sourceType === '1'">
-        <StatisticCom/>
+        <StatisticCom :refresh="refresh"/>
       </template>
       <template v-else>
-        <CalendarCom/>
+        <CalendarCom :refresh="refresh"/>
       </template>
     </div>
-    <DailyDetailCom v-model:show="showDailyDetail" :transfer="transferDaily"/>
-    <WeeklyDetailCom v-model:show="showWeeklyDetail" :transfer="transferWeekly"/>
+    <DailyDetailCom v-model:show="showDailyDetail" :transfer="transferDaily" @refresh="refresh = !refresh"/>
+    <WeeklyDetailCom v-model:show="showWeeklyDetail" :transfer="transferWeekly" @refresh="refresh = !refresh"/>
   </div>
 </template>
 
@@ -102,7 +102,8 @@ export default defineComponent({
         signStart: new Date(`${that.$util.YMD(store.state.app.timestamp)} ${store.state.app.publicConfig["sign.begin.time"]}`).getTime(),
         signEnd: new Date(`${that.$util.YMD(store.state.app.timestamp)} ${store.state.app.publicConfig["sign.end.time"]}`).getTime(),
         now: new Date(store.state.app.timestamp).getTime()
-      }
+      },
+      refresh: false
     })
     const onDaily = () => {
       state.transferDaily = {
@@ -122,6 +123,7 @@ export default defineComponent({
           if (res.code === 200) {
             ElMessage.success(msg)
             store.dispatch('app/LOAD_SIGN_INFO')
+            state.refresh = !state.refresh
           } else {
             ElMessage.error(res.message)
           }

+ 12 - 0
src/views/staging/zby/center/statistic.vue

@@ -311,6 +311,9 @@ export default defineComponent({
   components: {
     ButtonSwitchCom
   },
+  props: {
+    refresh: {}
+  },
   setup(props, {emit}) {
     const store = useStore();
     const router = useRouter();
@@ -706,6 +709,15 @@ export default defineComponent({
     watch(() => state.dateValue.selectMonth, () => {
       getMonthInfo()
     })
+    watch(() => props.refresh, () => {
+      if (state.dateType === 'day') {
+        getDayInfo()
+      } else if (state.dateType === 'week') {
+        getWeekInfo()
+      } else if (state.dateType === 'month') {
+        getMonthInfo()
+      }
+    })
     onMounted(() => {
       initDictionary()
       initStatic()