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