From f49ce86fe82047d2dd94adf65316013729d090a0 Mon Sep 17 00:00:00 2001 From: mac <user@users-MacBook-Pro.local> Date: 星期四, 14 三月 2024 10:28:29 +0800 Subject: [PATCH] 2024年03月14日10:28:25 --- app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java | 83 +++++++++++++++++++++++++++++++++++++++++ 1 files changed, 82 insertions(+), 1 deletions(-) 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 dc2df03..75a6bed 100644 --- a/app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java +++ b/app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java @@ -30,6 +30,7 @@ import com.hdl.photovoltaic.internet.HttpServer.MyNanoHttpServer; import com.hdl.photovoltaic.listener.CloudCallBeak; import com.hdl.photovoltaic.listener.LinkCallBack; +import com.hdl.photovoltaic.ui.bean.CUserInfo; import com.hdl.photovoltaic.ui.bean.CloudInverterDeviceBean; import com.hdl.photovoltaic.ui.bean.DeviceTimeBean; import com.hdl.photovoltaic.ui.bean.Geolocation; @@ -111,7 +112,21 @@ String type = getKeyValue("type", data);//灏忕被 String mode_type = "澶х被->" + topic + "--->" + "灏忕被->" + type;//鐢ㄦ潵鎵撳嵃鐨� HdlLogLogic.print("uni--->鍙戦��--->" + mode_type + "\r\n" + data, true); - if (HDLUniMP.UNI_EVENT_REPLY_HOME_MODEL.equals(topic)) { + if (HDLUniMP.UNI_EVENT_REPLY_USER_MODEL.equals(topic)) { + //鐢ㄦ埛妯″潡 + switch (type) { + //鐢ㄦ埛淇℃伅 + case HDLUniMP.UNI_EVENT_REPLY_USER_INFO: { + this.uniGetUserInfo(mode_type, data, callback); + } + //鐢ㄦ埛澶村儚锛堟棫骞冲彴閫昏緫鏄ご鍍忓崟鐙幏鍙栦笅杞藉湴鍧�锛� + case HDLUniMP.UNI_EVENT_REPLY_USER_IMAGE: { + uniGetImageKey(mode_type, data, callback); + } + break; + } + + } else if (HDLUniMP.UNI_EVENT_REPLY_HOME_MODEL.equals(topic)) { //浣忓畢妯″潡 switch (type) { //鍒涘缓鐢电珯 @@ -1079,6 +1094,72 @@ } /** + * 鑾峰彇鐢ㄦ埛淇℃伅 + * + * @param data uni鏁版嵁 + * @param callback uni鍥炶皟 + */ + private void uniGetUserInfo(String type, Object data, DCUniMPJSCallback callback) { + HdlAccountLogic.getInstance().getMemberInfo_C(new CloudCallBeak<CUserInfo>() { + @Override + public void onSuccess(CUserInfo cUserInfo) { + if (cUserInfo == null) { + return; + } + UserConfigManage.getInstance().setBingPhone(cUserInfo.getMemberPhone()); + UserConfigManage.getInstance().setBingEmail(cUserInfo.getMemberEmail()); + UserConfigManage.getInstance().Save(); + //鑾峰彇鐢ㄦ埛澶村儚璺緞 + if (cUserInfo.getMemberHeadIcon().contains("http")) { + //鏇存柊鐢ㄦ埛澶村儚 + uniCallbackData(type, cUserInfo, callback); + } else { + HdlAccountLogic.getInstance().getImageKey_C(cUserInfo.getMemberHeadIcon(), new CloudCallBeak<String>() { + @Override + public void onSuccess(String url) { + cUserInfo.setMemberHeadIcon(url); + uniCallbackData(type, cUserInfo, callback); + } + + @Override + public void onFailure(HDLException e) { + uniCallbackData(type, null, e.getCode(), e.getMsg(), callback); + } + }); + } + + } + + @Override + public void onFailure(HDLException e) { + uniCallbackData(type, null, e.getCode(), e.getMsg(), callback); + } + }); + } + + /** + * 鑾峰彇鐢ㄦ埛澶村儚 + * + * @param data uni鏁版嵁 + * @param callback uni鍥炶皟 + */ + private void uniGetImageKey(String type, Object data, DCUniMPJSCallback callback) { + String imageKey = getKeyValue("imageKey", getKeyValue("data", data)); + HdlAccountLogic.getInstance().getImageKey_C(imageKey, new CloudCallBeak<String>() { + @Override + public void onSuccess(String url) { + uniCallbackData(type, url, callback); + } + + @Override + public void onFailure(HDLException e) { + uniCallbackData(type, null, e.getCode(), e.getMsg(), callback); + } + }); + } + + + /** * 閫嗗彉鍣ㄦ竻绌轰綇瀹卛d * * @param data uni鏁版嵁 -- Gitblit v1.8.0