From 5d3efa4c93dde0cde474951e5310bb72ebbf4184 Mon Sep 17 00:00:00 2001
From: wjc <1243177876@qq.com>
Date: 星期三, 07 五月 2025 15:18:26 +0800
Subject: [PATCH] 2025年05月07日15:18:20 1.2.0

---
 app/src/main/java/com/hdl/photovoltaic/other/HdlMemberLogic.java |  304 ++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 277 insertions(+), 27 deletions(-)

diff --git a/app/src/main/java/com/hdl/photovoltaic/other/HdlMemberLogic.java b/app/src/main/java/com/hdl/photovoltaic/other/HdlMemberLogic.java
index 38c7558..e64ad2c 100644
--- a/app/src/main/java/com/hdl/photovoltaic/other/HdlMemberLogic.java
+++ b/app/src/main/java/com/hdl/photovoltaic/other/HdlMemberLogic.java
@@ -6,19 +6,29 @@
 import com.google.gson.JsonObject;
 import com.google.gson.reflect.TypeToken;
 import com.hdl.linkpm.sdk.core.exception.HDLException;
-import com.hdl.linkpm.sdk.user.HDLLinkPMUser;
-import com.hdl.linkpm.sdk.user.bean.HDLLoginBean;
-import com.hdl.linkpm.sdk.user.callback.ILoginCallBack;
+import com.hdl.photovoltaic.HDLApp;
+import com.hdl.photovoltaic.R;
 import com.hdl.photovoltaic.bean.PageNumberObject;
-import com.hdl.photovoltaic.config.UserConfigManage;
 import com.hdl.photovoltaic.internet.HttpClient;
 import com.hdl.photovoltaic.internet.api.HttpApi;
 import com.hdl.photovoltaic.listener.CloudCallBeak;
 import com.hdl.photovoltaic.ui.bean.CloudInverterDeviceBean;
+import com.hdl.photovoltaic.ui.bean.DeviceRemoteInfo;
+import com.hdl.photovoltaic.ui.bean.MemberBean;
 import com.hdl.photovoltaic.ui.bean.StaffBean;
+import com.hdl.photovoltaic.ui.bean.UserRightTypeBean;
+import com.hdl.photovoltaic.utils.AesUtils;
+import com.hdl.photovoltaic.utils.Md5Utils;
 
+import java.io.File;
+import java.io.FileOutputStream;
+import java.io.InputStream;
 import java.lang.reflect.Type;
+import java.util.ArrayList;
 import java.util.List;
+import java.util.concurrent.atomic.AtomicInteger;
+
+import okhttp3.ResponseBody;
 
 /**
  * 鎴愬憳閫昏緫
@@ -44,31 +54,26 @@
     }
 
     /**
-     * 鑾峰彇鍛樺伐鍒楄〃
+     * 鑾峰彇褰撳墠璐﹀彿鍦ㄥ叕鍙哥殑韬唤
      *
-     * @param pageNo        椤电爜
-     * @param pageSize      椤垫暟锛堜竴椤靛灏戞暟鎹級
      * @param cloudCallBeak -
      */
