shenwu 6 months ago
parent
commit
6d830605b5
2 changed files with 14 additions and 10 deletions
  1. 6 7
      src/access.ts
  2. 8 3
      src/pages/User/Login/index.tsx

+ 6 - 7
src/access.ts

@@ -1,16 +1,15 @@
 /**
 /**
  * @see https://umijs.org/docs/max/access#access
  * @see https://umijs.org/docs/max/access#access
  * */
  * */
-export default function access(initialState: { menuType: "distributor" | "miniApp",selectApp:{id:number} }) {
+export default function access(initialState: { menuType: "distributor" | "miniApp", selectApp: { id: number }, currentUser: { manageAccount: boolean } }) {
   return {
   return {
     isShow: (route: { name: string; }) => {
     isShow: (route: { name: string; }) => {
-      if(initialState?.menuType){
-        const { menuType } = initialState;
+      if (initialState?.menuType) {
+        const { menuType, currentUser } = initialState;
         let regex = new RegExp(`^${menuType}\\.`);
         let regex = new RegExp(`^${menuType}\\.`);
-        // //与2取余为0时设为小说
-        // if(initialState.selectApp.id % 2 === 0 && route.name.match(/(\.long$)|(\.short$)/)){
-        //   return route.name.match(/\.long$/)
-        // }
+        if (route.name.match(/(distributor.appManage)|(distributor.account)/ig)) {
+          return currentUser?.manageAccount
+        }
         return route.name.match(regex)
         return route.name.match(regex)
       }
       }
       return false
       return false

+ 8 - 3
src/pages/User/Login/index.tsx

@@ -72,7 +72,7 @@ const LoginMessage: React.FC<{
 };
 };
 
 
 const Login: React.FC = () => {
 const Login: React.FC = () => {
-  const [userLoginState, setUserLoginState] = useState<API.LoginResult>({});
+  const [userLoginState, setUserLoginState] = useState<any>({});
   const [type, setType] = useState<string>('account');
   const [type, setType] = useState<string>('account');
   const { initialState, setInitialState } = useModel('@@initialState');
   const { initialState, setInitialState } = useModel('@@initialState');
   const { styles } = useStyles();
   const { styles } = useStyles();
@@ -109,7 +109,12 @@ const Login: React.FC = () => {
           await fetchUserInfo({ userInfo: res.data.userInfo, token: res.data.token });
           await fetchUserInfo({ userInfo: res.data.userInfo, token: res.data.token });
           console.log(res.data.token)
           console.log(res.data.token)
           localStorage.setItem("Token", res.data.token)
           localStorage.setItem("Token", res.data.token)
-          history.push(urlParams.get('redirect') || '/');
+          // 管理员跳转
+          if(res.data.userInfo?.manageAccount){
+            history.push(urlParams.get('redirect') || '/');
+          }else{//非管理员跳转
+            history.push('/distributor/appList')
+          }
         }
         }
       })
       })
       return
       return
@@ -163,7 +168,7 @@ const Login: React.FC = () => {
             // ]}
             // ]}
             loading={loginByPwdFn?.loading || loginByPCodeFn?.loading}
             loading={loginByPwdFn?.loading || loginByPCodeFn?.loading}
             onFinish={async (values) => {
             onFinish={async (values) => {
-              await handleSubmit(values as API.LoginParams);
+              await handleSubmit(values as any);
             }}
             }}
           >
           >
             <Tabs
             <Tabs