From 2c7615cd73dfa6a7ca4df975430d2217524513d2 Mon Sep 17 00:00:00 2001
From: mac <user@users-MacBook-Pro.local>
Date: 星期四, 28 九月 2023 11:38:28 +0800
Subject: [PATCH] 2023年09月28日11:38:24
---
app/src/main/java/com/hdl/photovoltaic/other/HdlAccountLogic.java | 275 ++++++++++++++++++++++++++++++++++++++++++++----------
1 files changed, 221 insertions(+), 54 deletions(-)
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 27d9bfd..bbd321a 100644
--- a/app/src/main/java/com/hdl/photovoltaic/other/HdlAccountLogic.java
+++ b/app/src/main/java/com/hdl/photovoltaic/other/HdlAccountLogic.java
@@ -3,21 +3,22 @@
import com.google.gson.Gson;
import com.google.gson.JsonObject;
-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;
+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.bean.HDLUserRegionBean;
+import com.hdl.linkpm.sdk.user.callback.ILoginCallBack;
+import com.hdl.linkpm.sdk.user.callback.IRegionByAccountCallBack;
import com.hdl.photovoltaic.config.UserConfigManage;
import com.hdl.photovoltaic.internet.HttpClient;
import com.hdl.photovoltaic.internet.api.HttpApi;
-import com.hdl.photovoltaic.listener.BaseSuccessFailureCallBeak;
import com.hdl.photovoltaic.listener.CloudCallBeak;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
/**
- * 鐧诲綍鐣岄潰鐨勯�昏緫
+ * 璐﹀彿閫昏緫
*/
public class HdlAccountLogic {
@@ -40,33 +41,26 @@
return sHdlAccountLogic;
}
+ // region --------銆怋绔处鍙枫��---------
/**
* 鍒濆鍖栬处鍙风殑Url鍖哄煙鍦板潃
*
* @param i_account 璐﹀彿
*/
- public void regionByAccount(String i_account, CloudCallBeak<LoginUserRegionBean> cloudCallBeak) {
- JsonObject jsonObject = new JsonObject();
- jsonObject.addProperty("account", i_account);
- String full = AppConfigManage.getAPPRegionUrl() + HttpApi.POST_RegionByUserAccount;
- HttpClient.getInstance().requestFullHttp(full, jsonObject.toString(), true, true, new BaseSuccessFailureCallBeak() {
+ public void regionByAccount(String i_account, CloudCallBeak<HDLUserRegionBean> cloudCallBeak) {
+ HDLLinkPMUser.getInstance().regionByAccount(i_account, new IRegionByAccountCallBack() {
@Override
- public void onSuccess(HttpResponsePack httpResponsePack) {
- if (httpResponsePack != null && httpResponsePack.getData() != null) {
- Gson gson = new Gson();
- String json = gson.toJson(httpResponsePack.getData());
- LoginUserRegionBean loginUserRegionBean = new Gson().fromJson(json, LoginUserRegionBean.class);
- if (cloudCallBeak != null) {
- cloudCallBeak.onSuccess(loginUserRegionBean);
- }
+ public void onSuccess(HDLUserRegionBean regionBean) {
+ if (cloudCallBeak != null) {
+ cloudCallBeak.onSuccess(regionBean);
}
}
@Override
- public void onFailure(Exception exception) {
+ public void onFailure(HDLException error) {
if (cloudCallBeak != null) {
- cloudCallBeak.onFailure(exception);
+ cloudCallBeak.onFailure(error);
}
}
});
@@ -76,40 +70,77 @@
* 鐧诲綍(B绔处鍙�)
* 閫氳繃璐﹀彿鍜屽瘑鐮�
*
- * @param account 鎵嬫満鎴栬�呴偖绠�
- * @param loginPwd 瀵嗙爜
- * @param cloudCallBeak -
+ * @param account 鎵嬫満鎴栬�呴偖绠�
+ * @param loginPwd 瀵嗙爜
+ * @param callBack -
*/
- public void loginByPassword(String account, String loginPwd, CloudCallBeak<LoginUserBean> cloudCallBeak) {
+ public void loginByPassword(String account, String loginPwd, ILoginCallBack callBack) {
String requestUrl = HttpApi.POST_Login;
JsonObject json = new JsonObject();
json.addProperty("account", account);
json.addProperty("loginPwd", loginPwd);
// json.addProperty("platform", "APP");
json.addProperty("grantType", "password");
-
- HttpClient.getInstance().requestHttp(requestUrl, json.toString(), true, true, new BaseSuccessFailureCallBeak() {
+ HDLLinkPMUser.getInstance().loginByPassword(account, loginPwd, new ILoginCallBack() {
@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);
- }
+ public void onSuccess(HDLLoginBean loginBean) {
+
+ if (callBack != null) {
+ saveUserData(loginBean);
+ callBack.onSuccess(loginBean);
}
}
@Override
- public void onFailure(Exception exception) {
- if (cloudCallBeak != null) {
- cloudCallBeak.onFailure(exception);
+ public void onFailure(HDLException error) {
+ if (callBack != null) {
+ callBack.onFailure(error);
}
}
});
+
}
+
+ /**
+ * 淇敼瀵嗙爜(B绔处鍙�)
+ *
+ * @param isPhone true琛ㄧず鎵嬫満鍙�,鍚﹀垯鏄偖绠�
+ * @param account 璐﹀彿 (鎵嬫満鎴栬�呴偖绠�)
+ * @param loginPwd 鏂板瘑鐮�
+ * @param verifyCode 楠岃瘉鐮�
+ * @param cloudCallBeak -
+ */
+ public void changeBPassword(boolean isPhone, String account, String loginPwd, String verifyCode, CloudCallBeak<Boolean> cloudCallBeak) {
+ String requestUrl = HttpApi.B_POST_FORGET_PROGRAM_PWD;
+ JsonObject json = new JsonObject();
+ if (isPhone) {
+ json.addProperty("userPhone", account);//鐢ㄦ埛鎵嬫満鍙� 鎵嬫満鍙峰拰閭蹇呭~鍏朵竴
+ } else {
+ json.addProperty("userEmail", account);
+ }
+ json.addProperty("loginPwd", loginPwd);//鏂板瘑鐮�
+ json.addProperty("verifyCode", verifyCode);//楠岃瘉鐮�
+// json.addProperty("platform", "APP");
+
+ 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);
+ }
+ }
+ });
+
+
+ }
+
/**
* 鍒锋柊Token(B绔处鍙�)
@@ -118,34 +149,170 @@
* @param loginPwd 瀵嗙爜
* @param cloudCallBeak -
*/
- public void refreshToken(String account, String loginPwd, CloudCallBeak<LoginUserBean> cloudCallBeak) {
+ public void refreshToken(String account, String loginPwd, CloudCallBeak<HDLLoginBean> 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() {
+// json.addProperty("refreshToken", UserConfigManage.getInstance().getRefreshToken());
+ HttpClient.getInstance().requestHttp(requestUrl, json.toString(), new CloudCallBeak<String>() {
@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);
- }
+ public void onSuccess(String jsonStr) {
+ Gson gson = new Gson();
+ HDLLoginBean loginBean = gson.fromJson(jsonStr, HDLLoginBean.class);
+// saveUserData(loginBean);
+ if (cloudCallBeak != null) {
+ cloudCallBeak.onSuccess(loginBean);
}
}
@Override
- public void onFailure(Exception exception) {
+ public void onFailure(HDLException e) {
if (cloudCallBeak != null) {
- cloudCallBeak.onFailure(exception);
+ cloudCallBeak.onFailure(e);
}
}
});
}
+
+ // endregion
+
+ // region --------銆怌绔处鍙枫��---------
+
+ /**
+ * 娉ㄥ唽璐﹀彿(C绔处鍙�)
+ * 娉ㄦ剰:B
+ *
+ * @param isPhone true琛ㄧず鎵嬫満鍙�,鍚﹀垯鏄偖绠�
+ * @param account 璐﹀彿 (鎵嬫満鎴栬�呴偖绠�)
+ * @param loginPwd 瀵嗙爜
+ * @param verifyCode 楠岃瘉鐮�
+ * @param cloudCallBeak -
+ */
+ public void registerAccount(boolean isPhone, String account, String loginPwd, String verifyCode, CloudCallBeak<Boolean> cloudCallBeak) {
+ String requestUrl = HttpApi.C_POST_GET_OAUTH_REGISTER;
+ JsonObject json = new JsonObject();
+ if (isPhone) {
+ json.addProperty("memberPhone", account);//鐢ㄦ埛鎵嬫満鍙� 鎵嬫満鍙峰拰閭蹇呭~鍏朵竴
+ } else {
+ json.addProperty("memberEmail", account);
+ }
+ json.addProperty("loginPwd", loginPwd);//鐧婚檰瀵嗙爜锛岄渶瑕丮D5澶勭悊
+ json.addProperty("verifyCode", verifyCode);//楠岃瘉鐮�
+// json.addProperty("platform", "APP");
+// json.addProperty("memberName", "memberName");//浼氬憳鏄电О
+
+ 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);
+ }
+ }
+ });
+
+
+ }
+
+
+ /**
+ * 淇敼瀵嗙爜(C绔处鍙�)
+ *
+ * @param isPhone true琛ㄧず鎵嬫満鍙�,鍚﹀垯鏄偖绠�
+ * @param account 璐﹀彿 (鎵嬫満鎴栬�呴偖绠�)
+ * @param loginPwd 鏂板瘑鐮�
+ * @param verifyCode 楠岃瘉鐮�
+ * @param cloudCallBeak -
+ */
+ public void changeCPassword(boolean isPhone, String account, String loginPwd, String verifyCode, CloudCallBeak<Boolean> cloudCallBeak) {
+ String requestUrl = HttpApi.C_POST_FORGET_PROGRAM_PWD;
+ JsonObject json = new JsonObject();
+ if (isPhone) {
+ json.addProperty("memberPhone", account);//鐢ㄦ埛鎵嬫満鍙� 鎵嬫満鍙峰拰閭蹇呭~鍏朵竴
+ } else {
+ json.addProperty("memberEmail", account);
+ }
+ json.addProperty("loginPwd", loginPwd);//鏂板瘑鐮�
+ json.addProperty("verifyCode", verifyCode);//楠岃瘉鐮�
+// json.addProperty("platform", "APP");
+
+ 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);
+ }
+ }
+ });
+
+
+ }
+ // endregion
+
+
+ /**
+ * 鍙戦�侀獙璇佺爜
+ *
+ * @param isPhone true琛ㄧず鎵嬫満鍙�,鍚﹀垯鏄偖绠�
+ * @param account 璐﹀彿 (鎵嬫満鎴栬�呴偖绠�)
+ * @param phonePrefix 鎵嬫満鍙峰墠缂�
+ * @param verifyType 1:娉ㄥ唽 2锛氭壘鍥炲瘑鐮� 3锛氱粦瀹�4:楠岃瘉鐮佺櫥闄� 5:鏁忔劅鏁版嵁
+ * @param cloudCallBeak -
+ */
+ public void sendVerifyCode(boolean isPhone, String account, String phonePrefix, int verifyType, CloudCallBeak<Boolean> cloudCallBeak) {
+ String requestUrl = HttpApi.POST_SEND_VERIFICATION;
+ JsonObject json = new JsonObject();
+ if (isPhone) {
+ json.addProperty("phone", account);//鐢ㄦ埛鎵嬫満鍙�
+ json.addProperty("phonePrefix", phonePrefix);//鎵嬫満鍙峰墠缂�
+ } else {
+ json.addProperty("mail", account);//閭
+ }
+ json.addProperty("verifyType", verifyType);//1:娉ㄥ唽 2锛氭壘鍥炲瘑鐮� 3锛氱粦瀹�4:楠岃瘉鐮佺櫥闄� 5:鏁忔劅鏁版嵁
+// json.addProperty("languageType", loginPwd);//璇█
+// json.addProperty("expireSecond", expireSecond);//楠岃瘉鐮佽繃鏈熸椂闂达紙绉掞級,榛樿5鍒嗛挓
+// json.addProperty("platform", "APP");
+
+ 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);
+ }
+ }
+ });
+
+
+ }
+
+ /**
+ * 閫�鍑虹櫥褰曟椂璋冪敤锛屾竻闄ゆ帹閫佹暟鎹�
+ */
+ public void SignOutClearData() {
+ String requestUrl = HttpApi.POST_GET_IMAGE_LOGOUT;
+ //閫氱煡浜戠锛屽凡缁忛��鍑虹櫥闄�
+ }
public boolean isPhone(String phone) {
Pattern p = Pattern.compile("^((13[0-9])|(14[0|5|6|7|9])|(15[0-3])|(15[5-9])|(16[6|7])|(17[2|3|5|6|7|8])|(18[0-9])|(19[1|8|9]))\\d{8}$");
@@ -161,7 +328,7 @@
/**
* 鐧诲綍鎴愬姛淇濆瓨鐧诲綍淇℃伅
*/
- private void saveUserData(LoginUserBean obj) {
+ private void saveUserData(HDLLoginBean obj) {
if (obj != null) {
UserConfigManage.getInstance().setLogin(true);//鏄惁鐧诲綍
UserConfigManage.getInstance().setAcceiptPolicy(true);//鏄惁閫夋嫨闅愮鏀跨瓥
--
Gitblit v1.8.0