From 27d7958c1979a75cac2f820a75e6e6ac33652d63 Mon Sep 17 00:00:00 2001 From: wjc <1243177876@qq.com> Date: 星期五, 16 六月 2023 18:21:17 +0800 Subject: [PATCH] 2023年06月16日18:21:15 --- app/src/main/java/com/hdl/photovoltaic/other/HdlAccountLogic.java | 50 +++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 43 insertions(+), 7 deletions(-) diff --git a/app/src/main/java/com/hdl/photovoltaic/other/HdlAccountLogic.java b/app/src/main/java/com/hdl/photovoltaic/other/HdlAccountLogic.java index 04629d3..27d9bfd 100644 --- a/app/src/main/java/com/hdl/photovoltaic/other/HdlAccountLogic.java +++ b/app/src/main/java/com/hdl/photovoltaic/other/HdlAccountLogic.java @@ -3,7 +3,7 @@ import com.google.gson.Gson; import com.google.gson.JsonObject; -import com.hdl.photovoltaic.ui.bean.LoginBean; +import com.hdl.photovoltaic.ui.bean.LoginUserBean; import com.hdl.photovoltaic.ui.bean.LoginUserRegionBean; import com.hdl.photovoltaic.bean.HttpResponsePack; import com.hdl.photovoltaic.config.AppConfigManage; @@ -80,7 +80,7 @@ * @param loginPwd 瀵嗙爜 * @param cloudCallBeak - */ - public void loginByPassword(String account, String loginPwd, CloudCallBeak<LoginBean> cloudCallBeak) { + public void loginByPassword(String account, String loginPwd, CloudCallBeak<LoginUserBean> cloudCallBeak) { String requestUrl = HttpApi.POST_Login; JsonObject json = new JsonObject(); json.addProperty("account", account); @@ -94,10 +94,45 @@ if (httpResponsePack != null && httpResponsePack.getData() != null) { Gson gson = new Gson(); String json = gson.toJson(httpResponsePack.getData()); - LoginBean loginBean = new Gson().fromJson(json, LoginBean.class); - saveUserData(loginBean); + LoginUserBean loginUserBean = new Gson().fromJson(json, LoginUserBean.class); + saveUserData(loginUserBean); if (cloudCallBeak != null) { - cloudCallBeak.onSuccess(loginBean); + cloudCallBeak.onSuccess(loginUserBean); + } + } + } + + @Override + public void onFailure(Exception exception) { + if (cloudCallBeak != null) { + cloudCallBeak.onFailure(exception); + } + } + }); + } + + /** + * 鍒锋柊Token(B绔处鍙�) + * + * @param account 鎵嬫満鎴栬�呴偖绠� + * @param loginPwd 瀵嗙爜 + * @param cloudCallBeak - + */ + public void refreshToken(String account, String loginPwd, CloudCallBeak<LoginUserBean> cloudCallBeak) { + String requestUrl = HttpApi.POST_Login; + JsonObject json = new JsonObject(); + json.addProperty("grantType", "refresh_token"); + + HttpClient.getInstance().requestHttp(requestUrl, json.toString(), true, true, new BaseSuccessFailureCallBeak() { + @Override + public void onSuccess(HttpResponsePack httpResponsePack) { + if (httpResponsePack != null && httpResponsePack.getData() != null) { + Gson gson = new Gson(); + String json = gson.toJson(httpResponsePack.getData()); + LoginUserBean loginUserBean = new Gson().fromJson(json, LoginUserBean.class); + saveUserData(loginUserBean); + if (cloudCallBeak != null) { + cloudCallBeak.onSuccess(loginUserBean); } } } @@ -126,7 +161,7 @@ /** * 鐧诲綍鎴愬姛淇濆瓨鐧诲綍淇℃伅 */ - private void saveUserData(LoginBean obj) { + private void saveUserData(LoginUserBean obj) { if (obj != null) { UserConfigManage.getInstance().setLogin(true);//鏄惁鐧诲綍 UserConfigManage.getInstance().setAcceiptPolicy(true);//鏄惁閫夋嫨闅愮鏀跨瓥 @@ -135,11 +170,12 @@ UserConfigManage.getInstance().setAccount(obj.getAccount());//璐﹀彿 UserConfigManage.getInstance().setToken(obj.getAccessToken());//Token UserConfigManage.getInstance().setHeaderPrefix(obj.getHeaderPrefix());//璁よ瘉璇锋眰澶村墠缂�(搴曞眰璇锋眰缁熶竴鍔�) - UserConfigManage.getInstance().setRefreshToken(obj.getRefreshToken());//鍒锋柊Token + UserConfigManage.getInstance().setRefreshToken(obj.getRefreshToken());//鍒锋柊Token鐢ㄧ殑鍒锋柊Token鐢ㄧ殑 boolean isUserId = UserConfigManage.getInstance().getUserId().equals(obj.getUserId()); UserConfigManage.getInstance().setTheSameLoginAccount(isUserId);//涓庝笂涓�涓处鍙锋槸鍚﹀悓涓�涓� } } + } -- Gitblit v1.8.0