wuhb před 2 roky
rodič
revize
10a9e5e390

+ 71 - 49
app/src/main/java/com/qy/agv/activity/MainActivity.java

@@ -156,7 +156,9 @@ public class MainActivity extends BaseActivity {
         String userStr = CacheService.getInstance(context).getCache(CACHE_LOGIN_KEY, "user");
         if(!StringUtils.isEmpty(userStr)){
             user = new Gson().fromJson(userStr, UserModel.class);
-            checkToken(user.getLoginName(), user.getLoginPwd());
+            if(!StringUtils.isEmpty(user.getLoginPwd()) && !StringUtils.isEmpty(user.getLoginName())){
+                checkToken(user.getLoginName(), user.getLoginPwd());
+            }
         }
     }
 
@@ -218,61 +220,75 @@ public class MainActivity extends BaseActivity {
     public void checkToken(String loginName, String loginPwd) {
         MyProgress progress = MyProgress.getInstance();
         progress.show(context, "提示", "正在登录");
-        RequestParams params = httParams(Constant.LOG_IN);
-        params.addBodyParameter("grant_type", "password");
-        params.addBodyParameter("username", loginName);
-//      密码md5加密
-        String pwdMd5 = MD5Encryption.encrypt(loginPwd);
-        params.addBodyParameter("password", pwdMd5);
-        x.http().post(params, new Callback.CommonCallback<String>() {
-            @Override
-            public void onSuccess(String arg0) {
-                mylog.debug(arg0);
-                try {
-                    if (arg0.contains("error_description")) {
-                        JSONObject object = new JSONObject(arg0);
-                        ToastUtils.showToast(context, object.getString("error_description"));
-                    } else {
-                        user = new Gson().fromJson(arg0, UserModel.class);
-                        user.setLoginName(loginName);
-                        user.setLoginPwd(loginPwd);
-                        Constant.ACCESS_TOKEN = user.getAccess_token();
-                        Constant.REFRESH_TOKEN = user.getAccess_token();
-                        arg0 = new Gson().toJson(user);
-                        CacheService.getInstance(context).saveCache(CACHE_LOGIN_KEY, "user", arg0);
-                        if (user.getUser_id() != null) {
-                            if(popupWindow2 !=null) {
-                                popupWindow2.dismiss();
-                            }
-                            Constant.user = user;
-                            Object real_name_obj = user.getReal_name();
-                            if (real_name_obj!=null) {
-                                submit.setText(real_name_obj.toString());
+        try {
+            RequestParams params = httParams(Constant.LOG_IN);
+            params.addBodyParameter("grant_type", "password");
+            params.addBodyParameter("username", loginName);
+            if (StringUtils.isEmpty(loginName)) {
+                ToastUtils.showToast(context, "账号不能为空");
+                return;
+            }
+            if (StringUtils.isEmpty(loginPwd)) {
+                ToastUtils.showToast(context, "密码不能为空");
+                return;
+            }
+            //      密码md5加密
+            String pwdMd5 = MD5Encryption.encrypt(loginPwd);
+            params.addBodyParameter("password", pwdMd5);
+            x.http().post(params, new Callback.CommonCallback<String>() {
+                @Override
+                public void onSuccess(String arg0) {
+                    mylog.debug(arg0);
+                    try {
+                        if (arg0.contains("error_description")) {
+                            JSONObject object = new JSONObject(arg0);
+                            ToastUtils.showToast(context, object.getString("error_description"));
+                        } else {
+                            user = new Gson().fromJson(arg0, UserModel.class);
+                            user.setLoginName(loginName);
+                            user.setLoginPwd(loginPwd);
+                            Constant.ACCESS_TOKEN = user.getAccess_token();
+                            Constant.REFRESH_TOKEN = user.getAccess_token();
+                            arg0 = new Gson().toJson(user);
+                            CacheService.getInstance(context).saveCache(CACHE_LOGIN_KEY, "user", arg0);
+                            if (user.getUser_id() != null) {
+                                if (popupWindow2 != null) {
+                                    popupWindow2.dismiss();
+                                }
+                                Constant.user = user;
+                                Object real_name_obj = user.getReal_name();
+                                if (real_name_obj != null) {
+                                    submit.setText(real_name_obj.toString());
+                                }
+                                searchTask(0);
                             }
-                            searchTask(0);
                         }
+                    } catch (JSONException e) {
+                        e.printStackTrace();
+                        mylog.error(e);
                     }
-                } catch (JSONException e) {
-                    e.printStackTrace();
                 }
-            }
 
-            @Override
-            public void onError(Throwable ex, boolean isOnCallback) {
-                ex.printStackTrace();
-                HttpsUtil.parserError(MainActivity.this, ex);
-            }
+                @Override
+                public void onError(Throwable ex, boolean isOnCallback) {
+                    ex.printStackTrace();
+                    HttpsUtil.parserError(MainActivity.this, ex);
+                }
 
-            @Override
-            public void onFinished() {
-                progress.close();
-            }
+                @Override
+                public void onFinished() {
+                    progress.close();
+                }
 
-            @Override
-            public void onCancelled(CancelledException arg0) {
-                mylog.error("onRead:", arg0);
-            }
-        });
+                @Override
+                public void onCancelled(CancelledException arg0) {
+                    mylog.error("onRead:", arg0);
+                }
+            });
+        }catch (Exception e){
+            ToastUtils.showToast(context, "登录失败");
+            mylog.error(e);
+        }
     }
 
     private void push(String qrcode, String title){
@@ -739,6 +755,12 @@ public class MainActivity extends BaseActivity {
         View popup_login_view= LayoutInflater.from(context).inflate(R.layout.popupwindow_login,null);
         EditText loginName = popup_login_view.findViewById(R.id.tv_login_name);
         EditText loginPassword = popup_login_view.findViewById(R.id.tv_login_password);
+        String userStr = CacheService.getInstance(context).getCache(CACHE_LOGIN_KEY, "user");
+        if(!StringUtils.isEmpty(userStr)){
+            user = new Gson().fromJson(userStr, UserModel.class);
+            loginName.setText(user.getLoginName());
+            loginPassword.setText(user.getLoginPwd());
+        }
         Button cancel = popup_login_view.findViewById(R.id.bt_cancel);
         Button ok = popup_login_view.findViewById(R.id.bt_ok);
         cancel.setOnClickListener(v -> {