From d723fee177238df0dbab80eb788876ebd154927d Mon Sep 17 00:00:00 2001
From: hxb <hxb@hdlchina.com.cn>
Date: 星期四, 24 十月 2024 11:55:46 +0800
Subject: [PATCH] Update HDLLoginInterceptor.java

---
 HDLLinkPMSdk/src/main/java/com/hdl/linkpm/sdk/device/HDLLinkPMDevice.java |  272 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 272 insertions(+), 0 deletions(-)

diff --git a/HDLLinkPMSdk/src/main/java/com/hdl/linkpm/sdk/device/HDLLinkPMDevice.java b/HDLLinkPMSdk/src/main/java/com/hdl/linkpm/sdk/device/HDLLinkPMDevice.java
new file mode 100644
index 0000000..f579697
--- /dev/null
+++ b/HDLLinkPMSdk/src/main/java/com/hdl/linkpm/sdk/device/HDLLinkPMDevice.java
@@ -0,0 +1,272 @@
+package com.hdl.linkpm.sdk.device;
+
+import android.text.TextUtils;
+
+import com.google.gson.JsonArray;
+import com.google.gson.JsonObject;
+import com.hdl.hdlhttp.HxHttp;
+import com.hdl.linkpm.sdk.core.api.HDLCloudHomeApi;
+import com.hdl.linkpm.sdk.core.callback.IDefaultCallBack;
+import com.hdl.linkpm.sdk.core.callback.IResponseCallBack;
+import com.hdl.linkpm.sdk.core.exception.HDLException;
+import com.hdl.linkpm.sdk.core.response.HDLResponse;
+import com.hdl.linkpm.sdk.device.bean.CategoryInfo;
+import com.hdl.linkpm.sdk.device.bean.DeviceOidInfoBean;
+import com.hdl.linkpm.sdk.device.bean.FunctionActionBean;
+import com.hdl.linkpm.sdk.device.bean.FunctionInfoBaseBean;
+import com.hdl.linkpm.sdk.device.bean.FunctionInfoListBean;
+import com.hdl.linkpm.sdk.device.bean.GatewayCloudBean;
+import com.hdl.linkpm.sdk.device.bean.ProductInfo;
+import com.hdl.linkpm.sdk.device.controller.HDLPMDeviceController;
+import com.hdl.linkpm.sdk.home.bean.QuestionInfo;
+import com.hdl.linkpm.sdk.home.bean.QuestionListInfo;
+import com.hdl.linkpm.sdk.utils.HDLGsonUtils;
+
+import java.util.List;
+
+import io.reactivex.rxjava3.disposables.Disposable;
+
+/**
+ * Created by jlchen on 12/2/21.
+ */
+public class HDLLinkPMDevice {
+    //instance
+    private volatile static HDLLinkPMDevice instance;
+
+    /**
+     * getInstance
+     *
+     * @return HDLLinkDevice
+     */
+    public static synchronized HDLLinkPMDevice getInstance() {
+        if (instance == null) {
+            synchronized (HDLLinkPMDevice.class) {
+                if (instance == null) {
+                    instance = new HDLLinkPMDevice();
+                }
+            }
+        }
+        return instance;
+    }
+
+    /***************4.璁惧銆佸姛鑳藉鍒犳敼鏌ョ鐞�***************/
+    /**
+     * 璁惧鍩烘湰淇℃伅鍒楄〃(oid)鍏ㄩ噺娣诲姞
+     *
+     * @param homeId        浣忓畢id
+     * @param oidDeviceList 鏈�鏂扮殑璁惧Oid鍒楄〃
+     * @param callBack
+     * @return
+     */
+    public void fullAddDeviceOidList(String homeId, List<DeviceOidInfoBean> oidDeviceList, IDefaultCallBack callBack) {
+        HDLPMDeviceController.getInstance().fullAddDeviceOidList(homeId, oidDeviceList, callBack);
+    }
+
+    /**
+     * 璁惧鍩烘湰淇℃伅鍒楄〃(oid)鑾峰彇
+     *
+     * @param homeId   浣忓畢id
+     * @param callBack
+     * @return
+     */
+    public void getDeviceOidList(String homeId, IResponseCallBack<List<DeviceOidInfoBean>> callBack) {
+        HDLPMDeviceController.getInstance().getDeviceOidList(homeId, callBack);
+    }
+
+    /**
+     * 璁惧缃戝叧鍒楄〃
+     *
+     * @param homeId   浣忓畢id
+     * @param callBack
+     * @return
+     */
+    public void getGatewayList(String homeId, IResponseCallBack<List<GatewayCloudBean>> callBack) {
+        HDLPMDeviceController.getInstance().getGatewayList(homeId, callBack);
+    }
+
+
+    /**
+     * 璁惧鍩烘湰淇℃伅(oid)鍒犻櫎
+     * 鍒犻櫎璁惧鎴栬�呬粠缃戝叧绛塷id
+     *
+     * @param homeId   浣忓畢id
+     * @param oid      璁惧鐨刼id
+     * @param callBack
+     * @return
+     */
+    public void removeDeviceOid(String homeId, String oid, IDefaultCallBack callBack) {
+        HDLPMDeviceController.getInstance().removeDeviceOid(homeId, oid, callBack);
+    }
+
+    /**
+     * 璁惧锛堝姛鑳斤級鍏ㄩ噺鏇存柊
+     *
+     * @param homeId       浣忓畢id
+     * @param gatewayId    缃戝叧Id
+     * @param functionList 鏈�鏂扮殑鍔熻兘鍒楄〃
+     * @param callBack
+     * @return
+     */
+    public void fullAddFunctionList(String homeId, String gatewayId, List<FunctionInfoBaseBean> functionList, IDefaultCallBack callBack) {
+        HDLPMDeviceController.getInstance().fullAddFunctionList(homeId, gatewayId, functionList, callBack);
+    }
+
+    /**
+     * 鑾峰彇绫荤洰
+     *
+     * @param callBack
+     * @return
+     */
+    public void getCategoryAllTree(IResponseCallBack<List<CategoryInfo>> callBack) {
+        HDLPMDeviceController.getInstance().getCategoryList(callBack);
+    }
+
+    /**
+     * 鑾峰彇绫荤洰涓嬭澶囧垪琛ㄦ牴鎹悕瀛�
+     *
+     * @param callBack
+     * @return
+     */
+    public void getCategoryListByName(String productName, IResponseCallBack<List<ProductInfo>> callBack) {
+        HDLPMDeviceController.getInstance().getCategoryListByName(productName, callBack);
+    }
+
+    /**
+     * 鑾峰彇绫荤洰涓嬭澶囧垪琛ㄦ牴鎹被鐩�
+     *
+     * @param callBack
+     * @return
+     */
+    public void getCategoryListByCode(String categorySecondCode, IResponseCallBack<List<ProductInfo>> callBack) {
+        HDLPMDeviceController.getInstance().getCategoryListByCode(categorySecondCode, callBack);
+    }
+
+    /**
+     * 璁惧锛堝姛鑳斤級鍒楄〃鑾峰彇
+     *
+     * @param homeId    浣忓畢id
+     * @param gatewayId 缃戝叧Id
+     * @param callBack
+     * @return
+     */
+    public void getFunctionList(String homeId, String gatewayId, IResponseCallBack<FunctionInfoListBean> callBack) {
+        HDLPMDeviceController.getInstance().getFunctionList(homeId, gatewayId, callBack);
+    }
+
+    /**
+     * 璁惧锛堝姛鑳斤級鍒犻櫎锛屾敮鎸佹壒閲�
+     *
+     * @param homeId    浣忓畢id
+     * @param gatewayId 缃戝叧Id
+     * @param devices   浜戠璁惧ID闆嗗悎
+     * @param callBack
+     * @return
+     */
+    public void batchDeleteFunctionList(String homeId, String gatewayId, List<String> devices, IDefaultCallBack callBack) {
+        HDLPMDeviceController.getInstance().batchDeleteFunctionList(homeId, gatewayId, devices, callBack);
+    }
+
+    /**
+     * 鎺у埗璁惧
+     *
+     * @param homeId    浣忓畢id
+     * @param gatewayId 缃戝叧Id
+     * @param actions   鍔ㄤ綔
+     * @param callBack
+     * @return
+     */
+    public void controlFunction(String homeId, String gatewayId, List<FunctionActionBean> actions, IDefaultCallBack callBack) {
+        HDLPMDeviceController.getInstance().controlFunction(homeId, gatewayId, actions, callBack);
+    }
+
+
+    /**
+     * 缁戝畾姣背娉㈣澶�
+     *
+     * @param homeId   浣忓畢Id
+     * @param name     璁惧鍚嶇О
+     * @param spk      浜у搧spk
+     * @param oid      璁惧oid
+     * @param mac      璁惧mac
+     * @param sid      璁惧sid
+     * @param uidList  鎴块棿uid鍒楄〃
+     * @param callBack 鍥炶皟
+     */
+    public void bindMillimeterDevice(String homeId, String name, String spk, String oid, String mac, String sid, List<String> uidList, IResponseCallBack<String> callBack) {
+        HDLPMDeviceController.getInstance().bindMillimeterDevice(homeId, name, spk, oid, mac, sid, uidList, callBack);
+    }
+
+    /**
+     * 瑙g粦姣背娉㈣澶�
+     *
+     * @param homeId   浣忓畢Id
+     * @param spk      浜у搧spk
+     * @param mac      璁惧mac
+     * @param callBack 鍥炶皟
+     */
+    public void unBindMillimeterDevice(String homeId, String spk, String mac, IResponseCallBack<String> callBack) {
+        HDLPMDeviceController.getInstance().unBindMillimeterDevice(homeId, spk, mac, callBack);
+    }
+
+    /**
+     * 鑾峰彇link鍔熻兘鍒楄〃
+     *
+     * @param homeId   浣忓畢Id
+     * @param spk      spk
+     * @param callBack 鍥炶皟
+     */
+    public void getDeviceList(String homeId, String spk, IResponseCallBack<FunctionInfoListBean> callBack) {
+        HDLPMDeviceController.getInstance().getDeviceList(homeId, spk, callBack);
+    }
+
+    /**
+     * 鑾峰彇姣背娉�(鑾峰彇璁惧杩滅▼閫氳淇℃伅)
+     *
+     * @param homeId   浣忓畢Id
+     * @param spk      spk
+     * @param mac      璁惧mac
+     * @param callBack 鍥炶皟
+     */
+    public void getDeviceRemoteInfo(String homeId, String spk, String mac, IResponseCallBack<String> callBack) {
+        HDLPMDeviceController.getInstance().getDeviceRemoteInfo(homeId, spk, mac, callBack);
+    }
+
+    /**
+     * 璁惧锛堝姛鑳斤級淇敼澶囨敞
+     *
+     * @param homeId    浣忓畢id
+     * @param deviceId 璁惧Id
+     * @param name 璁惧鍚嶇О
+     */
+    public void rename(String homeId, long deviceId,String name, IResponseCallBack<String> callBack) {
+     HDLPMDeviceController.getInstance().rename( homeId,  deviceId, name, callBack);
+    }
+
+
+    /**
+     * 璁惧锛堝姛鑳斤級缁戝畾鎴块棿
+     *
+     * @param homeId    浣忓畢id
+     * @param deviceIds 璁惧id鍒楄〃
+     * @param roomIds 鎴块棿id鍒楄〃
+     */
+    public void bindRoom(String homeId, List<String> deviceIds,List<String> roomIds, IResponseCallBack<String> callBack) {
+        HDLPMDeviceController.getInstance().bindRoom( homeId,  deviceIds, roomIds, callBack);
+    }
+
+
+
+    /**
+     * 鑾峰彇甯歌闂鍒楄〃
+     *
+     * @param languageType 0:涓枃 1:鑻辨枃,鍙敤鍊�:CHINESE,ENGLISH
+     * @param pageNo       褰撳墠椤�
+     * @param pageSize     椤甸潰澶у皬
+     * @param question     闂
+     * @param callBack
+     * @return
+     */
+    public void getQuestionList(String languageType, String question, String pageNo, String pageSize, IResponseCallBack<QuestionListInfo> callBack) {
+        HDLPMDeviceController.getInstance().getQuestionList(languageType, question, pageNo, pageSize, callBack);
+    }
+}

--
Gitblit v1.8.0