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