From bed9201624d77443c6151f47d34191c84ffc0256 Mon Sep 17 00:00:00 2001 From: wjc <1243177876@qq.com> Date: 星期三, 14 六月 2023 16:41:49 +0800 Subject: [PATCH] 2023年06月14日16:41:39 --- app/src/main/java/com/hdl/photovoltaic/other/HdlAccountLogic.java | 55 ++++++++++++++++++++++++++++++++++++++----------------- 1 files changed, 38 insertions(+), 17 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 27b8699..28b4233 100644 --- a/app/src/main/java/com/hdl/photovoltaic/other/HdlAccountLogic.java +++ b/app/src/main/java/com/hdl/photovoltaic/other/HdlAccountLogic.java @@ -3,10 +3,11 @@ import com.google.gson.Gson; import com.google.gson.JsonObject; -import com.hdl.photovoltaic.bean.LoginBean; -import com.hdl.photovoltaic.bean.LoginUserRegionBean; -import com.hdl.photovoltaic.bean.ResponsePack; -import com.hdl.photovoltaic.config.ConfigManagement; +import com.hdl.photovoltaic.ui.bean.LoginBean; +import com.hdl.photovoltaic.ui.bean.LoginUserRegionBean; +import com.hdl.photovoltaic.bean.HttpResponsePack; +import com.hdl.photovoltaic.config.AppConfigManage; +import com.hdl.photovoltaic.config.UserConfigManage; import com.hdl.photovoltaic.internet.HttpClient; import com.hdl.photovoltaic.internet.api.HttpApi; import com.hdl.photovoltaic.listener.BaseSuccessFailureCallBeak; @@ -16,12 +17,17 @@ import java.util.regex.Pattern; /** - * 鐧婚檰鐣岄潰鐨勯�昏緫 + * 鐧诲綍鐣岄潰鐨勯�昏緫 */ public class HdlAccountLogic { private static volatile HdlAccountLogic sHdlAccountLogic; + /** + * 鑾峰彇褰撳墠瀵硅薄 + * + * @return HdlAccountLogic + */ public static synchronized HdlAccountLogic getInstance() { if (sHdlAccountLogic == null) { synchronized (HdlAccountLogic.class) { @@ -36,25 +42,23 @@ /** - * 鍒濆鍖栬处鍙风殑Url鍖哄煙鍦板潃(鍙兘鐘舵�佺爜:Success NotAccount NotNetWork) + * 鍒濆鍖栬处鍙风殑Url鍖哄煙鍦板潃 * * @param i_account 璐﹀彿 */ public void regionByAccount(String i_account, CloudCallBeak<LoginUserRegionBean> cloudCallBeak) { JsonObject jsonObject = new JsonObject(); jsonObject.addProperty("account", i_account); - String full = ConfigManagement.getAPPRegionUrl() + HttpApi.POST_RegionByUserAccount; + String full = AppConfigManage.getAPPRegionUrl() + HttpApi.POST_RegionByUserAccount; HttpClient.getInstance().requestFullHttp(full, jsonObject.toString(), true, true, new BaseSuccessFailureCallBeak() { @Override - public void onSuccess(ResponsePack responsePack) { - if (responsePack.getData() != null) { + public void onSuccess(HttpResponsePack httpResponsePack) { + if (httpResponsePack != null && httpResponsePack.getData() != null) { Gson gson = new Gson(); - String json = gson.toJson(responsePack.getData()); + String json = gson.toJson(httpResponsePack.getData()); LoginUserRegionBean loginUserRegionBean = new Gson().fromJson(json, LoginUserRegionBean.class); if (cloudCallBeak != null) { cloudCallBeak.onSuccess(loginUserRegionBean); - } else { - cloudCallBeak.onFailure(new Exception()); } } } @@ -86,15 +90,14 @@ HttpClient.getInstance().requestHttp(requestUrl, json.toString(), true, true, new BaseSuccessFailureCallBeak() { @Override - public void onSuccess(ResponsePack responsePack) { - if (responsePack.getData() != null) { + public void onSuccess(HttpResponsePack httpResponsePack) { + if (httpResponsePack != null && httpResponsePack.getData() != null) { Gson gson = new Gson(); - String json = gson.toJson(responsePack.getData()); + String json = gson.toJson(httpResponsePack.getData()); LoginBean loginBean = new Gson().fromJson(json, LoginBean.class); + saveUserData(loginBean); if (cloudCallBeak != null) { cloudCallBeak.onSuccess(loginBean); - } else { - cloudCallBeak.onFailure(new Exception()); } } } @@ -120,5 +123,23 @@ return mailbox.matches(regex); } + /** + * 鐧诲綍鎴愬姛淇濆瓨 + */ + private void saveUserData(LoginBean obj) { + if (obj != null) { + UserConfigManage.getInstance().setLogin(true); + UserConfigManage.getInstance().setAcceiptPolicy(true); + UserConfigManage.getInstance().setLoginDateTime(System.currentTimeMillis()); + UserConfigManage.getInstance().setUserId(obj.getUserId()); + UserConfigManage.getInstance().setAccount(obj.getAccount()); + UserConfigManage.getInstance().setToken(obj.getAccessToken()); + UserConfigManage.getInstance().setHeaderPrefix(obj.getHeaderPrefix()); + UserConfigManage.getInstance().setRefreshToken(obj.getRefreshToken()); + boolean isUserId = UserConfigManage.getInstance().getUserId().equals(obj.getUserId()); + UserConfigManage.getInstance().setTheSameLoginAccount(isUserId); + } + + } } -- Gitblit v1.8.0