| | |
| | | |
| | | import com.google.gson.Gson; |
| | | import com.google.gson.JsonObject; |
| | | import com.hdl.linkpm.sdk.core.callback.IResponseCallBack; |
| | | 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.bean.ImageSubmitInfo; |
| | | 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.config.UserConfigManage; |
| | | import com.hdl.photovoltaic.internet.HttpClient; |
| | | import com.hdl.photovoltaic.internet.api.HttpApi; |
| | |
| | | * @param i_account 账号 |
| | | */ |
| | | public void regionByAccount(String i_account, CloudCallBeak<HDLUserRegionBean> cloudCallBeak) { |
| | | HDLLinkPMUser.getInstance().regionByAccount(i_account, new IRegionByAccountCallBack() { |
| | | boolean isBooleanB = UserConfigManage.getInstance().isBAccount(); |
| | | HDLLinkPMUser.getInstance().regionByAccount(isBooleanB, i_account, new IRegionByAccountCallBack() { |
| | | @Override |
| | | public void onSuccess(HDLUserRegionBean regionBean) { |
| | | if (cloudCallBeak != null) { |
| | |
| | | public void onSuccess(HDLLoginBean loginBean) { |
| | | |
| | | if (callBack != null) { |
| | | loginBean.setAccount(account); |
| | | saveUserData(loginBean); |
| | | callBack.onSuccess(loginBean); |
| | | } |
| | |
| | | public void getUserInfo_B(CloudCallBeak<BUserInfo> cloudCallBeak) { |
| | | String requestUrl = HttpApi.B_POST_GET_USERINFO; |
| | | JsonObject json = new JsonObject(); |
| | | json.addProperty("userId", UserConfigManage.getInstance().getUserId()); |
| | | HttpClient.getInstance().requestHttp(requestUrl, json.toString(), new CloudCallBeak<String>() { |
| | | @Override |
| | | public void onSuccess(String jsonStr) { |
| | |
| | | */ |
| | | public void uploadUserHeadImage_C(File file, CloudCallBeak<String> cloudCallBeak) { |
| | | String requestUrl = HttpApi.C_POST_GET_IMAGE_URL; |
| | | HttpClient.getInstance().requestHttpFile(requestUrl, file, new CloudCallBeak<String>() { |
| | | HttpClient.getInstance().uploadingFile(requestUrl, file, new CloudCallBeak<String>() { |
| | | @Override |
| | | public void onSuccess(String jsonStr) { |
| | | if (cloudCallBeak != null) { |
| | |
| | | } |
| | | |
| | | /** |
| | | * 下载子账号头像(C端账号) |
| | | * |
| | | * @param childAccountId 子账号id |
| | | * @param childId 子账号(成员)id查找子账号接口获取到的数据id |
| | | * @param homeId 住宅id |
| | | * @param cloudCallBeak - |
| | | */ |
| | | public void getHeadPortrait_C(String childAccountId, String childId, String homeId, CloudCallBeak<String> cloudCallBeak) { |
| | | String requestUrl = HttpApi.C_POST_GET_IMAGE_URL; |
| | | JsonObject json = new JsonObject(); |
| | | json.addProperty("childAccountId", childAccountId); |
| | | if (TextUtils.isEmpty(childId)) { |
| | | json.addProperty("childId", childId); |
| | | } |
| | | json.addProperty("homeId", homeId); |
| | | 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); |
| | | } |
| | | } |
| | | }); |
| | | |
| | | |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 修改用户名称 |
| | | * |
| | | * @param memberName 用户名称 |
| | | * @param cloudCallBeak - |
| | | */ |
| | | public void updateMemberName_C(String memberName, CloudCallBeak<Boolean> cloudCallBeak) { |
| | | updateMemberInfo_C("", memberName, "", "", "", "", cloudCallBeak); |
| | | } |
| | | |
| | | /** |
| | | * 修改用户头像 |
| | | * |
| | | * @param memberHeadIcon 头像地址 |
| | | * @param cloudCallBeak - |
| | | */ |
| | | public void updateMemberHeadIcon_C(String memberHeadIcon, CloudCallBeak<Boolean> cloudCallBeak) { |
| | | updateMemberInfo_C("", "", "", memberHeadIcon, "", "", cloudCallBeak); |
| | | } |
| | | |
| | | /** |
| | | * 更新个人信息(C端账号) |
| | | * |
| | | * @param languageType 语言类型 |
| | |
| | | * @param memberSex 用户性别 |
| | | * @param cloudCallBeak - |
| | | */ |
| | | public void updateMemberInfo_C(String languageType, |
| | | String memberName, |
| | | String memberBirthday, |
| | | String memberHeadIcon, |
| | | String loginName, |
| | | String memberSex, |
| | | CloudCallBeak<Boolean> cloudCallBeak) { |
| | | public void updateMemberInfo_C(String languageType, String memberName, String memberBirthday, String memberHeadIcon, String loginName, String memberSex, CloudCallBeak<Boolean> cloudCallBeak) { |
| | | String requestUrl = HttpApi.C_POST_UPDATE_MEMBER_INFO; |
| | | JsonObject json = new JsonObject(); |
| | | if (!TextUtils.isEmpty(languageType)) { |
| | |
| | | |
| | | } |
| | | |
| | | /** |
| | | * 绑定认证(手机/邮箱)(C端账号) |
| | | * |
| | | * @param memberPhone 手机号(未绑定手机号参数传null) |
| | | * @param memberEmail 邮箱(未绑定邮箱参数传null) |
| | | * @param verifyCode 验证码 |
| | | */ |
| | | public void bindingAccount_C(String memberPhone, String memberEmail, String verifyCode, CloudCallBeak<Boolean> cloudCallBeak) { |
| | | String requestUrl = HttpApi.C_POST_MEMBERINFO_BINDWITHACCOUNT; |
| | | JsonObject json = new JsonObject(); |
| | | if (!TextUtils.isEmpty(memberPhone)) { |
| | | json.addProperty("memberPhone", memberPhone);//手机号 |
| | | } |
| | | if (!TextUtils.isEmpty(memberEmail)) { |
| | | json.addProperty("memberEmail", memberEmail);//邮箱 |
| | | } |
| | | json.addProperty("verifyCode", verifyCode);//验证码 |
| | | 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 unBindLabel 解绑标识(PHONE EMAIL) |
| | | */ |
| | | public void unBindingAccount_C(String unBindLabel, CloudCallBeak<Boolean> cloudCallBeak) { |
| | | String requestUrl = HttpApi.C_POST_MEMBERINFO_UNBINDWITHACCOUNT; |
| | | JsonObject json = new JsonObject(); |
| | | json.addProperty("unBindLabel", unBindLabel);//手机号(PHONE EMAIL) |
| | | 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 |
| | | |
| | |
| | | /** |
| | | * 退出登录时调用,清除推送数据 |
| | | */ |
| | | public void SignOutClearData() { |
| | | public void signOutClearData() { |
| | | String requestUrl = HttpApi.POST_GET_IMAGE_LOGOUT; |
| | | //通知云端,已经退出登陆 |
| | | HttpClient.getInstance().requestHttp(requestUrl, new JsonObject().toString(), null); |
| | | } |
| | | |
| | | public boolean isPhone(String phone) { |
| | |
| | | if (obj != null) { |
| | | boolean isUserId = UserConfigManage.getInstance().getUserId().equals(obj.getUserId()); |
| | | UserConfigManage.getInstance().setTheSameLoginAccount(isUserId);//与上一个账号是否同一个 |
| | | if (!UserConfigManage.getInstance().isTheSameLoginAccount()) { |
| | | //UserConfigManage.getInstance().getUserId()表示第一次安装登录 |
| | | if (!TextUtils.isEmpty(UserConfigManage.getInstance().getUserId()) && !UserConfigManage.getInstance().isTheSameLoginAccount()) { |
| | | //不同账号,删除之前的旧账号日志信息; |
| | | HdlFileLogic.getInstance().deleteDirectory(HdlFileLogic.getInstance().getCurrentUserRootPath()); |
| | | HdlFileLogic.getInstance().deleteDirectory(HdlFileLogic.getInstance().getUserFilePath()); |
| | | UserConfigManage.getInstance().setHomeId(""); |
| | | } |
| | | UserConfigManage.getInstance().setLogin(true);//是否登录 |
| | | UserConfigManage.getInstance().setAcceiptPolicy(true);//是否选择隐私政策 |
| | |
| | | UserConfigManage.getInstance().setUserId(obj.getUserId());//用户id |
| | | //b端和c端定义账号字段不一样 |
| | | UserConfigManage.getInstance().setAccount(TextUtils.isEmpty(obj.getAccount()) ? obj.getUserPhone() : obj.getAccount());//账号 |
| | | UserConfigManage.getInstance().setBingPhone(obj.getUserPhone());//绑定手机 |
| | | UserConfigManage.getInstance().setBingEmail(obj.getUserEmail());//绑定邮箱 |
| | | |
| | | UserConfigManage.getInstance().setUserName(obj.getName()); |
| | | UserConfigManage.getInstance().setToken(obj.getAccessToken());//Token |
| | | UserConfigManage.getInstance().setHeaderPrefix(obj.getHeaderPrefix());//认证请求头前缀(底层请求统一加) |
| | | UserConfigManage.getInstance().setRefreshToken(obj.getRefreshToken());//刷新Token用的刷新Token用的 |
| | | UserConfigManage.getInstance().setRefreshToken(obj.getRefreshToken());//刷新Token用的 |
| | | UserConfigManage.getInstance().Save(); |
| | | } |
| | | |