From 80f2ca2df62ff1cd03046864af504245be078eb2 Mon Sep 17 00:00:00 2001 From: wjc <1243177876@qq.com> Date: 星期四, 05 六月 2025 10:37:28 +0800 Subject: [PATCH] 2025年06月05日10:37:26 --- app/src/main/java/com/hdl/photovoltaic/other/HdlMemberLogic.java | 100 ++++++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 88 insertions(+), 12 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 76c4b49..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,17 +6,29 @@ import com.google.gson.JsonObject; import com.google.gson.reflect.TypeToken; import com.hdl.linkpm.sdk.core.exception.HDLException; +import com.hdl.photovoltaic.HDLApp; +import com.hdl.photovoltaic.R; import com.hdl.photovoltaic.bean.PageNumberObject; 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; /** * 鎴愬憳閫昏緫 @@ -82,11 +94,11 @@ * @param pageSize 椤垫暟锛堜竴椤靛灏戞暟鎹級 * @param cloudCallBeak - */ - public void getStaffList(long pageNo, long pageSize, CloudCallBeak<PageNumberObject<List<StaffBean>>> cloudCallBeak) { + public void getStaffList(long pageNo, long pageSize, CloudCallBeak<PageNumberObject<StaffBean>> cloudCallBeak) { String requestUrl = HttpApi.B_POST_GET_LISTBYPAGE; JsonObject json = new JsonObject(); json.addProperty("pageNo", pageNo); - json.addProperty("pageSize", pageNo); + json.addProperty("pageSize", pageSize); HttpClient.getInstance().requestHttp(requestUrl, json.toString(), new CloudCallBeak<String>() { @Override public void onSuccess(String jsonStr) { @@ -96,9 +108,9 @@ } } Gson gson = new Gson(); - Type type = new TypeToken<PageNumberObject<List<StaffBean>>>() { + Type type = new TypeToken<PageNumberObject<StaffBean>>() { }.getType(); - PageNumberObject<List<StaffBean>> pageNumberObject = gson.fromJson(jsonStr, type); + PageNumberObject<StaffBean> pageNumberObject = gson.fromJson(jsonStr, type); if (cloudCallBeak != null) { cloudCallBeak.onSuccess(pageNumberObject); } @@ -120,7 +132,7 @@ * @param userId - * @param cloudCallBeak - */ - public void getStaffInfo(String userId, CloudCallBeak<PageNumberObject<StaffBean>> 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); @@ -129,15 +141,14 @@ public void onSuccess(String jsonStr) { if (TextUtils.isEmpty(jsonStr)) { if (cloudCallBeak != null) { - cloudCallBeak.onSuccess(new PageNumberObject<>()); + cloudCallBeak.onSuccess(new StaffBean()); } } Gson gson = new Gson(); - Type type = new TypeToken<PageNumberObject<StaffBean>>() { - }.getType(); - PageNumberObject<StaffBean> pageNumberObject = gson.fromJson(jsonStr, type); + + StaffBean staffBean = gson.fromJson(jsonStr, StaffBean.class); if (cloudCallBeak != null) { - cloudCallBeak.onSuccess(pageNumberObject); + cloudCallBeak.onSuccess(staffBean); } } @@ -262,7 +273,6 @@ } - /** * 鑾峰彇鎴愬憳鍒楄〃锛圕绔級 * @@ -273,7 +283,6 @@ 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) { @@ -299,7 +308,9 @@ } }); + } + /** * 娣诲姞鎴愬憳锛圕绔級 @@ -399,7 +410,72 @@ } + /** + * 涓嬭浇鎴愬憳锛堝瓙璐﹀彿锛夊ご鍍� 宸蹭涪寮� + */ + 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