From 975b91521a04e159f45fb34fc7b55afbf455f7f5 Mon Sep 17 00:00:00 2001
From: wjc <1243177876@qq.com>
Date: 星期三, 28 六月 2023 16:53:34 +0800
Subject: [PATCH] 2023年06月28日16:53:33
---
app/src/main/java/com/hdl/photovoltaic/uni/HDLUniMP.java | 27 +-
app/src/main/AndroidManifest.xml | 2
app/src/main/java/com/hdl/photovoltaic/base/BaseActivity.java | 26 ++
app/src/main/java/com/hdl/photovoltaic/other/HdlResidenceLogic.java | 34 +++
app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java | 49 +----
app/src/main/java/com/hdl/photovoltaic/base/CustomBaseFragment.java | 2
app/src/main/java/com/hdl/photovoltaic/bean/BaseEventBus.java | 35 +++
app/src/main/java/com/hdl/photovoltaic/other/HdlFileLogic.java | 184 +++++++++++---------
app/src/main/java/com/hdl/photovoltaic/config/ConstantManage.java | 21 +
app/src/main/java/com/hdl/photovoltaic/config/UserConfigManage.java | 2
app/src/main/java/com/hdl/photovoltaic/ui/MyPowerStationActivity.java | 7
app/src/main/java/com/hdl/photovoltaic/ui/HomeLoginActivity.java | 2
app/src/main/java/com/hdl/photovoltaic/base/BaseFragment.java | 31 ++-
app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseListFragment.java | 68 +++++++
app/build.gradle | 3
app/src/main/java/com/hdl/photovoltaic/base/CustomBaseActivity.java | 2
16 files changed, 331 insertions(+), 164 deletions(-)
diff --git a/app/build.gradle b/app/build.gradle
index 7ac585a..a2a4d12 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -70,6 +70,9 @@
// implementation 'org.greenrobot:eventbus:3.0.0'
implementation 'com.hdl.hdlhttp:hxhttp:1.0.4'
+ //Eventbus浜嬩欢鍙戝竷涓庢帴鏀�
+ implementation 'org.greenrobot:eventbus:3.3.1'
+
//********UniSDK蹇呴』娣诲姞鐨勪緷璧� start********
implementation "androidx.recyclerview:recyclerview:1.0.0"
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index c5aaabe..8173d25 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -17,6 +17,8 @@
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
+ <uses-permission android:name="android.permission.MANAGE_EXTERNAL_STORAGE" />
+ <uses-permission android:name="android.permission.WRITE_INTERNAL_STORAGE" />
<application
diff --git a/app/src/main/java/com/hdl/photovoltaic/base/BaseActivity.java b/app/src/main/java/com/hdl/photovoltaic/base/BaseActivity.java
index 4be52de..e3b1d84 100644
--- a/app/src/main/java/com/hdl/photovoltaic/base/BaseActivity.java
+++ b/app/src/main/java/com/hdl/photovoltaic/base/BaseActivity.java
@@ -9,10 +9,15 @@
import androidx.appcompat.app.AppCompatActivity;
import com.hdl.photovoltaic.R;
+import com.hdl.photovoltaic.bean.BaseEventBus;
import com.hdl.photovoltaic.listener.BaseView;
import com.hdl.photovoltaic.other.HdlThreadLogic;
import com.hdl.photovoltaic.utils.AppManagerUtils;
import com.hdl.photovoltaic.widget.LoadingDialog;
+
+import org.greenrobot.eventbus.EventBus;
+import org.greenrobot.eventbus.Subscribe;
+import org.greenrobot.eventbus.ThreadMode;
public abstract class BaseActivity extends AppCompatActivity implements BaseView {
@@ -35,6 +40,8 @@
throw new RuntimeException("getContentView() should be a @LayoutRes or a View");
}
onBindView(savedInstanceState);
+ //娉ㄥ唽EventBus
+ registerEventBus();
}
@@ -87,9 +94,28 @@
super.onDestroy();
//闅愯棌Loading
hideLoading();
+ //娉ㄩ攢EventBus
+ unregisterEventBus();
}
+ protected void unregisterEventBus() {
+ if (EventBus.getDefault().isRegistered(this)) {
+ EventBus.getDefault().unregister(this);
+ }
+ }
+
+ protected void registerEventBus() {
+ if (!EventBus.getDefault().isRegistered(this)) {
+ EventBus.getDefault().register(this);
+ }
+ }
+
+ @Subscribe(threadMode = ThreadMode.POSTING)
+ public void onEventMessage(BaseEventBus eventBus) {
+ }
+
+
/**
* 鏄剧ずView
*
diff --git a/app/src/main/java/com/hdl/photovoltaic/base/BaseFragment.java b/app/src/main/java/com/hdl/photovoltaic/base/BaseFragment.java
index 5ae379f..82120dc 100644
--- a/app/src/main/java/com/hdl/photovoltaic/base/BaseFragment.java
+++ b/app/src/main/java/com/hdl/photovoltaic/base/BaseFragment.java
@@ -15,10 +15,15 @@
import androidx.lifecycle.Lifecycle;
import com.hdl.photovoltaic.R;
+import com.hdl.photovoltaic.bean.BaseEventBus;
import com.hdl.photovoltaic.listener.BaseView;
import com.hdl.photovoltaic.other.HdlThreadLogic;
import com.hdl.photovoltaic.widget.LoadingDialog;
+
+import org.greenrobot.eventbus.EventBus;
+import org.greenrobot.eventbus.Subscribe;
+import org.greenrobot.eventbus.ThreadMode;
import java.util.Locale;
@@ -88,7 +93,8 @@
protected void onLazyInitView(Bundle savedInstanceState) {
onBindView(savedInstanceState);
-// registerEventBus();
+ //娉ㄥ唽EventBus
+ registerEventBus();
}
@@ -99,26 +105,27 @@
isFirst = true;
//闅愯棌Loading
hideLoading();
-// unregisterEventBus();
+ //娉ㄩ攢EventBus
+ unregisterEventBus();
}
protected void unregisterEventBus() {
-// if (EventBus.getDefault().isRegistered(this)) {
-// EventBus.getDefault().unregister(this);
-// }
+ if (EventBus.getDefault().isRegistered(this)) {
+ EventBus.getDefault().unregister(this);
+ }
}
protected void registerEventBus() {
-// if (!EventBus.getDefault().isRegistered(this)) {
-// EventBus.getDefault().register(this);
-// }
+ if (!EventBus.getDefault().isRegistered(this)) {
+ EventBus.getDefault().register(this);
+ }
}
-// @Subscribe(threadMode = ThreadMode.MAIN)
-// public void onEventMessage(BaseEvent event) {
-//
-// }
+ @Subscribe(threadMode = ThreadMode.MAIN)
+ public void onEventMessage(BaseEventBus eventBus) {
+
+ }
/**
* 鏄剧ずView
diff --git a/app/src/main/java/com/hdl/photovoltaic/base/CustomBaseActivity.java b/app/src/main/java/com/hdl/photovoltaic/base/CustomBaseActivity.java
index 8fbed3c..d9d6340 100644
--- a/app/src/main/java/com/hdl/photovoltaic/base/CustomBaseActivity.java
+++ b/app/src/main/java/com/hdl/photovoltaic/base/CustomBaseActivity.java
@@ -2,7 +2,7 @@
/**
- * 瀹炵幇涓�ц嚜瀹氫箟鏂规硶
+ * 鑷畾涔夋柟娉�,鐢ㄤ簬瀹炵幇涓�у寲
*/
public abstract class CustomBaseActivity extends BaseActivity {
diff --git a/app/src/main/java/com/hdl/photovoltaic/base/CustomBaseFragment.java b/app/src/main/java/com/hdl/photovoltaic/base/CustomBaseFragment.java
index 844f204..aa103e7 100644
--- a/app/src/main/java/com/hdl/photovoltaic/base/CustomBaseFragment.java
+++ b/app/src/main/java/com/hdl/photovoltaic/base/CustomBaseFragment.java
@@ -1,7 +1,7 @@
package com.hdl.photovoltaic.base;
/**
- * 瀹炵幇涓�ц嚜瀹氫箟鏂规硶
+ * 鑷畾涔夋柟娉�,鐢ㄤ簬瀹炵幇涓�у寲
*/
public abstract class CustomBaseFragment extends BaseFragment {
}
diff --git a/app/src/main/java/com/hdl/photovoltaic/bean/BaseEventBus.java b/app/src/main/java/com/hdl/photovoltaic/bean/BaseEventBus.java
new file mode 100644
index 0000000..aadaaee
--- /dev/null
+++ b/app/src/main/java/com/hdl/photovoltaic/bean/BaseEventBus.java
@@ -0,0 +1,35 @@
+package com.hdl.photovoltaic.bean;
+
+/**
+ * 浜嬩欢鍒嗗彂涓撶敤瀵硅薄
+ */
+public class BaseEventBus {
+
+ private String topic;
+ private String type;
+ private Object data;
+
+ public String getTopic() {
+ return topic == null ? "" : topic;
+ }
+
+ public void setTopic(String topic) {
+ this.topic = topic;
+ }
+
+ public String getType() {
+ return type == null ? "" : type;
+ }
+
+ public void setType(String type) {
+ this.type = type;
+ }
+
+ public Object getData() {
+ return data;
+ }
+
+ public void setData(Object data) {
+ this.data = data;
+ }
+}
diff --git a/app/src/main/java/com/hdl/photovoltaic/config/ConstantManage.java b/app/src/main/java/com/hdl/photovoltaic/config/ConstantManage.java
index b025bbe..485a826 100644
--- a/app/src/main/java/com/hdl/photovoltaic/config/ConstantManage.java
+++ b/app/src/main/java/com/hdl/photovoltaic/config/ConstantManage.java
@@ -2,13 +2,18 @@
public class ConstantManage {
- public static final String ACCOUNT = "account";
- public static final String PASSWORD = "password";
- public static final String USERID = "userId";
- private static final String LOGIN_STATE = "login_state";
- public static final String LOGIN_TOKEN = "login_token";
- public static final String HOME_NAME = "homeName";
- public static final String REFRESH_TOKEN = "refresh_token";
- public static final String HOME_ID = "homeId";
+ /******浣忓畢鏁版嵁瀛樺偍鐨勫父閲�*********/
+ public static final String SAVE_HOME_ACCOUNT = "account";
+ public static final String SAVE_HOME_PASSWORD = "password";
+ public static final String SAVE_HOME_USERID = "userId";
+ private static final String SAVE_HOME_LOGIN_STATE = "login_state";
+ public static final String SAVE_HOME_LOGIN_TOKEN = "login_token";
+ public static final String SAVE_HOME_HOME_NAME = "homeName";
+ public static final String SAVE_HOME_REFRESH_TOKEN = "refresh_token";
+ public static final String SAVE_HOME_HOME_ID = "homeId";
+
+ /******EventBus鍙戝竷浜嬩欢鐨勫父閲�*********/
+ public static final String EVENTBUS_POST_HOME_CREATED = "home_created";//浣忓畢鍒涘缓鍙戝竷
+
}
diff --git a/app/src/main/java/com/hdl/photovoltaic/config/UserConfigManage.java b/app/src/main/java/com/hdl/photovoltaic/config/UserConfigManage.java
index eb0bcdf..fee18e9 100644
--- a/app/src/main/java/com/hdl/photovoltaic/config/UserConfigManage.java
+++ b/app/src/main/java/com/hdl/photovoltaic/config/UserConfigManage.java
@@ -13,7 +13,7 @@
import java.util.List;
/**
- * 涓汉淇℃伅绫�
+ * 鐢ㄦ埛淇℃伅绫�
*/
public class UserConfigManage {
diff --git a/app/src/main/java/com/hdl/photovoltaic/other/HdlFileLogic.java b/app/src/main/java/com/hdl/photovoltaic/other/HdlFileLogic.java
index 368ad9f..5b2ddd3 100644
--- a/app/src/main/java/com/hdl/photovoltaic/other/HdlFileLogic.java
+++ b/app/src/main/java/com/hdl/photovoltaic/other/HdlFileLogic.java
@@ -2,7 +2,7 @@
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
-import android.text.TextUtils;
+import android.os.Environment;
import android.util.Log;
import com.hdl.photovoltaic.HDLApp;
@@ -13,7 +13,6 @@
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
-import java.io.IOException;
/**
* 鏂囦欢鎿嶄綔鐨勯�昏緫
@@ -48,56 +47,58 @@
private String getHomeId() {
return UserConfigManage.getInstance().getHomeId();
}
+ //region ---------root璺緞-----------
/**
* 鑾峰彇鎵嬫満鍐呴儴瀛樺偍鏂囦欢璺緞
*/
private String getAPPInternalStoreFilesPath() {
- return HDLApp.getInstance().getFilesDir().getAbsolutePath();
+ return HDLApp.getInstance().getExternalFilesDir(Environment.DIRECTORY_DOCUMENTS).getPath();
}
/**
* 鑾峰彇瀛樻斁鏂囦欢銆愮敤鎴枫�戞牴璺緞
*/
- public String getUserFilesPath() {
- return HDLApp.getInstance().getFilesDir().getAbsolutePath() + getUserId();
+ public String getCurrentUserRootPath() {
+ return getAPPInternalStoreFilesPath() + "/" + getUserId();
}
/**
* 鑾峰彇瀛樻斁鏂囦欢銆愪綇瀹呫�戞牴璺緞
*/
- public String getHomeFilesPath() {
- return HDLApp.getInstance().getFilesDir().getAbsolutePath() + getUserId() + "/home";
+ public String getCurrentHomeRootPath() {
+ return getAPPInternalStoreFilesPath() + "/" + getUserId() + "/home";
}
/**
- * 浣忓畢鍚嶇О
+ * 浣忓畢鏂囦欢鍚嶇О
*
* @return -
*/
- public String getHomeFileName() {
- return getHomeId() + ".json";
+ public String getCurrentHomeFileName() {
+ return "/" + getHomeId() + ".json";
}
+
/**
- * 鍒涘缓鏂囦欢
- *
- * @param fullPath 鍏ㄨ矾寰�
- * @return -
+ * 鑾峰彇褰撳墠浣忓畢鏂囦欢鍏ㄨ矾寰�
*/
- public boolean createFile(String fullPath) {
- try {
- File file = new File(fullPath);
- if (!file.exists()) {
- boolean succeed = file.createNewFile();
- HdlLogLogic.print("鍒涘缓鏂囦欢==" + succeed);
- return succeed;
- }
- return true;
- } catch (Exception e) {
- HdlLogLogic.print("鍒涘缓鏂囦欢澶辫触==" + e.getMessage());
- return false;
- }
+ public String getCurrentHomeFilesFullPath() {
+ return getCurrentHomeRootPath() + getCurrentHomeFileName();
+ }
+
+ //endregion
+
+ //region ---------銆愭枃浠跺す銆戞搷浣�-----------
+
+ /**
+ * 棰勫垱寤烘枃浠跺す
+ */
+ public void createDirectory() {
+ //瀛樻斁鐢ㄦ埛淇℃伅
+ this.createFileDir(this.getCurrentUserRootPath());
+ //瀛樻斁浣忓畢淇℃伅
+ this.createFileDir(this.getCurrentHomeRootPath());
}
/**
@@ -116,11 +117,75 @@
}
return true;
} catch (Exception e) {
- HdlLogLogic.print("鍒涘缓鏂囦欢澶瑰け璐�==" + e.getMessage());
+ HdlLogLogic.print("鍒涘缓鏂囦欢澶规湁寮傚父==" + e.getMessage());
return false;
}
}
+
+ /**
+ * 鍒犻櫎鏂囦欢澶�
+ *
+ * @param fullPath 鍏ㄨ矾寰�
+ */
+ public void deleteDirectory(String fullPath) {
+ try {
+ File file = new File(fullPath);
+ if (file.isDirectory()) {
+ boolean succeed = file.delete();
+ HdlLogLogic.print("鍒犻櫎鏂囦欢澶�==" + succeed);
+ }
+ } catch (Exception e) {
+ HdlLogLogic.print("鍒犻櫎鏂囦欢澶规湁寮傚父==" + e.getMessage());
+ }
+
+ }
+ //endregion
+
+ //region ---------銆愭枃浠躲�戞搷浣�-----------
+
+ /**
+ * 鍒涘缓鏂囦欢
+ *
+ * @param fullPath 鍏ㄨ矾寰�
+ * @return -
+ */
+ public boolean createFile(String fullPath) {
+ try {
+ File file = new File(fullPath);
+ if (!file.exists()) {
+ boolean succeed = file.createNewFile();
+ HdlLogLogic.print("鍒涘缓鏂囦欢==" + succeed);
+ return succeed;
+ }
+ return true;
+ } catch (Exception e) {
+ HdlLogLogic.print("鍒涘缓鏂囦欢鏈夊紓甯�==" + e.getMessage());
+ return false;
+ }
+ }
+
+ /**
+ * 鍒犻櫎鏂囦欢
+ *
+ * @param fullPath 鍏ㄨ矾寰�
+ * @return -
+ */
+ public boolean deleteFile(String fullPath) {
+ try {
+ File file = new File(fullPath);
+ if (file.exists()) {
+ boolean succeed = file.delete();
+ HdlLogLogic.print("鍒犻櫎鏂囦欢==" + succeed);
+ return succeed;
+ }
+ return true;
+ } catch (Exception e) {
+ HdlLogLogic.print("鍒犻櫎鏂囦欢鏈夊紓甯�==" + e.getMessage());
+ return false;
+ }
+
+ }
/**
* 鍐欏叆鏂囦欢
@@ -141,8 +206,9 @@
d.write(data.getBytes());
d.flush();
d.close();
- } catch (IOException e) {
- e.printStackTrace();
+ HdlLogLogic.print("鍐欏叆鏂囦欢鎴愬姛==" + fullPath);
+ } catch (Exception e) {
+ HdlLogLogic.print("鍐欏叆鏂囦欢鏈夊紓甯�==" + e.getMessage());
}
}
@@ -169,15 +235,16 @@
byte[] bytes = new byte[fis.available()];
fis.read(bytes);
fis.close();
+ HdlLogLogic.print("璇诲彇鏂囦欢鎴愬姛==" + filepath);
fileContent = new String(bytes);
return fileContent;
} catch (Exception e1) {
- e1.printStackTrace();
- Log.d(TAG, "Error: Input File not find!");
+ HdlLogLogic.print("璇诲彇鏂囦欢鏈夊紓甯�==" + e1.getMessage());
return "";
}
}
+ //endregion
/**
* 鎶婁綅鍥炬暟鎹繚瀛樺埌鎸囧畾璺緞鐨勫浘鐗囨枃浠�
@@ -197,6 +264,7 @@
} catch (Exception e) {
}
}
+ //</editor-fold>
/**
* 浠庢寚瀹氳矾寰勭殑鍥剧墖鏂囦欢涓鍙栦綅鍥炬暟鎹�
@@ -215,57 +283,5 @@
return null;
}
- /**
- * 棰勫垱寤烘枃浠跺す
- */
- public void createDirectory() {
- //鐢ㄦ埛淇℃伅
- this.createFileDir(this.getUserFilesPath());
- //浣忓畢淇℃伅
- this.createFileDir(this.getHomeFilesPath());
- }
- /**
- * 鍒犻櫎鏂囦欢
- *
- * @param fullPath 鍏ㄨ矾寰�
- * @return -
- */
- public boolean deleteFile(String fullPath) {
- try {
- File file = new File(fullPath);
- if (file.exists() || file.isDirectory()) {
- boolean succeed = file.delete();
- HdlLogLogic.print("鍒犻櫎鏂囦欢==" + succeed);
- return succeed;
- }
- return true;
- } catch (Exception e) {
- HdlLogLogic.print("鍒犻櫎鏂囦欢鏈夊紓甯�==" + e.getMessage());
- return false;
- }
-
- }
-
- /**
- * 鍒犻櫎鏂囦欢澶�
- *
- * @param fullPath 鍏ㄨ矾寰�
- * @return -
- */
- public boolean deleteDirectory(String fullPath) {
- try {
- File file = new File(fullPath);
- if (file.isDirectory()) {
- boolean succeed = file.delete();
- HdlLogLogic.print("鍒犻櫎鏂囦欢澶�==" + succeed);
- return succeed;
- }
- return true;
- } catch (Exception e) {
- HdlLogLogic.print("鍒犻櫎鏂囦欢澶规湁寮傚父==" + e.getMessage());
- return false;
- }
-
- }
}
diff --git a/app/src/main/java/com/hdl/photovoltaic/other/HdlResidenceLogic.java b/app/src/main/java/com/hdl/photovoltaic/other/HdlResidenceLogic.java
index e55dac1..fcdf6ec 100644
--- a/app/src/main/java/com/hdl/photovoltaic/other/HdlResidenceLogic.java
+++ b/app/src/main/java/com/hdl/photovoltaic/other/HdlResidenceLogic.java
@@ -406,6 +406,37 @@
}
+ /**
+ * 鑾峰彇浣忓畢鍥剧墖
+ */
+ public void getResidenceImage(String imageUrl, CloudCallBeak<List<HouseIdBean>> cloudCallBeak) {
+ String requestUrl = imageUrl;
+ JsonObject json = new JsonObject();
+ List<HouseIdBean> list = new ArrayList<>();
+ HttpClient.getInstance().requestHttp(requestUrl, json.toString(), true, true, new BaseSuccessFailureCallBeak() {
+ @Override
+ public void onSuccess(HttpResponsePack httpResponsePack) {
+ if (httpResponsePack != null && httpResponsePack.getData() != null) {
+ Gson gson = new Gson();
+ String jsonStr = gson.toJson(httpResponsePack.getData());
+ HouseBeanClass houseInfoBeanClass = gson.fromJson(jsonStr, HouseBeanClass.class);
+ } else {
+ if (cloudCallBeak != null) {
+ cloudCallBeak.onSuccess(list);
+ }
+ }
+ }
+
+ @Override
+ public void onFailure(Exception exception) {
+ if (cloudCallBeak != null) {
+ cloudCallBeak.onFailure(exception);
+ }
+ }
+ });
+
+
+ }
/**
* 娣诲姞銆愪綇瀹呰鎯呫�戝埌鏈湴缂撳瓨
@@ -475,9 +506,10 @@
*/
public Boolean switchHouse(String homeId) {
String oidHomeId = UserConfigManage.getInstance().getHomeId();
-
+ HdlFileLogic.getInstance().deleteDirectory(HdlFileLogic.getInstance().getCurrentHomeRootPath());
UserConfigManage.getInstance().setHomeId(homeId);
HdlFileLogic.getInstance().createDirectory();
+
HdlThreadLogic.runThread(new Runnable() {
@Override
public void run() {
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 b41b342..367cfb5 100644
--- a/app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java
+++ b/app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java
@@ -5,17 +5,16 @@
import com.google.gson.Gson;
import com.hdl.photovoltaic.HDLApp;
+import com.hdl.photovoltaic.bean.BaseEventBus;
+import com.hdl.photovoltaic.config.ConstantManage;
import com.hdl.photovoltaic.config.UserConfigManage;
-import com.hdl.photovoltaic.listener.CloudCallBeak;
-import com.hdl.photovoltaic.ui.bean.HouseIdBean;
import com.hdl.photovoltaic.uni.HDLUniMP;
import com.hdl.photovoltaic.uni.HDLUniMPSDKManager;
import com.hdl.photovoltaic.utils.WifiUtils;
+import org.greenrobot.eventbus.EventBus;
import org.json.JSONObject;
-
-import java.util.List;
import io.dcloud.feature.unimp.DCUniMPJSCallback;
@@ -67,17 +66,10 @@
switch (type_value) {
case HDLUniMP.UNI_EVENT_REPLY_HOME_CREATION: {
//鍒涘缓
- HdlResidenceLogic.getInstance().getResidenceIdList("", "", new CloudCallBeak<List<HouseIdBean>>() {
- @Override
- public void onSuccess(List<HouseIdBean> list) {
- HdlResidenceLogic.getInstance().setHouseIdList(list);
- }
-
- @Override
- public void onFailure(Exception exception) {
-
- }
- });
+ //eventbus閫氱煡
+ BaseEventBus baseEventBus = new BaseEventBus();
+ baseEventBus.setType(ConstantManage.EVENTBUS_POST_HOME_CREATED);
+ EventBus.getDefault().post(baseEventBus);
}
break;
@@ -139,7 +131,7 @@
/**
* 鍘熺敓鎵撳紑uni鎸囧畾椤甸潰
*
- * @param path 鎵撳紑璺緞
+ * @param path 鎵撳紑鍏ㄨ矾寰�
* @param jsonObject 闄勪欢鏁版嵁(娌℃湁鏁版嵁濉玭ull)
*/
public void openUniMP(String path, JSONObject jsonObject) {
@@ -153,15 +145,16 @@
* 鍘熺敓銆愪富鍔ㄣ�戝悜灏忕▼搴忓彂閫侀�氱煡浜嬩欢
* 娉ㄦ剰锛氶渶瑕佹彁鍓嶅皬绋嬪簭鍦ㄨ繍琛屾墠鍙垚鍔�
*
- * @param topic 涓婚
+ * @param topic 涓婚澶х被
+ * @param type 鍔熻兘绫�
* @param body 闄勪欢鏁版嵁(娌℃湁鏁版嵁濉玭ull)
*/
- public void sendUni(String topic, String body) {
+ public void sendUni(String topic, String type, String body) {
try {
HDLUniMP.UniCallBackBaseBean callBackBaseBean = new HDLUniMP.UniCallBackBaseBean();
- callBackBaseBean.setTopic(topic);
+ callBackBaseBean.setType(type);
callBackBaseBean.setData(body);
- HDLUniMPSDKManager.getInstance().sendUniMPEvent(HDLUniMP.UNI_APP_ID, HDLUniMP.UNI_APP_ID, getJSONObject(callBackBaseBean));
+ HDLUniMPSDKManager.getInstance().sendUniMPEvent(HDLUniMP.UNI_APP_ID, topic, getJSONObject(callBackBaseBean));
} catch (Exception e) {
HdlLogLogic.print("uni===鍘熺敓涓诲姩鍚戝皬绋嬪簭鍙戦�侀�氱煡浜嬩欢", e.getMessage());
}
@@ -223,22 +216,6 @@
}
- }
-
-
- /**
- * 鑾峰彇uni鍙戦�佸璞�
- *
- * @param obj 闄勫姞鏁版嵁
- * @param code 鐘舵�佺爜
- * @param msg 缁撴灉鎻忚堪鐨勪俊鎭�
- */
- private HDLUniMP.UniCallBackBaseBean getUniCallBackBaseBean(Object obj, String code, String msg) {
- HDLUniMP.UniCallBackBaseBean uniCallBackBaseBean = new HDLUniMP.UniCallBackBaseBean();
- uniCallBackBaseBean.setCode(code);
- uniCallBackBaseBean.setMes(msg);
- uniCallBackBaseBean.setData(obj);
- return uniCallBackBaseBean;
}
/**
diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/HomeLoginActivity.java b/app/src/main/java/com/hdl/photovoltaic/ui/HomeLoginActivity.java
index d367a11..367716d 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/HomeLoginActivity.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/HomeLoginActivity.java
@@ -27,6 +27,7 @@
import com.hdl.photovoltaic.R;
import com.hdl.photovoltaic.base.CustomBaseActivity;
import com.hdl.photovoltaic.enums.ShowErrorMode;
+import com.hdl.photovoltaic.other.HdlFileLogic;
import com.hdl.photovoltaic.other.HdlResidenceLogic;
import com.hdl.photovoltaic.ui.bean.HouseIdBean;
import com.hdl.photovoltaic.ui.bean.LoginUserBean;
@@ -248,6 +249,7 @@
public void onClick(View v) {
// requestPermissions();
// startActivity(MyPowerStationActivity.class);
+ HdlFileLogic.getInstance().deleteDirectory(HdlFileLogic.getInstance().getCurrentHomeRootPath());
}
});
diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/MyPowerStationActivity.java b/app/src/main/java/com/hdl/photovoltaic/ui/MyPowerStationActivity.java
index d60bc13..2c1f5f6 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/MyPowerStationActivity.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/MyPowerStationActivity.java
@@ -11,11 +11,11 @@
import com.hdl.photovoltaic.R;
import com.hdl.photovoltaic.base.CustomBaseActivity;
import com.hdl.photovoltaic.databinding.ActivityMyPowerStationBinding;
+import com.hdl.photovoltaic.other.HdlUniLogic;
import com.hdl.photovoltaic.utils.PermissionUtils;
public class MyPowerStationActivity extends CustomBaseActivity {
-
private ActivityMyPowerStationBinding viewBinding;
@@ -55,6 +55,11 @@
}
+ @Override
+ protected void onDestroy() {
+ super.onDestroy();
+ HdlUniLogic.getInstance().checkRemoveOtherUniMPEventCallBack();
+ }
private void initView() {
viewBinding.myPowerStationBottomIl1.titleTv.setText(R.string.my_power_station_鐢电珯);
diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseListFragment.java b/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseListFragment.java
index b0e9e75..bd3064f 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseListFragment.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseListFragment.java
@@ -13,9 +13,13 @@
import androidx.swiperefreshlayout.widget.SwipeRefreshLayout;
import com.hdl.photovoltaic.R;
+import com.hdl.photovoltaic.bean.BaseEventBus;
+import com.hdl.photovoltaic.config.ConstantManage;
import com.hdl.photovoltaic.config.UserConfigManage;
import com.hdl.photovoltaic.databinding.FragmentHouseListBinding;
import com.hdl.photovoltaic.base.CustomBaseFragment;
+import com.hdl.photovoltaic.enums.ShowErrorMode;
+import com.hdl.photovoltaic.listener.CloudCallBeak;
import com.hdl.photovoltaic.other.HdlLogLogic;
import com.hdl.photovoltaic.other.HdlResidenceLogic;
import com.hdl.photovoltaic.other.HdlThreadLogic;
@@ -91,8 +95,7 @@
viewBinding.fragmentHouseSrl.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
@Override
public void onRefresh() {
-
- viewBinding.fragmentHouseSrl.setRefreshing(false);
+ updateUIData(true);
Log.d("HouseListFragment", "涓嬫媺鍒锋柊");
}
});
@@ -128,19 +131,74 @@
// this.houseListBeanList.add(houseListBean);
// }
this.houseListBeanIDList.addAll(HdlResidenceLogic.getInstance().getHouseIdList());
-
-
}
+ @Override
+ public void onEventMessage(BaseEventBus eventBus) {
+ super.onEventMessage(eventBus);
+ //鏀跺埌EventBUs閫氱煡
+ if (ConstantManage.EVENTBUS_POST_HOME_CREATED.equals(eventBus.getType())) {
+ updateUIData(false);
+ }
+ }
+
+ /**
+ * 鍒锋柊UI
+ *
+ * @param isRefreshing 琛ㄧず鏄笅鎷夊埛鏂扮殑
+ */
+ private void updateUIData(boolean isRefreshing) {
+ //鑾峰彇浣忓畢(鐢电珯)ID鍒楄〃
+ HdlResidenceLogic.getInstance().getResidenceIdList("", "", new CloudCallBeak<List<HouseIdBean>>() {
+ @Override
+ public void onSuccess(List<HouseIdBean> list) {
+ HdlThreadLogic.runMainThread(new Runnable() {
+ @Override
+ public void run() {
+ if (isRefreshing) {
+ //鍏抽棴涓嬫媺鍒锋柊鐨勫湀鍦�
+ viewBinding.fragmentHouseSrl.setRefreshing(false);
+ }
+ if (list != null && list.size() > 0) {
+ //鏇存柊缂撳瓨
+ HdlResidenceLogic.getInstance().setHouseIdList(list);
+ if (houseInfoAdapter != null) {
+ //鏇存柊UI
+ houseInfoAdapter.setList(list);
+ houseInfoAdapter.notifyDataSetChanged();
+ }
+ }
+ }
+ }, _mActivity, ShowErrorMode.YES);
+
+ }
+
+ @Override
+ public void onFailure(Exception exception) {
+ HdlThreadLogic.runMainThread(new Runnable() {
+ @Override
+ public void run() {
+ if (isRefreshing) {
+ //鍏抽棴涓嬫媺鍒锋柊鐨勫湀鍦�
+ viewBinding.fragmentHouseSrl.setRefreshing(false);
+ }
+
+ }
+ }, _mActivity, ShowErrorMode.YES);
+ }
+ });
+ }
/**
* 鐢宠鏉冮檺
*/
private void requestPermissions(PermissionsResultCallback permissionsResultCallback) {
+
+
mPermissionsResultCallback = permissionsResultCallback;
//Manifest.permission.CAMERA,
String[] s = new String[]{
- Manifest.permission.ACCESS_FINE_LOCATION
+ Manifest.permission.ACCESS_FINE_LOCATION,
};
String[] ary = PermissionUtils.checkPermission(_mActivity, s);
if (ary.length > 0) {
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 220440c..ed79307 100644
--- a/app/src/main/java/com/hdl/photovoltaic/uni/HDLUniMP.java
+++ b/app/src/main/java/com/hdl/photovoltaic/uni/HDLUniMP.java
@@ -18,7 +18,7 @@
public final static String UNI_EVENT_uniMPOnClose = "uni_MPOnClose";//鑷畾涔夊皬绋嬪簭鍏抽棴浜嬩欢
public final static String UNI_EVENT_GetAppParams = "uni_GetAppParams";//鑾峰彇APP搴旂敤淇℃伅
- //娉ㄦ剰锛氥�愬皬绋嬪簭銆戝彂閫佸埌銆愬師鐢熴�� 鍔犲墠缂�:uni_
+ //region --------銆愬皬绋嬪簭銆戝彂閫佸埌銆愬師鐢熴��(鍔犲墠缂�:uni_)--------
/*********浣忓畢銆愮數绔欍�戞ā鍧�*********/
public final static String UNI_EVENT_REPLY_HOME_MODEL = "uni_home_model";//浣忓畢妯″潡
public final static String UNI_EVENT_REPLY_HOME_LIST = "list";//鑾峰彇浣忓畢銆愮數绔欍�戝垪琛�
@@ -39,11 +39,18 @@
public final static String UNI_EVENT_REPLY_WIFI_LIST = "list";//鑾峰彇wifi鍒楄〃
public final static String UNI_EVENT_REPLY_WIFI_INFO = "info";//鑾峰彇褰撳墠wifi淇℃伅
public final static String UNI_EVENT_REPLY_WIFI_CONNECT = "connect";//杩炴帴wifi
+ //endregion
- //娉ㄦ剰锛氥�愬師鐢熴�戜富鍔ㄥ彂閫佸埌銆愬皬绋嬪簭銆� 鍔犲墠缂�:app_
+ //region --------銆愬師鐢熴�戜富鍔ㄥ彂閫佸埌銆愬皬绋嬪簭銆�--------
+ public final static String UNI_EVENT_NOTIFICATION_DEVICE_MODEL = "uni_notification_model";//閫氱煡妯″潡
+ public final static String UNI_EVENT_NOTIFICATION_DEVICE_LIST = "list";//閫嗗彉鍣ㄨ澶囧垪琛�
+ public final static String UNI_EVENT_NOTIFICATION_DEVICE_CHILD_LIST = "child_list";//閫嗗彉鍣ㄣ�愪笅鎸傘�戣澶囧垪琛�
+ public final static String UNI_EVENT_NOTIFICATION_DEVICE_ADD = "add";//璁惧娣诲姞
+ public final static String UNI_EVENT_NOTIFICATION_DEVICE_DEL = "del";//璁惧鍒犻櫎
+ public final static String UNI_EVENT_NOTIFICATION_DEVICE_OID = "oid";//璁惧銆愬寘鎷笅鎸傝澶囥�憃id鍒楄〃
+ //endregion
-
- //娉ㄦ剰锛氥�愬師鐢熴�戞墦寮�銆愬皬绋嬪簭銆戦〉闈㈣矾寰�(UNI_EVENT_OPEN_HOME_CREATION+?key=value&key=鍙傛暟涓�)
+ //region --------銆愬師鐢熴�戞墦寮�銆愬皬绋嬪簭銆戦〉闈㈣矾寰�(UNI_EVENT_OPEN_HOME_CREATION+?key=value&key=鍙傛暟涓�)--------
/*********浣忓畢妯″潡*********/
public final static String UNI_EVENT_OPEN_HOME_CREATION = "pages/powerStation/powerStationCreate";//浣忓畢銆愮數绔欍�戝垱寤�
public final static String UNI_EVENT_OPEN_HOME_EDIT = "pages/powerStation/powerStationEdit";//浣忓畢銆愮數绔欍�戠紪杈�
@@ -51,11 +58,12 @@
public final static String UNI_EVENT_OPEN_HOME_DEl = "del";//浣忓畢銆愮數绔欍�戝垹闄�
/*********璁惧妯″潡*********/
//璁惧妯″潡鎵撳紑椤甸潰鍏ㄨ矾寰�
+ //endregion
/**
* 灏忕▼搴忎笌鍘熺敓閫氳鏁版嵁鏍煎紡
- * 鑷畾涔夋牸寮�
+ * 鑷畾涔夋暟鎹牸寮�
*/
public static class UniCallBackBaseBean implements Serializable {
@@ -63,7 +71,6 @@
private String path;//鎵撳紑灏忕▼搴忚矾寰�(鏆傛椂鐢ㄤ笉涓�)
private String code;//鐘舵�佺爜
private String mes;//淇℃伅鎻忚堪
- private String topic;//鏆傛椂鐢ㄤ笉涓�
private String type;//鍔熻兘绫诲瀷
private Object data;//闄勫姞json鏁版嵁
@@ -86,7 +93,6 @@
this.code = code;
}
-
public String getMes() {
return mes == null ? "" : mes;
}
@@ -103,13 +109,6 @@
this.data = data;
}
- public String getTopic() {
- return topic;
- }
-
- public void setTopic(String topic) {
- this.topic = topic;
- }
public String getType() {
return type == null ? "" : type;
--
Gitblit v1.8.0