mac
2024-06-25 2bc156ec08369884b44961cd446201d35a66fff0
app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java
@@ -10,6 +10,7 @@
import android.location.Location;
import android.location.LocationManager;
import android.os.IBinder;
import android.os.SystemClock;
import android.print.PageRange;
import android.provider.Settings;
import android.text.TextUtils;
@@ -91,6 +92,7 @@
import java.util.Objects;
import java.util.concurrent.atomic.AtomicInteger;
import io.dcloud.feature.sdk.DCUniMPSDK;
import io.dcloud.feature.unimp.DCUniMPJSCallback;
import okhttp3.ResponseBody;
@@ -167,6 +169,20 @@
            } else if (HDLUniMP.UNI_EVENT_REPLY_HOME_MODEL.equals(topic)) {
                //住宅模块
                switch (type) {
                    //扫码添加电站
                    case HDLUniMP.UNI_EVENT_REPLY_HOME_ADD: {
                        String url = getKeyValue("url", getKeyValue("data", data));
                        //EventBus事件分发
                        HdlCommonLogic.getInstance().postEventBusSticky(
                                HDLUniMP.UNI_EVENT_REPLY_HOME_ADD,
                                HDLUniMP.UNI_EVENT_REPLY_HOME_ADD,
                                url);
                        if (callback != null) {
                            uniSuccessCallback(type, null, callback);
                        }
                    }
                    break;
                    //创建电站
                    case HDLUniMP.UNI_EVENT_REPLY_HOME_CREATION: {
                        //EventBus事件分发
@@ -174,11 +190,17 @@
                                HDLUniMP.UNI_EVENT_REPLY_HOME_MODEL,
                                HDLUniMP.UNI_EVENT_REPLY_HOME_CREATION,
                                getKeyValue("data", data));
                        if (callback != null) {
                            uniSuccessCallback(type, null, callback);
                        }
                    }
                    break;
                    //读取详情
                    case HDLUniMP.UNI_EVENT_REPLY_HOME_DETAILS: {
                        if (callback != null) {
                            uniSuccessCallback(type, null, callback);
                        }
                    }
                    break;
                    //电站删除
@@ -194,6 +216,9 @@
//                                HDLUniMP.UNI_EVENT_REPLY_HOME_CLOSE_HOME_DETAILS_PAGE,
//                                LowerTagType.power_station.toString(),
//                                getKeyValue("data", data));
                        if (callback != null) {
                            uniSuccessCallback(type, null, callback);
                        }
                    }
                    break;
                    //住宅【电站】编辑
@@ -203,12 +228,14 @@
                                HDLUniMP.UNI_EVENT_REPLY_HOME_MODEL,
                                HDLUniMP.UNI_EVENT_REPLY_HOME_EDIT,
                                getKeyValue("data", data));
                        if (callback != null) {
                            uniSuccessCallback(type, null, callback);
                        }
                    }
                    break;
                    //电站的交付二维码(安装商)
                    case HDLUniMP.UNI_EVENT_REPLY_HOME_DELIVERYURLQRCODE: {
                        uniGetDeliveryUrlQrcode(type, data, callback);
                    }
                    break;
                    //电站手动交付(安装商)
