From d8d41b0623146ec890ec9191b613c0e8f13197dd Mon Sep 17 00:00:00 2001
From: mac <user@users-MacBook-Pro.local>
Date: 星期三, 12 六月 2024 14:53:37 +0800
Subject: [PATCH] 2024年06月12日14:53:31
---
app/src/main/java/com/hdl/photovoltaic/other/HdlMemberLogic.java | 298 +++++++++++++++++++++-
app/src/main/java/com/hdl/photovoltaic/ui/bean/MemberBean.java | 177 +++++++++++++
app/src/main/java/com/hdl/photovoltaic/internet/api/HttpApi.java | 34 ++
app/src/main/java/com/hdl/photovoltaic/uni/HDLUniMP.java | 16 +
app/src/main/res/values/strings.xml | 2
app/src/main/java/com/hdl/photovoltaic/ui/bean/QrCodeBean.java | 46 +++
app/src/main/java/com/hdl/photovoltaic/ui/bean/UserRightTypeBean.java | 15 +
app/src/main/java/com/hdl/photovoltaic/enums/ChildAccountType.java | 11
app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java | 45 +++
app/src/main/java/com/hdl/photovoltaic/other/HdlDeviceLogic.java | 88 ++++--
10 files changed, 680 insertions(+), 52 deletions(-)
diff --git a/app/src/main/java/com/hdl/photovoltaic/enums/ChildAccountType.java b/app/src/main/java/com/hdl/photovoltaic/enums/ChildAccountType.java
new file mode 100644
index 0000000..434324a
--- /dev/null
+++ b/app/src/main/java/com/hdl/photovoltaic/enums/ChildAccountType.java
@@ -0,0 +1,11 @@
+package com.hdl.photovoltaic.enums;
+
+/**
+ * 瀛愯处鎴风被鍨�
+ */
+public @interface ChildAccountType {
+ String ORDINARY = "ORDINARY";//鏅�氭垚鍛�
+ String DEBUG = "DEBUG";//璋冭瘯浜哄憳
+ String ADMIN = "ADMIN";//绠$悊鍛�
+ String VIEW = "VIEW";//浠呮煡鐪�
+}
diff --git a/app/src/main/java/com/hdl/photovoltaic/internet/api/HttpApi.java b/app/src/main/java/com/hdl/photovoltaic/internet/api/HttpApi.java
index f4a2918..4f2ed33 100644
--- a/app/src/main/java/com/hdl/photovoltaic/internet/api/HttpApi.java
+++ b/app/src/main/java/com/hdl/photovoltaic/internet/api/HttpApi.java
@@ -55,16 +55,17 @@
public static final String POST_Device_Add = "/home-wisdom/program/device/independentRegister";
//鎵归噺娣诲姞閫嗗彉鍣�
public static final String POST_Device_Add_All = "/home-wisdom/program/device/batchIndependentRegister";
- //鑾峰彇閫嗗彉鍣ㄥ垪琛�
+ //鑾峰彇(浜戠)閫嗗彉鍣ㄥ垪琛�
public static final String POST_Device_List = "/home-wisdom/app/device/inverter/list";
- //鍒犻櫎閫嗗彉鍣�
- public static final String POST_Device_Remove = "/home-wisdom/app/device/remove";
+ //鍒犲垹闄ら�嗗彉鍣ㄥ強涓嬫寕璁惧
+ public static final String POST_Device_Remove = "/home-wisdom/app/powerStation/device/delete";
//鑾峰彇涓嬫寕璁惧鍒楄〃
public static final String POST_Device_ChildDevices_List = "/home-wisdom/app/powerStation/childDevices";
//鍏ㄩ噺鏇存柊OID
public static final String POST_Device_Oid = "/home-wisdom/program/device/oid/add";
//璁惧鍩烘湰淇℃伅(oid)澧為噺娣诲姞
public static final String POST_Device_IncrAdd = "/home-wisdom/program/device/oid/incrAdd";
+ public static final String POST_Device_Rename = "/home-wisdom/app/powerStation/device/rename";
//鑾峰彇閫嗗彉鍣�(鑾峰彇璁惧杩滅▼閫氳淇℃伅)
public static final String POST_Device_RemoteInfo = "/home-wisdom/program/device/remoteInfo";
//璁惧鍩烘湰淇℃伅鍒楄〃(oid)鑾峰彇
@@ -121,6 +122,18 @@
public static final String B_POST_GET_USERINFO = "/basis-footstone/mgmt/user/oauth/getUserInfo";
//鑱旂郴鎴戜滑
public static final String B_POST_GET_UTIL_CONTACT = "/home-wisdom/app/powerStation/util/contact";
+ //鑾峰彇褰撳墠璐﹀彿鍦ㄥ叕鍙哥殑韬唤
+ public static final String B_POST_GET_USERRIGHTTYPE = "/home-wisdom/app/powerStation/user/manage/userRightType";
+ //鑾峰彇鍛樺伐鍒楄〃
+ public static final String B_POST_GET_LISTBYPAGE = "/home-wisdom/app/powerStation/user/manage/listByPage";
+ //鑾峰彇鍛樺伐璇︽儏
+ public static final String B_POST_GET_MANAGE_INFO = "/home-wisdom/app/powerStation/user/manage/info";
+ //鍛樺伐娣诲姞锛圔绔級
+ public static final String B_POST_GET_MANAGE_CREATE = "/home-wisdom/app/powerStation/user/manage/create";
+ //鍛樺伐缂栬緫锛圔绔級
+ public static final String B_POST_GET_MANAGE_EDIT = "/home-wisdom/app/powerStation/user/manage/edit";
+ //鍛樺伐鍒犻櫎锛圔绔級
+ public static final String B_POST_GET_MANAGE_DELETE = "/home-wisdom/app/powerStation/user/manage/delete";
//閫�鍑虹櫥褰�
@@ -130,8 +143,11 @@
public static final String POST_deviceList = "/home-wisdom/app/powerStation/deviceList";
//鐢电珯鐘舵�佹瑙�(瀹夎鍟�)
public static final String POST_statusOverview = "/home-wisdom/app/powerStation/statusOverview";
+ //鑾峰彇鐢电珯浜や粯浜岀淮鐮�(瀹夎鍟�)
+ public static final String POST_getDeliveryUrlQrcode = "/home-wisdom/app/powerStation/getDeliveryUrlQrcode";
-
+ //鐢电珯鎵嬪姩浜や粯(瀹夎鍟�)
+ public static final String POST_deliverToAccount = "/home-wisdom/app/powerStation/deliverToAccount";
//endregion
@@ -159,6 +175,16 @@
public static final String C_POST_MEMBERINFO_BINDWITHACCOUNT = "/smart-footstone/member/memberInfo/bindWithAccount";
//瑙g粦璁よ瘉(鎵嬫満/閭)
public static final String C_POST_MEMBERINFO_UNBINDWITHACCOUNT = "/smart-footstone/member/memberInfo/unbindWithAccount";
+ //鎴愬憳鍒楄〃
+ public static final String C_POST_MEMBER_LIST = "/home-wisdom/app/child/account/findAll";
+ //娣诲姞鎴愬憳
+ public static final String C_POST_MEMBER_ADD = "/home-wisdom/app/child/account/add";
+ //缂栬緫鎴愬憳
+ public static final String C_POST_MEMBER_EDIT = "/home-wisdom/app/child/account/update";
+ //鍒犻櫎鎴愬憳
+ public static final String C_POST_MEMBER_DELETE = "/home-wisdom/app/child/account/delete";
+ //鐢电珯鎺堟潈瀹夎鍟�
+ public static final String C_POST_HOME_UPDATEDEBUGPERM = "/home-wisdom/app/home/updateDebugPerm";
//endregion
diff --git a/app/src/main/java/com/hdl/photovoltaic/other/HdlDeviceLogic.java b/app/src/main/java/com/hdl/photovoltaic/other/HdlDeviceLogic.java
index 67a3800..bb731c8 100644
--- a/app/src/main/java/com/hdl/photovoltaic/other/HdlDeviceLogic.java
+++ b/app/src/main/java/com/hdl/photovoltaic/other/HdlDeviceLogic.java
@@ -159,6 +159,28 @@
}
/**
+ * 娣诲姞銆愯澶囧垪琛ㄣ�戝埌鏈湴缂撳瓨
+ *
+ * @param list -璁惧鍒楄〃
+ */
+ public void setListDevice(List<CloudInverterDeviceBean> list) {
+ try {
+ if (list == null || list.size() == 0) {
+ return;
+ }
+ if (this.mListDevice.size() == 0) {
+ this.mListDevice.addAll(list);
+ return;
+ }
+ for (int i = 0; i < list.size(); i++) {
+ this.setSingleDevice(list.get(i));
+ }
+ } catch (Exception ignored) {
+ }
+ }
+
+
+ /**
* 鑾峰彇璁惧鍒楄〃(瀹夎鍟�)
*
* @param searchTxt 鎼滅储鍐呭
@@ -198,28 +220,6 @@
}
}
});
- }
-
-
- /**
- * 娣诲姞銆愯澶囧垪琛ㄣ�戝埌鏈湴缂撳瓨
- *
- * @param list -璁惧鍒楄〃
- */
- public void setListDevice(List<CloudInverterDeviceBean> list) {
- try {
- if (list == null || list.size() == 0) {
- return;
- }
- if (this.mListDevice.size() == 0) {
- this.mListDevice.addAll(list);
- return;
- }
- for (int i = 0; i < list.size(); i++) {
- this.setSingleDevice(list.get(i));
- }
- } catch (Exception ignored) {
- }
}
/**
@@ -709,6 +709,42 @@
}
+ /**
+ * 淇敼璁惧鍚嶇О閫嗗彉鍣˙MS鐢垫睜鍖�
+ * 鎻忚堪: 淇敼璁惧鍚嶇О锛屾敮鎸侀�嗗彉鍣紝BMS锛岀數姹犲寘璁惧鍚嶇О淇敼
+ *
+ * @param homeId 浣忓畢id
+ * @param deviceType 璁惧绫诲瀷(INV:閫嗗彉鍣�,BMS:BMS鎺у埗鐩�,BATTERY:鐢垫睜鍗曞厓)
+ * @param deviceId 璁惧id(deviceType = INV 鏄�嗗彉鍣╠eviceId;deviceType = BMS 鏄疊MS鐨刣eviceOidId;deviceType = BATTERY 鏄數姹犲寘鐨刣eviceOidId)
+ * @param cloudCallBeak 鍥炶皟update
+ */
+ public void setRename(String homeId, String deviceType, String deviceId, String name, CloudCallBeak<Boolean> cloudCallBeak) {
+ String requestUrl = HttpApi.POST_Device_Rename;
+ JsonObject json = new JsonObject();
+ json.addProperty("homeId", homeId);
+ json.addProperty("name", name);
+ json.addProperty("deviceType", deviceType);//璁惧绫诲瀷(INV:閫嗗彉鍣�,BMS:BMS鎺у埗鐩�,BATTERY:鐢垫睜鍗曞厓)
+ json.addProperty("deviceId", deviceId);//璁惧id(deviceType = INV 鏄�嗗彉鍣╠eviceId;deviceType = BMS 鏄疊MS鐨刣eviceOidId;deviceType = BATTERY 鏄數姹犲寘鐨刣eviceOidId)
+ // json.addProperty("zoneType", "password");//鍖哄煙
+ HttpClient.getInstance().requestHttp(requestUrl, json.toString(), new CloudCallBeak<String>() {
+ @Override
+ public void onSuccess(String str) {
+
+ if (cloudCallBeak != null) {
+ cloudCallBeak.onSuccess(true);
+ }
+ }
+
+ @Override
+ public void onFailure(HDLException e) {
+ if (cloudCallBeak != null) {
+ cloudCallBeak.onFailure(e);
+ }
+ }
+ });
+
+ }
+
/**
* 璁剧疆缃戝叧杩滅▼鍙傛暟
@@ -999,7 +1035,7 @@
* @param cloudCallBeak 杩斿洖閫嗗彉鍣ㄥ垪琛�
*/
public void getCurrentHomeLocalAndCloudGatewayList(String homeId, CloudCallBeak<List<GatewayBean>> cloudCallBeak) {
- HdlDeviceLogic.getInstance().searchCurrentHomeGateway(homeId,new GatewayCallBack() {
+ HdlDeviceLogic.getInstance().searchCurrentHomeGateway(homeId, new GatewayCallBack() {
@Override
public void onSuccess(List<GatewayBean> gatewayBeanList) {
//灞�鍩熺綉鏈�2绉嶆儏鍐�(1:鏈夊眬鍩熺綉锛屾湁澶栫綉锛�2:鏈夊眬鍩熺綉锛屾病鏈夊缃�);
@@ -1201,7 +1237,7 @@
*
* @param gatewayCallBack -
*/
- public void searchCurrentHomeGateway(String homeId,GatewayCallBack gatewayCallBack) {
+ public void searchCurrentHomeGateway(String homeId, GatewayCallBack gatewayCallBack) {
List<String> spks = this.getGatewaySpk();
//缃戝叧鎼滅储
HDLLinkLocalGateway.getInstance().refreshGatewayByHomeIdAndSpk(homeId, spks, true, gatewayCallBack);
@@ -1225,8 +1261,8 @@
* @param deviceMac 璁惧mac锛�
* @param callBeak 杩斿洖 true=鏈湴杩炴帴;false=杩滅▼;
*/
- public void isLocalConnect(String homeId,String deviceMac, CloudCallBeak<Boolean> callBeak) {
- searchCurrentHomeGateway(homeId,new GatewayCallBack() {
+ public void isLocalConnect(String homeId, String deviceMac, CloudCallBeak<Boolean> callBeak) {
+ searchCurrentHomeGateway(homeId, new GatewayCallBack() {
@Override
public void onSuccess(List<GatewayBean> gatewayBeanList) {
if (gatewayBeanList == null || gatewayBeanList.size() == 0) {
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..67ea58a 100644
--- a/app/src/main/java/com/hdl/photovoltaic/other/HdlMemberLogic.java
+++ b/app/src/main/java/com/hdl/photovoltaic/other/HdlMemberLogic.java
@@ -6,18 +6,16 @@
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.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.MemberBean;
import com.hdl.photovoltaic.ui.bean.StaffBean;
+import com.hdl.photovoltaic.ui.bean.UserRightTypeBean;
import java.lang.reflect.Type;
+import java.util.ArrayList;
import java.util.List;
/**
@@ -44,14 +42,49 @@
}
/**
- * 鑾峰彇鍛樺伐鍒楄〃
+ * 鑾峰彇褰撳墠璐﹀彿鍦ㄥ叕鍙哥殑韬唤
+ *
+ * @param cloudCallBeak -
+ */
+ public void getUserRightType(CloudCallBeak<PageNumberObject<UserRightTypeBean>> cloudCallBeak) {
+ String requestUrl = HttpApi.B_POST_GET_USERRIGHTTYPE;
+ JsonObject json = new JsonObject();
+ 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<>());
+ }
+ }
+ Gson gson = new Gson();
+ Type type = new TypeToken<PageNumberObject<UserRightTypeBean>>() {
+ }.getType();
+ PageNumberObject<UserRightTypeBean> pageNumberObject = gson.fromJson(jsonStr, type);
+ if (cloudCallBeak != null) {
+ cloudCallBeak.onSuccess(pageNumberObject);
+ }
+ }
+
+ @Override
+ public void onFailure(HDLException e) {
+ if (cloudCallBeak != null) {
+ cloudCallBeak.onFailure(e);
+ }
+ }
+ });
+
+ }
+
+ /**
+ * 鑾峰彇鍛樺伐鍒楄〃锛圔绔級
*
* @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;
+ String requestUrl = HttpApi.B_POST_GET_LISTBYPAGE;
JsonObject json = new JsonObject();
json.addProperty("pageNo", pageNo);
json.addProperty("pageSize", pageNo);
@@ -83,13 +116,13 @@
}
/**
- * 鑾峰彇鍛樺伐璇︽儏
+ * 鑾峰彇鍛樺伐璇︽儏锛圔绔級
*
* @param userId -
* @param cloudCallBeak -
*/
public void getStaffInfo(String userId, CloudCallBeak<PageNumberObject<StaffBean>> cloudCallBeak) {
- String requestUrl = "/home-wisdom/app/powerStation/user/manage/info";// HttpApi.POST_PowerStation_List;
+ 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>() {
@@ -120,13 +153,13 @@
}
/**
- * 鍛樺伐娣诲姞
+ * 鍛樺伐娣诲姞锛圔绔級
*
* @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 +192,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 +234,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 +261,239 @@
});
}
+
+ /**
+ * 鑾峰彇鐢电珯浜や粯浜岀淮鐮侊紙B绔級
+ * 鎻忚堪锛氬畨瑁呭晢鐢电珯鐨勪氦浠樹簩缁寸爜
+ *
+ * @param homeId 鐢电珯id
+ * @param cloudCallBeak -
+ */
+ public void getDeliveryUrlQrcode(String homeId, CloudCallBeak<String> cloudCallBeak) {
+ String requestUrl = HttpApi.POST_getDeliveryUrlQrcode;
+ JsonObject json = new JsonObject();
+ json.addProperty("homeId", homeId);
+// json.addProperty("zoneType", memberBean.getId());//鍖哄煙
+
+ HttpClient.getInstance().requestHttp(requestUrl, json.toString(), new CloudCallBeak<String>() {
+ @Override
+ public void onSuccess(String jsonStr) {
+ if (cloudCallBeak != null) {
+ cloudCallBeak.onSuccess(jsonStr);
+ }
+ }
+
+ @Override
+ public void onFailure(HDLException e) {
+ if (cloudCallBeak != null) {
+ cloudCallBeak.onFailure(e);
+ }
+ }
+ });
+
+ }
+
+ /**
+ * 鐢电珯鎵嬪姩浜や粯(B绔�)
+ * 鎻忚堪锛氬畨瑁呭晢鎵嬪姩浜や粯鐢电珯缁欐寚瀹氱殑C绔处鍙�
+ *
+ * @param homeId 鐢电珯id
+ * @param account C绔处鍙�
+ * @param cloudCallBeak -
+ */
+ public void getDeliverToAccount(String homeId, String account, CloudCallBeak<Boolean> cloudCallBeak) {
+ String requestUrl = HttpApi.POST_deliverToAccount;
+ JsonObject json = new JsonObject();
+ json.addProperty("homeId", homeId);
+ json.addProperty("account", account);//C绔处鍙�
+// json.addProperty("zoneType", memberBean.getId());//鍖哄煙
+
+ 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 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);
+ }
+ }
+ });
+
+ }
+
+ /**
+ * 鐢电珯鎺堟潈瀹夎鍟嗭紙C绔級
+ * 鎻忚堪锛氫氦浠樺悗鐨勪綇瀹咃紝C绔敤鎴峰彲浠ュ紑鍚巿鏉冨悗瀹夎鍟嗗彲浠ョ户缁皟璇曠數绔�
+ *
+ * @param homeId 鐢电珯id
+ * @param debugPerm 鎺堟潈鐘舵�侊紙true鍙互缁х画璋冭瘯锛�
+ * @param cloudCallBeak -
+ */
+ public void homeUpdateDebugPerm(String homeId, boolean debugPerm, CloudCallBeak<Boolean> cloudCallBeak) {
+ String requestUrl = HttpApi.C_POST_HOME_UPDATEDEBUGPERM;
+ JsonObject json = new JsonObject();
+ json.addProperty("homeId", homeId);
+ json.addProperty("debugPerm", debugPerm);
+// json.addProperty("zoneType", memberBean.getId());//鍖哄煙
+
+ 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);
+ }
+ }
+ });
+
+ }
+
+
}
diff --git a/app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java b/app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java
index 174df66..4cc3c6e 100644
--- a/app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java
+++ b/app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java
@@ -282,7 +282,11 @@
this.setInverterDeviceRemoteInfo(mode_type, data, callback);
}
break;
-
+ //璁惧鍚嶇О淇敼(淇敼鏄簯绔痮id鍚嶇О锛岃澶囦娇鐢╩odbus鍗忚淇敼)
+ case HDLUniMP.UNI_EVENT_REPLY_DEVICE_EDIT_NAME: {
+ this.uniOidEditName(mode_type, data, callback);
+ }
+ break;
}
} else if (HDLUniMP.UNI_EVENT_REPLY_WIFI_MODEL.equals(topic)) {
@@ -462,6 +466,11 @@
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.setClass(HDLApp.getInstance(), SetActivity.class);
HDLApp.getInstance().startActivity(intent);
+
+ }
+ break;
+ //鎴愬憳鍒楄〃
+ case HDLUniMP.UNI_EVENT_REPLY_MEMBER_LIST: {
}
break;
@@ -802,7 +811,7 @@
String module = "FW#" + imageId;//妯″潡淇℃伅(HW锛氱‖浠�)
//鍗囩骇鏈湴浼樺厛->浜戠鍗囩骇
- HdlDeviceLogic.getInstance().isLocalConnect(homeId,deviceMac, new CloudCallBeak<Boolean>() {
+ HdlDeviceLogic.getInstance().isLocalConnect(homeId, deviceMac, new CloudCallBeak<Boolean>() {
@Override
public void onSuccess(Boolean b) {
if (b) {
@@ -1054,7 +1063,7 @@
String imageId = getKeyValue("imageId", getKeyValue("data", data));//鍥轰欢闀滃儚id
String module = driverCode + "#" + imageId;
//鍗囩骇鏈湴浼樺厛->浜戠鍗囩骇
- HdlDeviceLogic.getInstance().isLocalConnect(homeId,deviceMac, new CloudCallBeak<Boolean>() {
+ HdlDeviceLogic.getInstance().isLocalConnect(homeId, deviceMac, new CloudCallBeak<Boolean>() {
@Override
public void onSuccess(Boolean b) {
if (b) {
@@ -1568,7 +1577,10 @@
*/
private void uniDelInverterDevice(String type, Object data, DCUniMPJSCallback callback) {
String deviceId = getKeyValue("deviceId", getKeyValue("data", data));
- String homeId = UserConfigManage.getInstance().getHomeId();
+ String homeId = getKeyValue("homeId", getKeyValue("data", data));
+ if (TextUtils.isEmpty(homeId)) {
+ homeId = UserConfigManage.getInstance().getHomeId();
+ }
HdlDeviceLogic.getInstance().delInverterDevice(homeId, deviceId, new CloudCallBeak<Boolean>() {
@Override
public void onSuccess(Boolean obj) {
@@ -1863,6 +1875,31 @@
});
}
+ /**
+ * 淇敼璁惧鍚嶇О閫嗗彉鍣˙MS鐢垫睜鍖�
+ *
+ * @param type 璐﹀彿
+ * @param data uni璇锋眰鏁版嵁
+ * @param callback uni鍥炶皟
+ */
+ public void uniOidEditName(String type, Object data, DCUniMPJSCallback callback) {
+ String homeId = getKeyValue("homeId", getKeyValue("data", data));
+ String deviceType = getKeyValue("deviceType", getKeyValue("data", data));
+ String deviceId = getKeyValue("deviceId", getKeyValue("data", data));
+ String name = getKeyValue("name", getKeyValue("data", data));
+ HdlDeviceLogic.getInstance().setRename(homeId, deviceType, deviceId, name, new CloudCallBeak<Boolean>() {
+ @Override
+ public void onSuccess(Boolean obj) {
+ uniCallbackData(type, obj, callback);
+ }
+
+ @Override
+ public void onFailure(HDLException e) {
+ uniCallbackData(type, null, e.getCode(), e.getMsg(), callback);
+ }
+ });
+ }
+
/**
* 鍙戦�乵odbus鍗忚鏁版嵁
diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/bean/MemberBean.java b/app/src/main/java/com/hdl/photovoltaic/ui/bean/MemberBean.java
new file mode 100644
index 0000000..ab1a19a
--- /dev/null
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/bean/MemberBean.java
@@ -0,0 +1,177 @@
+package com.hdl.photovoltaic.ui.bean;
+
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * 鎴愬憳鐨勫疄浣�
+ */
+public class MemberBean implements Serializable {
+
+ private String id;//涓婚敭
+ private String account;//瀛愮敤鎴� phone 鎴栬�� email
+ private String childAccountType;//瀛愯处鎴风被鍨�(ORDINARY 锛氭櫘閫氭垚鍛�,DEBUG 锛� 璋冭瘯浜哄憳,ADMIN 锛� 绠$悊鍛�,VIEW : 浠呮煡鐪�)
+
+ private String childAccountId;//瀛愯处鍙穒d
+ private String childAccountRegionId;//瀛愯处鍙峰尯鍩焛d
+ private String homeId;//鐢电珯id
+ private String homeRegionId;//浣忓畢鍖哄煙id
+ private boolean isRemoteControl;//杩滅▼鎺у埗 (榛樿true)
+ private String nickName;//瀛愯处鍙锋樀绉�
+ private String faceUrl;//鎴愬憳浜鸿劯鍥剧墖,鍥剧墖url鎴栬�呭浘鐗�,base64浼犲浘鐗嘼ase64鏃跺浐瀹氫紶jpg鏍煎紡鐨勫浘鐗�
+
+ private String createPeople;// 鍒涘缓浜篒D
+ private boolean isAllowCreateScene;//鍒涘缓鍦烘櫙
+ private String modifyPeople;//鏈�鍚庝慨鏀逛汉ID
+ private String modifyTime;//鏈�鍚庝慨鏀规椂闂�
+ private String region;//鏈嶅姟鍖哄煙
+
+ private int isDelete;//isDelete 0:鏈垹闄� 1:鍒犻櫎
+
+ private List<String> privileges = new ArrayList<>();//鏉冮檺
+
+ public int getIsDelete() {
+ return isDelete;
+ }
+
+ public void setIsDelete(int isDelete) {
+ this.isDelete = isDelete;
+ }
+
+ public List<String> getPrivileges() {
+ return privileges;
+ }
+
+ public void setPrivileges(List<String> privileges) {
+ this.privileges = privileges;
+ }
+
+ public String getId() {
+ return id == null ? "" : id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public String getChildAccountId() {
+ return childAccountId == null ? "" : childAccountId;
+ }
+
+ public void setChildAccountId(String childAccountId) {
+ this.childAccountId = childAccountId;
+ }
+
+ public String getChildAccountRegionId() {
+ return childAccountRegionId == null ? "" : childAccountRegionId;
+ }
+
+ public void setChildAccountRegionId(String childAccountRegionId) {
+ this.childAccountRegionId = childAccountRegionId;
+ }
+
+ public String getHomeRegionId() {
+ return homeRegionId == null ? "" : homeRegionId;
+ }
+
+ public void setHomeRegionId(String homeRegionId) {
+ this.homeRegionId = homeRegionId;
+ }
+
+ public boolean isRemoteControl() {
+ return isRemoteControl;
+ }
+
+ public void setRemoteControl(boolean remoteControl) {
+ isRemoteControl = remoteControl;
+ }
+
+ public String getFaceUrl() {
+ return faceUrl == null ? "" : faceUrl;
+ }
+
+ public void setFaceUrl(String faceUrl) {
+ this.faceUrl = faceUrl;
+ }
+
+ public String getCreatePeople() {
+ return createPeople == null ? "" : createPeople;
+ }
+
+ public void setCreatePeople(String createPeople) {
+ this.createPeople = createPeople;
+ }
+
+ public boolean isAllowCreateScene() {
+ return isAllowCreateScene;
+ }
+
+ public void setAllowCreateScene(boolean allowCreateScene) {
+ isAllowCreateScene = allowCreateScene;
+ }
+
+ public String getModifyPeople() {
+ return modifyPeople == null ? "" : modifyPeople;
+ }
+
+ public void setModifyPeople(String modifyPeople) {
+ this.modifyPeople = modifyPeople;
+ }
+
+ public String getModifyTime() {
+ return modifyTime == null ? "" : modifyTime;
+ }
+
+ public void setModifyTime(String modifyTime) {
+ this.modifyTime = modifyTime;
+ }
+
+ public String getRegion() {
+ return region == null ? "" : region;
+ }
+
+ public void setRegion(String region) {
+ this.region = region;
+ }
+
+ public String getAccount() {
+ return account == null ? "" : account;
+ }
+
+ public void setAccount(String account) {
+ this.account = account;
+ }
+
+ public String getChildAccountType() {
+ return childAccountType == null ? "" : childAccountType;
+ }
+
+ public void setChildAccountType(String childAccountType) {
+ this.childAccountType = childAccountType;
+ }
+
+ public String getHomeId() {
+ return homeId == null ? "" : homeId;
+ }
+
+ public void setHomeId(String homeId) {
+ this.homeId = homeId;
+ }
+
+ public boolean isIsRemoteControl() {
+ return isRemoteControl;
+ }
+
+ public void setIsRemoteControl(boolean isRemoteControl) {
+ this.isRemoteControl = isRemoteControl;
+ }
+
+ public String getNickName() {
+ return nickName == null ? "" : nickName;
+ }
+
+ public void setNickName(String nickName) {
+ this.nickName = nickName;
+ }
+}
diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/bean/QrCodeBean.java b/app/src/main/java/com/hdl/photovoltaic/ui/bean/QrCodeBean.java
new file mode 100644
index 0000000..5cf613a
--- /dev/null
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/bean/QrCodeBean.java
@@ -0,0 +1,46 @@
+package com.hdl.photovoltaic.ui.bean;
+
+import java.io.Serializable;
+
+/**
+ * 浜岀淮鐮佸悕鐗�
+ */
+public class QrCodeBean implements Serializable {
+ private String userName;//鎴峰悕绉�
+ private String sex;//鎬у埆(鐢凤紝濂�)
+ private String userPhone;//鎵嬫満鍙�
+ private String userEmail;//銆侀偖绠�
+
+ public String getUserName() {
+
+ return userName == null ? "" : userName;
+ }
+
+ public void setUserName(String userName) {
+ this.userName = userName;
+ }
+
+ public String getSex() {
+ return sex == null ? "" : sex;
+ }
+
+ public void setSex(String sex) {
+ this.sex = sex;
+ }
+
+ public String getUserPhone() {
+ return userPhone == null ? "" : userPhone;
+ }
+
+ public void setUserPhone(String userPhone) {
+ this.userPhone = userPhone;
+ }
+
+ public String getUserEmail() {
+ return userEmail == null ? "" : userEmail;
+ }
+
+ public void setUserEmail(String userEmail) {
+ this.userEmail = userEmail;
+ }
+}
diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/bean/UserRightTypeBean.java b/app/src/main/java/com/hdl/photovoltaic/ui/bean/UserRightTypeBean.java
new file mode 100644
index 0000000..d364b26
--- /dev/null
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/bean/UserRightTypeBean.java
@@ -0,0 +1,15 @@
+package com.hdl.photovoltaic.ui.bean;
+
+import java.io.Serializable;
+
+public class UserRightTypeBean implements Serializable {
+ private String userRightType;//鏉冮檺绫诲瀷(MANAGER:鍏徃绠$悊鍛�;USER锛氭櫘閫氬憳宸�)
+
+ public String getUserRightType() {
+ return userRightType == null ? "" : userRightType;
+ }
+
+ public void setUserRightType(String userRightType) {
+ this.userRightType = userRightType;
+ }
+}
diff --git a/app/src/main/java/com/hdl/photovoltaic/uni/HDLUniMP.java b/app/src/main/java/com/hdl/photovoltaic/uni/HDLUniMP.java
index 245022a..6632099 100644
--- a/app/src/main/java/com/hdl/photovoltaic/uni/HDLUniMP.java
+++ b/app/src/main/java/com/hdl/photovoltaic/uni/HDLUniMP.java
@@ -51,8 +51,9 @@
public final static String UNI_EVENT_REPLY_DEVICE_Link_read_SEND = "link_property_read";//link鍗忚灞炴�ц鍙�
public final static String UNI_EVENT_REPLY_DEVICE_MESSAGE_NUMBER = "message_number";//娑堟伅鎬绘暟閲�
public final static String UNI_EVENT_REPLY_DEVICE_DELETE_OID = "delete_Oid";//鍒犻櫎璁惧oid
- public final static String UNI_EVENT_REPLY_DEVICE_INITIALIZEINVERTER = "initializeInverter";//閲嶇疆閫嗗彉鍣�
- public final static String UNI_EVENT_REPLY_DEVICE_REMOTEINFO = "set_device_remoteInfo";//璁剧疆璁惧杩滅▼淇℃伅
+ public final static String UNI_EVENT_REPLY_DEVICE_INITIALIZEINVERTER = "initializeInverter";//鍒濆鍖栭�嗗彉鍣�
+ public final static String UNI_EVENT_REPLY_DEVICE_REMOTEINFO = "set_device_remoteInfo";//璁剧疆璁惧杩滅▼淇℃伅edit_name
+ public final static String UNI_EVENT_REPLY_DEVICE_EDIT_NAME = "edit_name";//璁惧鍚嶇О淇敼(淇敼鏄簯绔痮id鍚嶇О锛岃澶囦娇鐢╩odbus鍗忚淇敼)
/*********OTA妯″潡*********/
@@ -84,7 +85,7 @@
public final static String UNI_EVENT_REPLY_OTHER_LOGOUT = "uni_logout";//閫�鍑虹櫥褰�
- /*********C绔�愭垜鐨勩�戞ā鍧�*********/
+ /*********銆愭垜鐨勩�戞ā鍧�*********/
public final static String UNI_EVENT_REPLY_MINE_MODEL = "uni_mine_model";//鎴戠殑妯″潡(澶х被)
public final static String UNI_EVENT_REPLY_MINE_USER_INFO = "get_user_info";//涓汉淇℃伅鑾峰彇锛�
public final static String UNI_EVENT_REPLY_MINE_EDIT_AVATAR = "edit_avatar";//澶村儚鏇存柊
@@ -94,6 +95,14 @@
public final static String UNI_EVENT_REPLY_MINE_USER_MANAGER = "user_manager";//鐢ㄦ埛绠$悊
public final static String UNI_EVENT_REPLY_MINE_ABOUT = "about";//鍏充簬
public final static String UNI_EVENT_REPLY_MINE_SETTING = "setting";//璁剧疆
+ public final static String UNI_EVENT_REPLY_MEMBER_LIST = "member_list";//鎴愬憳鍒楄〃
+ public final static String UNI_EVENT_REPLY_MEMBER_ADD = "member_add";//鎴愬憳娣诲姞
+ public final static String UNI_EVENT_REPLY_MEMBER_DELETE = "member_delete";//鎴愬憳鍒犻櫎
+ public final static String UNI_EVENT_REPLY_MEMBER_EDIT = "member_edit";//鎴愬憳缂栬緫锛堝寘鍚娉ㄣ�佹潈闄愪慨鏀癸級
+ public final static String UNI_EVENT_REPLY_STAFF_LIST = "staff_list";//鍛樺伐鍒楄〃
+ public final static String UNI_EVENT_REPLY_STAFF_ADD = "staff_add";//鍛樺伐娣诲姞
+ public final static String UNI_EVENT_REPLY_STAFF_DELETE = "staff_delete";//鍛樺伐鍒犻櫎
+ public final static String UNI_EVENT_REPLY_STAFF_EDIT = "staff_edit";//鍛樺伐缂栬緫
/*********Wifi妯″潡*********/
@@ -108,6 +117,7 @@
public final static String UNI_EVENT_REPLY_DEVICE_ETHERNET_SET = "device_ethernet_set";//閫嗗彉鍣ㄤ互澶綉閰嶇疆
public final static String UNI_EVENT_REPLY_DEVICE_ETHERNET_GET = "device_ethernet_get";//閫嗗彉鍣ㄤ互澶綉鑾峰彇
+
//endregion
//region --------銆愬師鐢熴�戜富鍔ㄥ彂閫佸埌銆愬皬绋嬪簭銆�--------
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index b5c745d..ed5f278 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -246,6 +246,8 @@
<string name="restarting_please_wait">閲嶅惎涓�,璇风瓑寰呪��</string>
<string name="port_conflict">搴旂敤鍐茬獊锛岄渶瑕佸叧闂璷npro鎴栬�呭叾瀹冪増鏈殑璋冭瘯杞欢鐒跺悗鍐嶉噸鏂板惎鍔ㄨ繖涓蒋浠惰瘯璇�</string>
+
+
<string name="cancel_download_successfully">鍙栨秷涓嬭浇鎴愬姛.</string>
<string name="writing_firmware_upgrade_memory_succeeded">鍐欏叆鏂板浐浠舵枃浠跺埌鍐呭瓨鎴愬姛.</string>
<string name="download_firmware_upgrade_file_failed">涓嬭浇鍥轰欢鍗囩骇鏂囦欢澶辫触.</string>
--
Gitblit v1.8.0