-    public void getStaffList(long pageNo, long pageSize, CloudCallBeak<PageNumberObject<List<StaffBean>>> cloudCallBeak) {
-        String requestUrl = "/home-wisdom/app/powerStation/user/manage/listByPage";// HttpApi.POST_PowerStation_List;
+    public void getUserRightType(CloudCallBeak<UserRightTypeBean> cloudCallBeak) {
+        String requestUrl = HttpApi.B_POST_GET_USERRIGHTTYPE;
         JsonObject json = new JsonObject();
-        json.addProperty("pageNo", pageNo);
-        json.addProperty("pageSize", pageNo);
         HttpClient.getInstance().requestHttp(requestUrl, json.toString(), new CloudCallBeak<String>() {
             @Override
             public void onSuccess(String jsonStr) {
                 if (TextUtils.isEmpty(jsonStr)) {
                     if (cloudCallBeak != null) {
-                        cloudCallBeak.onSuccess(new PageNumberObject<>());
+                        cloudCallBeak.onSuccess(new UserRightTypeBean());
                     }
                 }
                 Gson gson = new Gson();
-                Type type = new TypeToken<PageNumberObject<List<StaffBean>>>() {
-                }.getType();
-                PageNumberObject<List<StaffBean>> pageNumberObject = gson.fromJson(jsonStr, type);
+
+                UserRightTypeBean userRightTypeBean = gson.fromJson(jsonStr, UserRightTypeBean.class);
                 if (cloudCallBeak != null) {
-                    cloudCallBeak.onSuccess(pageNumberObject);
+                    cloudCallBeak.onSuccess(userRightTypeBean);
                 }
             }
 
@@ -83,15 +88,17 @@
     }
 
     /**
-     * 鑾峰彇鍛樺伐璇︽儏
+     * 鑾峰彇鍛樺伐鍒楄〃锛圔绔級
      *
-     * @param userId        -
+     * @param pageNo        椤电爜
+     * @param pageSize      椤垫暟锛堜竴椤靛灏戞暟鎹級
      * @param cloudCallBeak -
      */
-    public void getStaffInfo(String userId, CloudCallBeak<PageNumberObject<StaffBean>> cloudCallBeak) {
-        String requestUrl = "/home-wisdom/app/powerStation/user/manage/info";// HttpApi.POST_PowerStation_List;
+    public void getStaffList(long pageNo, long pageSize, CloudCallBeak<PageNumberObject<StaffBean>> cloudCallBeak) {
+        String requestUrl = HttpApi.B_POST_GET_LISTBYPAGE;
         JsonObject json = new JsonObject();
-        json.addProperty("userId", userId);
+        json.addProperty("pageNo", pageNo);
+        json.addProperty("pageSize", pageSize);
         HttpClient.getInstance().requestHttp(requestUrl, json.toString(), new CloudCallBeak<String>() {
             @Override
             public void onSuccess(String jsonStr) {
@@ -120,13 +127,49 @@
     }
 
     /**
-     * 鍛樺伐娣诲姞
+     * 鑾峰彇鍛樺伐璇︽儏锛圔绔級
+     *
+     * @param userId        -
+     * @param cloudCallBeak -
+     */
+    public void getStaffInfo(String userId, CloudCallBeak<StaffBean> cloudCallBeak) {
+        String requestUrl = HttpApi.B_POST_GET_MANAGE_INFO;
+        JsonObject json = new JsonObject();
+        json.addProperty("userId", userId);
+        HttpClient.getInstance().requestHttp(requestUrl, json.toString(), new CloudCallBeak<String>() {
+            @Override
+            public void onSuccess(String jsonStr) {
+                if (TextUtils.isEmpty(jsonStr)) {
+                    if (cloudCallBeak != null) {
+                        cloudCallBeak.onSuccess(new StaffBean());
+                    }
+                }
+                Gson gson = new Gson();
+
+                StaffBean staffBean = gson.fromJson(jsonStr, StaffBean.class);
+                if (cloudCallBeak != null) {
+                    cloudCallBeak.onSuccess(staffBean);
+                }
+            }
+
+            @Override
+            public void onFailure(HDLException e) {
+                if (cloudCallBeak != null) {
+                    cloudCallBeak.onFailure(e);
+                }
+            }
+        });
+
+    }
+
+    /**
+     * 鍛樺伐娣诲姞锛圔绔級
      *
      * @param staffBean     鍛樺伐瀵硅薄
      * @param cloudCallBeak -
      */
     public void getStaffAdd(StaffBean staffBean, CloudCallBeak<Boolean> cloudCallBeak) {
-        String requestUrl = "/home-wisdom/app/powerStation/user/manage/create";// HttpApi.POST_PowerStation_List;
+        String requestUrl = HttpApi.B_POST_GET_MANAGE_CREATE;
         JsonObject json = new JsonObject();
         if (!TextUtils.isEmpty(staffBean.getUserName())) {
             json.addProperty("userName", staffBean.getUserName());
@@ -159,13 +202,13 @@
     }
 
     /**
-     * 鍛樺伐缂栬緫
+     * 鍛樺伐缂栬緫锛圔绔級
      *
      * @param staffBean     鍛樺伐瀵硅薄
      * @param cloudCallBeak -
      */
     public void getStaffEdit(StaffBean staffBean, CloudCallBeak<Boolean> cloudCallBeak) {
-        String requestUrl = "/home-wisdom/app/powerStation/user/manage/edit";// HttpApi.POST_PowerStation_List;
+        String requestUrl = HttpApi.B_POST_GET_MANAGE_EDIT;
         JsonObject json = new JsonObject();
         if (!TextUtils.isEmpty(staffBean.getUserId())) {
             json.addProperty("userId", staffBean.getUserId());
@@ -201,13 +244,13 @@
     }
 
     /**
-     * 鍛樺伐鍒犻櫎
+     * 鍛樺伐鍒犻櫎锛圔绔級
      *
      * @param staffBean     鍛樺伐瀵硅薄
      * @param cloudCallBeak -
      */
     public void getStaffDelete(StaffBean staffBean, CloudCallBeak<Boolean> cloudCallBeak) {
-        String requestUrl = "/home-wisdom/app/powerStation/user/manage/delete";// HttpApi.POST_PowerStation_List;
+        String requestUrl = HttpApi.B_POST_GET_MANAGE_DELETE;
         JsonObject json = new JsonObject();
         json.addProperty("userId", staffBean.getUserId());
 
@@ -228,4 +271,211 @@
         });
 
     }
+
+
+    /**
+     * 鑾峰彇鎴愬憳鍒楄〃锛圕绔級
+     *
+     * @param memberBean    鎴愬憳瀵硅薄
+     * @param cloudCallBeak -
+     */
+    public void getMemberList(MemberBean memberBean, CloudCallBeak<List<MemberBean>> cloudCallBeak) {
+        String requestUrl = HttpApi.C_POST_MEMBER_LIST;
+        JsonObject json = new JsonObject();
+        json.addProperty("homeId", memberBean.getHomeId());
+        HttpClient.getInstance().requestHttp(requestUrl, json.toString(), new CloudCallBeak<String>() {
+            @Override
+            public void onSuccess(String jsonStr) {
+                if (TextUtils.isEmpty(jsonStr)) {
+                    if (cloudCallBeak != null) {
+                        cloudCallBeak.onSuccess(new ArrayList<>());
+                    }
+                }
+                Gson gson = new Gson();
+                Type type = new TypeToken<List<MemberBean>>() {
+                }.getType();
+                List<MemberBean> memberBeanList = gson.fromJson(jsonStr, type);
+                if (cloudCallBeak != null) {
+                    cloudCallBeak.onSuccess(memberBeanList);
+                }
+            }
+
+            @Override
+            public void onFailure(HDLException e) {
+                if (cloudCallBeak != null) {
+                    cloudCallBeak.onFailure(e);
+                }
+            }
+        });
+
+
+    }
+
+
+    /**
+     * 娣诲姞鎴愬憳锛圕绔級
+     *
+     * @param memberBean    鎴愬憳瀵硅薄
+     * @param cloudCallBeak -
+     */
+    public void getMemberAdd(MemberBean memberBean, CloudCallBeak<Boolean> cloudCallBeak) {
+        String requestUrl = HttpApi.C_POST_MEMBER_ADD;
+        JsonObject json = new JsonObject();
+        json.addProperty("homeId", memberBean.getHomeId());
+        json.addProperty("account", memberBean.getAccount());
+        json.addProperty("childAccountType", memberBean.getChildAccountType());////瀛愯处鎴风被鍨�(ORDINARY 锛氭櫘閫氭垚鍛�,DEBUG 锛� 璋冭瘯浜哄憳,ADMIN 锛� 绠$悊鍛�,VIEW : 浠呮煡鐪�)
+        json.addProperty("nickName", memberBean.getNickName());
+
+        HttpClient.getInstance().requestHttp(requestUrl, json.toString(), new CloudCallBeak<String>() {
+            @Override
+            public void onSuccess(String jsonStr) {
+                if (cloudCallBeak != null) {
+                    cloudCallBeak.onSuccess(true);
+                }
+            }
+
+            @Override
+            public void onFailure(HDLException e) {
+                if (cloudCallBeak != null) {
+                    cloudCallBeak.onFailure(e);
+                }
+            }
+        });
+
+    }
+
+    /**
+     * 缂栬緫鎴愬憳锛圕绔級
+     *
+     * @param memberBean    鎴愬憳瀵硅薄
+     * @param cloudCallBeak -
+     */
+    public void getMemberEdit(MemberBean memberBean, CloudCallBeak<Boolean> cloudCallBeak) {
+        String requestUrl = HttpApi.C_POST_MEMBER_EDIT;
+        JsonObject json = new JsonObject();
+        json.addProperty("homeId", memberBean.getHomeId());
+        json.addProperty("childAccountId", memberBean.getChildAccountId());
+        json.addProperty("childId", memberBean.getId());//鏌ユ壘瀛愯处鍙锋帴鍙h幏鍙栧埌鐨勬暟鎹紙涓婚敭id==childId锛�
+        json.addProperty("childAccountType", memberBean.getChildAccountType());////瀛愯处鎴风被鍨�(ORDINARY 锛氭櫘閫氭垚鍛�,DEBUG 锛� 璋冭瘯浜哄憳,ADMIN 锛� 绠$悊鍛�,VIEW : 浠呮煡鐪�)
+        json.addProperty("nickName", memberBean.getNickName());
+//        json.addProperty("isRemoteControl", memberBean.getNickName());//杩滅▼鎺у埗
+//        json.addProperty("isAllowCreateScene", memberBean.getNickName());//鍒涘缓鍦烘櫙
+
+        HttpClient.getInstance().requestHttp(requestUrl, json.toString(), new CloudCallBeak<String>() {
+            @Override
+            public void onSuccess(String jsonStr) {
+                if (cloudCallBeak != null) {
+                    cloudCallBeak.onSuccess(true);
+                }
+            }
+
+            @Override
+            public void onFailure(HDLException e) {
+                if (cloudCallBeak != null) {
+                    cloudCallBeak.onFailure(e);
+                }
+            }
+        });
+
+    }
+
+    /**
+     * 鍒犻櫎鎴愬憳锛圕绔級
+     *
+     * @param memberBean    鎴愬憳瀵硅薄
+     * @param cloudCallBeak -
+     */
+    public void getMemberDelete(MemberBean memberBean, CloudCallBeak<Boolean> cloudCallBeak) {
+        String requestUrl = HttpApi.C_POST_MEMBER_DELETE;
+        JsonObject json = new JsonObject();
+        json.addProperty("homeId", memberBean.getHomeId());
+        json.addProperty("childAccountId", memberBean.getChildAccountId());
+        json.addProperty("childId", memberBean.getId());//鏌ユ壘瀛愯处鍙锋帴鍙h幏鍙栧埌鐨勬暟鎹紙涓婚敭id==childId锛�
+
+        HttpClient.getInstance().requestHttp(requestUrl, json.toString(), new CloudCallBeak<String>() {
+            @Override
+            public void onSuccess(String jsonStr) {
+                if (cloudCallBeak != null) {
+                    cloudCallBeak.onSuccess(true);
+                }
+            }
+
+            @Override
+            public void onFailure(HDLException e) {
+                if (cloudCallBeak != null) {
+                    cloudCallBeak.onFailure(e);
+                }
+            }
+        });
+
+    }
+
+    /**
+     * 涓嬭浇鎴愬憳锛堝瓙璐﹀彿锛夊ご鍍�  宸蹭涪寮�
+     */
+    public void getHeadPIortrait(MemberBean memberBean, CloudCallBeak<byte[]> cloudCallBeak) {
+        String requestUrl = HttpApi.C_POST_HOME_GETHEADP脧ORTRAIT;
+        JsonObject json = new JsonObject();
+        json.addProperty("homeId", memberBean.getHomeId());
+        json.addProperty("childAccountId", memberBean.getChildAccountId());
+//        json.addProperty("childId", memberBean.getChildAccountId());//鏌ユ壘瀛愯处鍙锋帴鍙h幏鍙栧埌鐨勬暟鎹紙涓婚敭id==childId锛�
+        HttpClient.getInstance().downLoadFile(requestUrl, new CloudCallBeak<ResponseBody>() {
+            @Override
+            public void onSuccess(ResponseBody zipData) {
+                HdlThreadLogic.runSubThread(new Runnable() {
+                    @Override
+                    public void run() {
+                        byte[] buf = new byte[1204 * 4];
+                        int len = 0;
+                        try {
+                            long total = zipData.contentLength();
+                            if (total == 0) {
+                                if (cloudCallBeak != null) {
+                                    cloudCallBeak.onSuccess(new byte[]{});
+                                }
+                                return;
+                            }
+                            List<Byte> byteList = new ArrayList<>();
+                            InputStream is = zipData.byteStream();
+                            while ((len = is.read(buf)) != -1) {
+                                for (int i = 0; i < len; i++) {
+                                    byteList.add(buf[i]);
+                                }
+                            }
+                            is.close();
+                            if (byteList.size() == 0) {
+                                if (cloudCallBeak != null) {
+                                    cloudCallBeak.onSuccess(new byte[]{});
+                                }
+                                return;
+                            }
+                            byte[] newByte = new byte[byteList.size()];
+                            for (int i = 0; i < byteList.size(); i++) {
+                                newByte[i] = byteList.get(i);
+                            }
+                            if (cloudCallBeak != null) {
+                                cloudCallBeak.onSuccess(newByte);
+                            }
+                        } catch (Exception e) {
+                            if (cloudCallBeak != null) {
+                                cloudCallBeak.onSuccess(new byte[]{});
+                            }
+                        }
+                    }
+                });
+            }
+
+            @Override
+            public void onFailure(HDLException e) {
+                if (cloudCallBeak != null) {
+                    cloudCallBeak.onSuccess(new byte[]{});
+                }
+            }
+        });
+    }
+
+
 }
+
+
+

--
Gitblit v1.8.0