@@ -224,10 +251,9 @@
                    }
                    break;
                }
                if (callback != null) {
                    uniSuccessCallback(type, null, callback);
                }
            } else if (HDLUniMP.UNI_EVENT_REPLY_DEVICE_MODEL.equals(topic)) {
                //设备模块
                switch (type) {
@@ -531,6 +557,13 @@
                    }
                    break;
                    //员工详情获取
                    case HDLUniMP.UNI_EVENT_REPLY_STAFF_DETAIL: {
                        uniGetStaffInfo(type, data, callback);
                    }
                    break;
                    //员工删除
                    case HDLUniMP.UNI_EVENT_REPLY_STAFF_DELETE: {
@@ -619,12 +652,6 @@
        HdlLogLogic.print("uni---组装uni发送数据格式---" + json, false);
    }
    public void openUniMPDelay(String path, JSONObject jsonObject) {
        JSONObject json = this.createdJSONObject(jsonObject, true);
        HDLUniMPSDKManager.getInstance().openUniMPDelay(HDLUniMP.UNI_APP_ID, path, json, HdlUniLogic.this);
        HdlLogLogic.print("uni---组装uni发送数据格式---" + json, false);
    }
    /**
     * 原生【主动】向小程序发送通知事件
     * 注意:需要提前小程序在运行才可成功
@@ -654,6 +681,8 @@
     * 电站删除
     */
    private void uniGetDelResidence(String type, Object data, DCUniMPJSCallback callback) {
        String homeId = getKeyValue("homeId", getKeyValue("data", data));
        HdlResidenceLogic.getInstance().delResidence(homeId, new CloudCallBeak<Boolean>() {
            @Override
@@ -666,9 +695,13 @@
                list.clear();//清空缓存;
//              HDLLinkLocalGateway.getInstance().getGatewayList().clear();
                HdlResidenceLogic.getInstance().delHouseId(homeId);//删除电站缓存
                //uni收到成功结果响应后,会自动关闭小程序,在HDLUniMPSDKManager类里面有方法()监听到小程序关闭,监听到小程序关闭事件后,会重新获取电站列表进行刷界面;
                uniSuccessCallback(type, obj, callback);
                //收到成功结果响应后,会自动关闭小程序,在HDLUniMPSDKManager类里面有方法()监听到小程序关闭,监听到小程序关闭事件后,会重新获取电站列表进行刷界面;
                if (null != HDLUniMPSDKManager.getInstance().getUniMP()) {
                    HDLUniMPSDKManager.getInstance().getUniMP().closeUniMP();
                }
                if (!UserConfigManage.getInstance().isBAccount()) {
                    HdlCommonLogic.getInstance().postEventBus(HDLUniMP.UNI_EVENT_REPLY_HOME_MODEL, HDLUniMP.UNI_EVENT_REPLY_HOME_DEl, homeId);
                }
            }
            @Override
@@ -711,6 +744,10 @@
            @Override
            public void onSuccess(Boolean obj) {
                uniSuccessCallback(type, obj, callback);
                //收到成功结果响应后,会自动关闭小程序,在HDLUniMPSDKManager类里面有方法()监听到小程序关闭,监听到小程序关闭事件后,会重新获取电站列表进行刷界面;
                if (null != HDLUniMPSDKManager.getInstance().getUniMP()) {
                    HDLUniMPSDKManager.getInstance().getUniMP().closeUniMP();
                }
            }
            @Override
@@ -783,7 +820,7 @@
    }
    /**
     * 员工添加
     * 员工删除
     */
    private void uniGetStaffDelete(String type, Object data, DCUniMPJSCallback callback) {
        StaffBean staffBean = new StaffBean();
@@ -833,14 +870,32 @@
    }
    /**
     * 获取员工详情
     */
    private void uniGetStaffInfo(String type, Object data, DCUniMPJSCallback callback) {
        String userId = getKeyValue("userId", getKeyValue("data", data));
        HdlMemberLogic.getInstance().getStaffInfo(userId, new CloudCallBeak<StaffBean>() {
            @Override
            public void onSuccess(StaffBean obj) {
                uniSuccessCallback(type, obj, callback);
            }
            @Override
            public void onFailure(HDLException e) {
                uniExceptionCallback(type, e, callback);
            }
        });
    }
    /**
     * 获取员工列表
     */
    private void uniGetStaffList(String type, Object data, DCUniMPJSCallback callback) {
        long pageNo = Long.parseLong(getKeyValue("pageNo", getKeyValue("data", data)));
        long pageSize = Long.parseLong(getKeyValue("pageSize", getKeyValue("data", data)));
        HdlMemberLogic.getInstance().getStaffList(pageNo, pageSize, new CloudCallBeak<PageNumberObject<List<StaffBean>>>() {
        HdlMemberLogic.getInstance().getStaffList(pageNo, pageSize, new CloudCallBeak<PageNumberObject<StaffBean>>() {
            @Override
            public void onSuccess(PageNumberObject<List<StaffBean>> obj) {
            public void onSuccess(PageNumberObject<StaffBean> obj) {
                uniSuccessCallback(type, obj.getList(), callback);
            }
@@ -850,6 +905,7 @@
            }
        });
    }
    /**
     * 成员编辑
@@ -1949,9 +2005,12 @@
    private void uniDelInverterDevice(String type, Object data, DCUniMPJSCallback callback) {
        String deviceId = getKeyValue("deviceId", getKeyValue("data", data));
        String homeId = getKeyValue("homeId", getKeyValue("data", data));
        String mac = getKeyValue("mac", getKeyValue("data", data));
        HdlDeviceLogic.getInstance().delInverterDevice(homeId, deviceId, new CloudCallBeak<Boolean>() {
            @Override
            public void onSuccess(Boolean obj) {
                //初始化逆变器设备
                HdlDeviceLogic.getInstance().initializeInverter(mac, null);
                //移除本地缓存
                HdlDeviceLogic.getInstance().removeLocalCacheMemoryGatewayToDeviceId(homeId, deviceId);
                uniSuccessCallback(type, null, callback);
@@ -2386,12 +2445,11 @@
            if (callback != null) {
                callback.invoke(getJSONObject(uniCallBackBaseBean));
//                callback.invoke(uniCallBackBaseBean);
                HdlLogLogic.print("uni---回复---" + type + "---" + new Gson().toJson(uniCallBackBaseBean), true);
                HdlLogLogic.print("回复---uni---" + type + "---" + new Gson().toJson(uniCallBackBaseBean), true);
            }
        } catch (Exception e) {
            HdlLogLogic.print("uni---回复---" + type + "---" + e.getMessage(), true);
            HdlLogLogic.print("回复---uni---" + type + "---" + e.getMessage(), true);
        }
    }