From 27d7958c1979a75cac2f820a75e6e6ac33652d63 Mon Sep 17 00:00:00 2001
From: wjc <1243177876@qq.com>
Date: 星期五, 16 六月 2023 18:21:17 +0800
Subject: [PATCH] 2023年06月16日18:21:15
---
app/src/main/java/com/hdl/photovoltaic/ui/bean/LoginUserBean.java | 10 +-
app/src/main/java/com/hdl/photovoltaic/internet/HttpClient.java | 4
app/src/main/java/com/hdl/photovoltaic/uni/HDLUniMP.java | 6 +
app/src/main/java/com/hdl/photovoltaic/other/HdlThreadLogic.java | 4
app/src/main/java/com/hdl/photovoltaic/widget/ConfirmationInputDialog.java | 1
app/src/main/java/com/hdl/photovoltaic/config/UserConfigManage.java | 3 +
app/src/main/java/com/hdl/photovoltaic/ui/adapter/HouseInfoAdapter.java | 16 +++++
app/src/main/java/com/hdl/photovoltaic/HDLApp.java | 2
app/src/main/java/com/hdl/photovoltaic/other/HdlAccountLogic.java | 50 ++++++++++++++--
app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java | 2
app/src/main/java/com/hdl/photovoltaic/ui/HomeLoginActivity.java | 9 +--
app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseListFragment.java | 15 +++++
12 files changed, 98 insertions(+), 24 deletions(-)
diff --git a/app/src/main/java/com/hdl/photovoltaic/HDLApp.java b/app/src/main/java/com/hdl/photovoltaic/HDLApp.java
index 91591fc..e3cf84d 100644
--- a/app/src/main/java/com/hdl/photovoltaic/HDLApp.java
+++ b/app/src/main/java/com/hdl/photovoltaic/HDLApp.java
@@ -3,6 +3,8 @@
import android.app.Application;
+import com.google.gson.Gson;
+import com.google.gson.JsonObject;
import com.hdl.photovoltaic.other.HdlLogLogic;
import com.hdl.photovoltaic.uni.HDLUniMPSDKManager;
import com.hdl.photovoltaic.utils.SharedPreUtils;
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 a9dbe2b..2e70ddb 100644
--- a/app/src/main/java/com/hdl/photovoltaic/config/UserConfigManage.java
+++ b/app/src/main/java/com/hdl/photovoltaic/config/UserConfigManage.java
@@ -12,6 +12,9 @@
import java.util.ArrayList;
import java.util.List;
+/**
+ * 涓汉淇℃伅绫�
+ */
public class UserConfigManage {
diff --git a/app/src/main/java/com/hdl/photovoltaic/internet/HttpClient.java b/app/src/main/java/com/hdl/photovoltaic/internet/HttpClient.java
index 9a4c9ab..d8fce79 100644
--- a/app/src/main/java/com/hdl/photovoltaic/internet/HttpClient.java
+++ b/app/src/main/java/com/hdl/photovoltaic/internet/HttpClient.java
@@ -92,7 +92,7 @@
RequestBody requestBody = FormBody.create(MediaType.parse("application/json; charset=utf-8"), getJson(json));
final Request request = new Request.Builder()
.url(fullUrl)//璇锋眰鐨剈rl//
- .addHeader("Authorization", UserConfigManage.getInstance().getHeaderPrefix()+UserConfigManage.getInstance().getToken())
+ .addHeader("Authorization", UserConfigManage.getInstance().getHeaderPrefix() + UserConfigManage.getInstance().getToken())
.post(requestBody)
.build();
if (isExecute) {
@@ -101,7 +101,7 @@
String s = Objects.requireNonNull(response.body()).string();
HttpResponsePack httpResponsePack = new Gson().fromJson(s, HttpResponsePack.class);
baseSuccessCallBeak.onSuccess(httpResponsePack);
- HdlLogLogic.print("http->鍥炲->", response.request().url()+"\r\n" + s);
+ HdlLogLogic.print("http->鍥炲->", response.request().url() + "\r\n" + s);
} else {
//throw new IOException("Unexpected code " + response);
baseSuccessCallBeak.onFailure(new Exception());
diff --git a/app/src/main/java/com/hdl/photovoltaic/other/HdlAccountLogic.java b/app/src/main/java/com/hdl/photovoltaic/other/HdlAccountLogic.java
index 04629d3..27d9bfd 100644
--- a/app/src/main/java/com/hdl/photovoltaic/other/HdlAccountLogic.java
+++ b/app/src/main/java/com/hdl/photovoltaic/other/HdlAccountLogic.java
@@ -3,7 +3,7 @@
import com.google.gson.Gson;
import com.google.gson.JsonObject;
-import com.hdl.photovoltaic.ui.bean.LoginBean;
+import com.hdl.photovoltaic.ui.bean.LoginUserBean;
import com.hdl.photovoltaic.ui.bean.LoginUserRegionBean;
import com.hdl.photovoltaic.bean.HttpResponsePack;
import com.hdl.photovoltaic.config.AppConfigManage;
@@ -80,7 +80,7 @@
* @param loginPwd 瀵嗙爜
* @param cloudCallBeak -
*/
- public void loginByPassword(String account, String loginPwd, CloudCallBeak<LoginBean> cloudCallBeak) {
+ public void loginByPassword(String account, String loginPwd, CloudCallBeak<LoginUserBean> cloudCallBeak) {
String requestUrl = HttpApi.POST_Login;
JsonObject json = new JsonObject();
json.addProperty("account", account);
@@ -94,10 +94,45 @@
if (httpResponsePack != null && httpResponsePack.getData() != null) {
Gson gson = new Gson();
String json = gson.toJson(httpResponsePack.getData());
- LoginBean loginBean = new Gson().fromJson(json, LoginBean.class);
- saveUserData(loginBean);
+ LoginUserBean loginUserBean = new Gson().fromJson(json, LoginUserBean.class);
+ saveUserData(loginUserBean);
if (cloudCallBeak != null) {
- cloudCallBeak.onSuccess(loginBean);
+ cloudCallBeak.onSuccess(loginUserBean);
+ }
+ }
+ }
+
+ @Override
+ public void onFailure(Exception exception) {
+ if (cloudCallBeak != null) {
+ cloudCallBeak.onFailure(exception);
+ }
+ }
+ });
+ }
+
+ /**
+ * 鍒锋柊Token(B绔处鍙�)
+ *
+ * @param account 鎵嬫満鎴栬�呴偖绠�
+ * @param loginPwd 瀵嗙爜
+ * @param cloudCallBeak -
+ */
+ public void refreshToken(String account, String loginPwd, CloudCallBeak<LoginUserBean> cloudCallBeak) {
+ String requestUrl = HttpApi.POST_Login;
+ JsonObject json = new JsonObject();
+ json.addProperty("grantType", "refresh_token");
+
+ 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 json = gson.toJson(httpResponsePack.getData());
+ LoginUserBean loginUserBean = new Gson().fromJson(json, LoginUserBean.class);
+ saveUserData(loginUserBean);
+ if (cloudCallBeak != null) {
+ cloudCallBeak.onSuccess(loginUserBean);
}
}
}
@@ -126,7 +161,7 @@
/**
* 鐧诲綍鎴愬姛淇濆瓨鐧诲綍淇℃伅
*/
- private void saveUserData(LoginBean obj) {
+ private void saveUserData(LoginUserBean obj) {
if (obj != null) {
UserConfigManage.getInstance().setLogin(true);//鏄惁鐧诲綍
UserConfigManage.getInstance().setAcceiptPolicy(true);//鏄惁閫夋嫨闅愮鏀跨瓥
@@ -135,11 +170,12 @@
UserConfigManage.getInstance().setAccount(obj.getAccount());//璐﹀彿
UserConfigManage.getInstance().setToken(obj.getAccessToken());//Token
UserConfigManage.getInstance().setHeaderPrefix(obj.getHeaderPrefix());//璁よ瘉璇锋眰澶村墠缂�(搴曞眰璇锋眰缁熶竴鍔�)
- UserConfigManage.getInstance().setRefreshToken(obj.getRefreshToken());//鍒锋柊Token
+ UserConfigManage.getInstance().setRefreshToken(obj.getRefreshToken());//鍒锋柊Token鐢ㄧ殑鍒锋柊Token鐢ㄧ殑
boolean isUserId = UserConfigManage.getInstance().getUserId().equals(obj.getUserId());
UserConfigManage.getInstance().setTheSameLoginAccount(isUserId);//涓庝笂涓�涓处鍙锋槸鍚﹀悓涓�涓�
}
}
+
}
diff --git a/app/src/main/java/com/hdl/photovoltaic/other/HdlThreadLogic.java b/app/src/main/java/com/hdl/photovoltaic/other/HdlThreadLogic.java
index 5217157..0922c13 100644
--- a/app/src/main/java/com/hdl/photovoltaic/other/HdlThreadLogic.java
+++ b/app/src/main/java/com/hdl/photovoltaic/other/HdlThreadLogic.java
@@ -18,7 +18,7 @@
/**
- * 鍒囨崲鍥炰富绾跨▼
+ * 鍒囨崲鍥炰富绾跨▼鎵ц
*
* @param run 鍥炶皟
* @param context 涓婁笅鏂�(涓嶉渶瑕佸脊妗嗗~null)
@@ -38,7 +38,7 @@
/**
- * 瀛愮嚎绋�
+ * 瀛愮嚎绋嬫墽琛�
*
* @param run 鍥炶皟
* @param context 涓婁笅鏂�(涓嶉渶瑕佸脊妗嗗~null)
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 86bd98f..1a16526 100644
--- a/app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java
+++ b/app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java
@@ -51,6 +51,7 @@
if (data != null) {
jsonObject = new org.json.JSONObject(data.toString());
}
+ //浣忓畢妯″潡
if (HDLUniMP.UNI_EVENT_HOME_CREATION.equals(event)) {
if (callback != null) {
callback.invoke(null);
@@ -112,6 +113,7 @@
data = new JSONObject();
}
data.put("token", UserConfigManage.getInstance().getToken());
+ data.put("refreshToken", UserConfigManage.getInstance().getRefreshToken());
uniCallBackBaseBean.setData(data);
return uniCallBackBaseBean.getJSONObject();
} catch (Exception e) {
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 1d03953..60e7531 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/HomeLoginActivity.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/HomeLoginActivity.java
@@ -1,7 +1,6 @@
package com.hdl.photovoltaic.ui;
-import android.app.Activity;
import android.os.Bundle;
import android.text.Editable;
import android.text.Spannable;
@@ -17,19 +16,17 @@
import androidx.appcompat.content.res.AppCompatResources;
-import androidx.constraintlayout.widget.ConstraintSet;
import com.hdl.photovoltaic.R;
import com.hdl.photovoltaic.base.CustomBaseActivity;
import com.hdl.photovoltaic.other.HdlResidenceLogic;
-import com.hdl.photovoltaic.ui.bean.LoginBean;
+import com.hdl.photovoltaic.ui.bean.LoginUserBean;
import com.hdl.photovoltaic.ui.bean.LoginUserRegionBean;
import com.hdl.photovoltaic.config.AppConfigManage;
import com.hdl.photovoltaic.databinding.ActivityHomeLoginBinding;
import com.hdl.photovoltaic.listener.CloudCallBeak;
import com.hdl.photovoltaic.other.HdlAccountLogic;
import com.hdl.photovoltaic.other.HdlThreadLogic;
-import com.hdl.photovoltaic.utils.KeyboardStateObserverUtils;
public class HomeLoginActivity extends CustomBaseActivity {
@@ -190,9 +187,9 @@
@Override
public void onSuccess(LoginUserRegionBean obj) {
AppConfigManage.setUserRegionUrl(obj.getRegionUrl());
- HdlAccountLogic.getInstance().loginByPassword(account, password, new CloudCallBeak<LoginBean>() {
+ HdlAccountLogic.getInstance().loginByPassword(account, password, new CloudCallBeak<LoginUserBean>() {
@Override
- public void onSuccess(LoginBean obj) {
+ public void onSuccess(LoginUserBean obj) {
HdlThreadLogic.runMainThread(new Runnable() {
@Override
public void run() {
diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/adapter/HouseInfoAdapter.java b/app/src/main/java/com/hdl/photovoltaic/ui/adapter/HouseInfoAdapter.java
index cfe9750..262e524 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/adapter/HouseInfoAdapter.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/adapter/HouseInfoAdapter.java
@@ -17,6 +17,7 @@
public class HouseInfoAdapter extends RecyclerView.Adapter<HouseInfoAdapter.MyViewHolder> {
private List<HouseListBean> mList;
+ private OnclickListener noOnclickListener;//鐐瑰嚮浜嗙殑鐩戝惉鍣�
public HouseInfoAdapter(List<HouseListBean> list) {
this.mList = list;
@@ -33,6 +34,14 @@
public void onBindViewHolder(@NonNull MyViewHolder holder, int position) {
HouseListBean houseListBean = this.mList.get(position);
holder.homeNameTv.setText(houseListBean.getHomeName());
+ holder.itemView.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ if (noOnclickListener != null) {
+ noOnclickListener.onClick(holder.getAdapterPosition());
+ }
+ }
+ });
}
@@ -46,6 +55,9 @@
this.mList = list;
}
+ public void setNoOnclickListener(OnclickListener onclickListener) {
+ this.noOnclickListener = onclickListener;
+ }
static class MyViewHolder extends RecyclerView.ViewHolder {
@@ -64,4 +76,8 @@
stateTv = itemView.findViewById(R.id.fragment_house_list_line_state_tv);
}
}
+
+ public interface OnclickListener {
+ void onClick(int position);
+ }
}
diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/bean/LoginBean.java b/app/src/main/java/com/hdl/photovoltaic/ui/bean/LoginUserBean.java
similarity index 92%
rename from app/src/main/java/com/hdl/photovoltaic/ui/bean/LoginBean.java
rename to app/src/main/java/com/hdl/photovoltaic/ui/bean/LoginUserBean.java
index 29a5f6f..7171577 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/bean/LoginBean.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/bean/LoginUserBean.java
@@ -4,10 +4,10 @@
import java.io.Serializable;
-public class LoginBean implements Serializable {
- /// 鐢ㄦ埛鏈夋晥韬唤Token
+public class LoginUserBean implements Serializable {
+ /// 鐢ㄦ埛鏈夋晥韬唤Token(涓嶇敤璁板綍浠�涔堟湁鏁堟湡,濡傛灉鐧婚檰澶辫触,灏辨嬁RefreshToken鍘诲埛鏂�)
private String accessToken;
- /// 鐧诲綍甯愬彿
+ /// 甯愬彿
private String account;
///灏忓尯ID
private String companyId;
@@ -15,7 +15,7 @@
private String expiration;
///杩囨湡鏃堕棿锛堢锛�
private String expiresIn;
- /// 璁よ瘉璇锋眰澶村墠缂�
+ ///娣诲姞鍒癟oken澶撮儴鐨勪笢瑗�,璁よ瘉璇锋眰澶村墠缂�(涓嶈鐞嗗畠,鍙粰搴曞眰浣跨敤)
private String headerPrefix;
//鐢ㄦ埛濮撳悕
private String name;
@@ -23,7 +23,7 @@
private String refreshExpiration;
///
private String refreshExpiresIn;
- /// 鍒锋柊Token
+ /// 鍒锋柊accessToken鐢ㄧ殑token(涓嶇敤璁板綍浠�涔堟湁鏁堟湡,濡傛灉鍒锋柊澶辫触,灏辫涪浜哄嵆鍙�)
private String refreshToken;
///瑙掕壊
private String role;
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 17a4e7e..fdff614 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
@@ -20,6 +20,7 @@
import com.hdl.photovoltaic.databinding.FragmentHouseListBinding;
import com.hdl.photovoltaic.base.CustomBaseFragment;
import com.hdl.photovoltaic.databinding.LoadingConfirmInputBinding;
+import com.hdl.photovoltaic.other.HdlLogLogic;
import com.hdl.photovoltaic.other.HdlThreadLogic;
import com.hdl.photovoltaic.other.HdlUniLogic;
import com.hdl.photovoltaic.ui.adapter.HouseInfoAdapter;
@@ -44,6 +45,7 @@
private CameraManager manager;
private List<HouseListBean> houseListBeanList = null;
+
@Override
public Object getContentView() {
@@ -83,6 +85,19 @@
Log.d("HouseListFragment", "涓嬫媺鍒锋柊");
}
});
+ houseInfoAdapter.setNoOnclickListener(new HouseInfoAdapter.OnclickListener() {
+ @Override
+ public void onClick(int position) {
+ //鐐瑰嚮浣忓畢璇︽儏
+ HdlLogLogic.print("====鐐瑰嚮浣忓畢璇︽儏" + position);
+ if (houseListBeanList == null || houseListBeanList.size() <= 0) {
+ return;
+ }
+ HouseListBean houseListBean = houseListBeanList.get(position);
+ String path = HDLUniMP.UNI_EVENT_HOME_CREATION + "?homeId=" + houseListBean.getHomeId();
+ HdlUniLogic.getInstance().openUniMP(path, null);
+ }
+ });
}
private void initView() {
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 edf9a9d..f9a6b51 100644
--- a/app/src/main/java/com/hdl/photovoltaic/uni/HDLUniMP.java
+++ b/app/src/main/java/com/hdl/photovoltaic/uni/HDLUniMP.java
@@ -19,7 +19,11 @@
public final static String UNI_EVENT_uniMPOnClose = "uni_MPOnClose";//鑷畾涔夊皬绋嬪簭鍏抽棴浜嬩欢
public final static String UNI_EVENT_GetAppParams = "uni_GetAppParams";//鑾峰彇APP搴旂敤淇℃伅
+
+
// //銆愬皬绋嬪簭銆戝彂閫佸埌銆愬師鐢熴�� 鍔犲墠缂�:uni_
+//public final static String UNI_EVENT_HOME_MODEL = "uni_home_model";//浣忓畢妯″潡
+// public final static String UNI_EVENT__DEVICE_MODEL = "uni_device_model";//璁惧妯″潡
// /*********浣忓畢銆愮數绔欍�戞ā鍧�*********/
// public final static String UNI_EVENT_HOME_LIST = "list";//鑾峰彇浣忓畢銆愮數绔欍�戝垪琛�
// public final static String UNI_EVENT_HOME_CREATION = "creation";//浣忓畢銆愮數绔欍�戝垱寤�
@@ -36,7 +40,7 @@
//銆愬師鐢熴�戜富鍔ㄥ彂閫佸埌銆愬皬绋嬪簭銆� 鍔犲墠缂�:app_
- //銆愬師鐢熴�戞墦寮�銆愬皬绋嬪簭銆戦〉闈㈣矾寰�
+ //銆愬師鐢熴�戞墦寮�銆愬皬绋嬪簭銆戦〉闈㈣矾寰�(UNI_EVENT_HOME_CREATION+?key=value&key=鍙傛暟涓�)
/*********浣忓畢妯″潡*********/
public final static String UNI_EVENT_HOME_CREATION = "pages/powerStation/powerStationCreate";//浣忓畢銆愮數绔欍�戝垱寤�
public final static String UNI_EVENT_HOME_EDIT = "pages/powerStation/powerStationEdit";//浣忓畢銆愮數绔欍�戠紪杈�
diff --git a/app/src/main/java/com/hdl/photovoltaic/widget/ConfirmationInputDialog.java b/app/src/main/java/com/hdl/photovoltaic/widget/ConfirmationInputDialog.java
index 5040cf6..27ee316 100644
--- a/app/src/main/java/com/hdl/photovoltaic/widget/ConfirmationInputDialog.java
+++ b/app/src/main/java/com/hdl/photovoltaic/widget/ConfirmationInputDialog.java
@@ -8,7 +8,6 @@
import android.text.method.HideReturnsTransformationMethod;
import android.text.method.PasswordTransformationMethod;
import android.view.View;
-import android.widget.FrameLayout;
import androidx.annotation.NonNull;
import androidx.appcompat.content.res.AppCompatResources;
--
Gitblit v1.8.0