From c13cb54d0b9f9b2c73f213b6cdb163f462fd64c7 Mon Sep 17 00:00:00 2001 From: mac <user@users-MacBook-Pro.local> Date: 星期五, 13 十月 2023 18:17:59 +0800 Subject: [PATCH] 2023年10月13日18:17:52 --- app/src/main/java/com/hdl/photovoltaic/other/HdlAccountLogic.java | 234 +++++++++++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 189 insertions(+), 45 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 fae5e98..bbd321a 100644 --- a/app/src/main/java/com/hdl/photovoltaic/other/HdlAccountLogic.java +++ b/app/src/main/java/com/hdl/photovoltaic/other/HdlAccountLogic.java @@ -9,22 +9,16 @@ 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.linkpm.sdk.user.controller.HDLPMUserController; -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.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 { @@ -47,6 +41,7 @@ return sHdlAccountLogic; } + // region --------銆怋绔处鍙枫��--------- /** * 鍒濆鍖栬处鍙风殑Url鍖哄煙鍦板潃 @@ -54,7 +49,7 @@ * @param i_account 璐﹀彿 */ public void regionByAccount(String i_account, CloudCallBeak<HDLUserRegionBean> cloudCallBeak) { - HDLPMUserController.getInstance().regionByAccount(i_account, new IRegionByAccountCallBack() { + HDLLinkPMUser.getInstance().regionByAccount(i_account, new IRegionByAccountCallBack() { @Override public void onSuccess(HDLUserRegionBean regionBean) { if (cloudCallBeak != null) { @@ -86,11 +81,12 @@ json.addProperty("loginPwd", loginPwd); // json.addProperty("platform", "APP"); json.addProperty("grantType", "password"); - HDLPMUserController.getInstance().loginByPassword(account, loginPwd, new ILoginCallBack() { + HDLLinkPMUser.getInstance().loginByPassword(account, loginPwd, new ILoginCallBack() { @Override public void onSuccess(HDLLoginBean loginBean) { if (callBack != null) { + saveUserData(loginBean); callBack.onSuccess(loginBean); } } @@ -102,28 +98,49 @@ } } }); -// 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); -// } -// } -// } -// -// @Override -// public void onFailure(Exception exception) { -// if (cloudCallBeak != null) { -// cloudCallBeak.onFailure(exception); -// } -// } -// }); + } + + /** + * 淇敼瀵嗙爜(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绔处鍙�) @@ -132,35 +149,162 @@ * @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"); // json.addProperty("refreshToken", UserConfigManage.getInstance().getRefreshToken()); - - HttpClient.getInstance().requestHttp(requestUrl, json.toString(), true, true, new BaseSuccessFailureCallBeak() { + 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); + } + } + }); + + + } /** * 閫�鍑虹櫥褰曟椂璋冪敤锛屾竻闄ゆ帹閫佹暟鎹� @@ -184,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