leon 1 год назад
Родитель
Сommit
b58c938928

Разница между файлами не показана из-за своего большого размера
+ 0 - 0
ios/main.jsbundle


+ 1 - 1
src/features/trackTimeDuration/components/CheckAccess.tsx

@@ -61,7 +61,7 @@ const CheckAccess = memo((props: { record: any, count: number, access: any }) =>
         if (props.access) {
             const member_expire = props.access.member.expire
             const member_status = props.access.member.status
-            if (member_expire && new Date().getTime() > member_expire && member_status && member_status=='MEMBER') {
+            if (member_expire && new Date().getTime()-global.offsetTimestamp > member_expire && member_status && member_status=='MEMBER') {
                 if (global.indexPageRefresh) {
                     global.indexPageRefresh()
                 }

+ 0 - 0
src/moduleA/pages/third


+ 14 - 3
src/pages/account/Profile.tsx

@@ -1,6 +1,6 @@
 import Buttons from "@/components/basic/Buttons";
 import { delSession } from "@/services/common";
-import { clear, getInfo, logout, uploadPerm } from "@/services/user";
+import { clear, getInfo, getPerm, logout, uploadPerm } from "@/services/user";
 import { View, Text, Image, Switch } from "@tarojs/components";
 import Taro, { useDidShow, usePullDownRefresh, useShareAppMessage } from "@tarojs/taro";
 import { useDispatch, useSelector } from "react-redux";
@@ -45,6 +45,7 @@ export default function Page() {
             var status = Taro.getStorageSync('isDebug')
             setSwitchOn(status)
         }
+        getPermissions()
     }, [])
 
     if (process.env.TARO_ENV == 'weapp') {
@@ -75,7 +76,17 @@ export default function Page() {
         setBaseDeviceTime(e)
         global.baseDeviceTime = e
 
-        uploadPerm({ expire_based_on_device_time: e })
+        uploadPerm({ expire_based_on_device_time: e }).then(res => {
+            if (global.indexPageRefresh) {
+                global.indexPageRefresh()
+            }
+        })
+    }
+
+    function getPermissions() {
+        getPerm().then(res => {
+            setBaseDeviceTime((res as any).expire_based_on_device_time)
+        })
     }
 
     useDidShow(() => {
@@ -246,7 +257,7 @@ export default function Page() {
                     <View className="cell_center">
                         <Text className="cell_title">expire based on device time</Text>
                         {
-                            process.env.TARO_ENV == 'rn' ? <SwitchRN value={baseDeviceTime} onChange={(e) => {baseDeviceChanged(e.nativeEvent.value)}}/> : <Switch checked={baseDeviceTime} onChange={(e)=>{baseDeviceChanged(e.detail.value)}} />
+                            process.env.TARO_ENV == 'rn' ? <SwitchRN value={baseDeviceTime} onChange={(e) => { baseDeviceChanged(e.nativeEvent.value) }} /> : <Switch checked={baseDeviceTime} onChange={(e) => { baseDeviceChanged(e.detail.value) }} />
                         }
 
                     </View>

+ 5 - 0
src/pages/clock/ClockMain.tsx

@@ -541,6 +541,11 @@ export default function Page() {
         if (user.isLogin) {
             getHistory()
             userAccess().then(res => {
+                global.offsetTimestamp = 0;
+                const {server_timestamp} = res as any
+                if (server_timestamp){
+                    global.offsetTimestamp = new Date().getTime()-server_timestamp
+                }
                 dispatch(setAccessData(res))
                 setAccess(res)
             })

+ 3 - 1
src/pages/notification/setting.tsx

@@ -12,7 +12,7 @@ import { getLocalPush } from "@/features/trackTimeDuration/actions/TrackTimeActi
 import { useSelector } from "react-redux";
 import ProductList from "../store/product_list";
 import { jumpPage } from "@/features/trackTimeDuration/hooks/Common";
-import { userAccess } from "@/services/user";
+import { getPerm, userAccess } from "@/services/user";
 import '@/features/trackTimeDuration/components/CheckAccess.scss';
 import Modal from "@/components/layout/Modal.weapp";
 import Layout from "@/components/layout/layout";
@@ -102,6 +102,8 @@ export default function Page() {
 
     };
 
+    
+
     function getMemberStatus() {
         const { access } = accessObj
         if (access && access.member) {

+ 2 - 2
src/services/user.tsx

@@ -42,10 +42,10 @@ export const uploadPerm = (params: any) => {
     })
 }
 
-export const getPerm = (params: any) => {
+export const getPerm = () => {
     return new Promise((resolve, reject) => {
         request({
-            url: API_USER_PERMS, method: 'GET', data: { ...params }//{ push_enabled: push_enable }
+            url: API_USER_PERMS, method: 'GET', data: {}//{ push_enabled: push_enable }
         }).then(res => {
             resolve(res)
             // dispatch(loginSuccess(res));

Некоторые файлы не были показаны из-за большого количества измененных файлов