瀏覽代碼

no message

zhejiushizhuce 2 年之前
父節點
當前提交
b01fe620b4
共有 2 個文件被更改,包括 20 次插入 和 3 次删除
  1. 4 2
      src/App.js
  2. 16 1
      src/features/checkInSlice.js

+ 4 - 2
src/App.js

@@ -45,7 +45,7 @@ import {getBFP, getFetchStatus, getHallServerUrl, getUserID, getUserInfo, isLogi
 import {useDispatch, useSelector} from "react-redux";
 import {REQ_STATUS} from "@api/config";
 import {
-    reqAgentCheck,
+    reqAgentCheck, reqCheckinCheck,
     reqCustomService, reqFirstPayConfig, reqGameActivity, reqGameInfo,
     reqGetRoutes,
     reqMailCheck,
@@ -194,7 +194,9 @@ const App = () => {
         if (userID>0){
             if (pathname==="/"){
                 if(hash==null||hash===""){
-                    navigate(ROUTE_PATH.CHECK_IN);
+                    dispatch(reqCheckinCheck((isCanCheckIn)=>{
+                        if(isCanCheckIn===1)navigate(ROUTE_PATH.CHECK_IN);
+                    }));
                     return true;
                 }
             }

+ 16 - 1
src/features/checkInSlice.js

@@ -30,14 +30,22 @@ const reducerCheckinCheck=(state,action,arg)=>{
             // nDayNumber=Number(data.NextDayNumber)
             let LastDate=0;
             let NextGetTime=0;
+            let isCanCheckIn=0;
             if (data.LastDate!=null){
                 LastDate=data.LastDate;
                 LastDate=LastDate.split(".").shift();
                 LastDate=Date.parse(LastDate+"-03:00");
                 NextGetTime=LastDate+86400000;
             }
+            let now=Date.now();
+            if (now-NextGetTime>0){
+                isCanCheckIn=1;
+            }
             let NextDayNumber=Number(data.NextDayNumber);
-            if (NextDayNumber>7)NextDayNumber=7
+            if (NextDayNumber>7){
+                NextDayNumber=7
+                isCanCheckIn=0;
+            }
             state.checkInData={
                 RewardDay,
                 RewardScore,
@@ -47,6 +55,9 @@ const reducerCheckinCheck=(state,action,arg)=>{
                 NextDayNumber
             }
             state.NextGetTime=NextGetTime;
+            state.isCanCheckIn=isCanCheckIn;
+            let callback=arg;
+            if (callback!=null)callback(isCanCheckIn);
         }
     }
 }
@@ -85,6 +96,7 @@ export const CheckInSlice = createSlice({
             LastDate:0,
         },
         NextGetTime:0,
+        isCanCheckIn:0,
         status:{
             CheckInCheck:REQ_STATUS.NONE,
             CheckInGet:REQ_STATUS.NONE,
@@ -107,4 +119,7 @@ export const getCheckInStatus=(state)=>{
 export const getNextGetTime=(state)=>{
     return state.checkIn.NextGetTime;
 }
+export const getIsCanCheckIn=(state)=>{
+    return state.checkIn.isCanCheckIn;
+}
 export default CheckInSlice.reducer;