From 73a49ddd0516e5c9a4b697c593d62c74e420403b Mon Sep 17 00:00:00 2001
From: mac <user@users-MacBook-Pro.local>
Date: 星期四, 24 十月 2024 12:27:31 +0800
Subject: [PATCH] 2024年10月24日12:27:28

---
 HDLLinkPMSdk/src/main/java/com/hdl/linkpm/sdk/home/HDLLinkPMHome.java |  191 +++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 191 insertions(+), 0 deletions(-)

diff --git a/HDLLinkPMSdk/src/main/java/com/hdl/linkpm/sdk/home/HDLLinkPMHome.java b/HDLLinkPMSdk/src/main/java/com/hdl/linkpm/sdk/home/HDLLinkPMHome.java
new file mode 100644
index 0000000..78c3b41
--- /dev/null
+++ b/HDLLinkPMSdk/src/main/java/com/hdl/linkpm/sdk/home/HDLLinkPMHome.java
@@ -0,0 +1,191 @@
+package com.hdl.linkpm.sdk.home;
+
+
+import com.hdl.linkpm.sdk.core.callback.IDefaultCallBack;
+import com.hdl.linkpm.sdk.core.callback.IResponseCallBack;
+import com.hdl.linkpm.sdk.home.bean.GatewayBindBean;
+import com.hdl.linkpm.sdk.home.bean.GatewayInfoBean;
+import com.hdl.linkpm.sdk.home.bean.HomeInfoBean;
+import com.hdl.linkpm.sdk.home.bean.RoomInfoBean;
+import com.hdl.linkpm.sdk.home.bean.logic.LogicInfoBean;
+import com.hdl.linkpm.sdk.home.bean.logic.SecurityInfoBean;
+import com.hdl.linkpm.sdk.home.callback.IAddRoomListCallBack;
+import com.hdl.linkpm.sdk.home.callback.IRoomListCallBack;
+import com.hdl.linkpm.sdk.home.controller.HDLPMHomeController;
+
+import java.util.List;
+
+import io.reactivex.rxjava3.disposables.Disposable;
+
+/**
+ * Created by jlchen on 12/2/21.
+ */
+public class HDLLinkPMHome {
+    //instance
+    private volatile static HDLLinkPMHome instance;
+
+    /**
+     * getInstance
+     *
+     * @return HDLLinkPMHome
+     */
+    public static synchronized HDLLinkPMHome getInstance() {
+        if (instance == null) {
+            synchronized (HDLLinkPMHome.class) {
+                if (instance == null) {
+                    instance = new HDLLinkPMHome();
+                }
+            }
+        }
+        return instance;
+    }
+
+
+    /**
+     * house琛ㄧ殑鏁版嵁娌℃湁鍚屾鍒癶ome琛ㄣ�佹暟鎹瓨鍦ㄤ袱寮犺〃閲岄潰锛岄渶瑕佸鎴风璋冩帴鍙e悓姝�
+     *
+     * @param homeInfoBean 浣忓畢Info
+     * @param callBack
+     * @return
+     */
+    public void synchHouseToHome(HomeInfoBean homeInfoBean, IDefaultCallBack callBack) {
+        HDLPMHomeController.getInstance().synchHouseToHome(homeInfoBean, callBack);
+    }
+
+    /**
+     * 鑾峰彇浣忓畢涓嬫埧闂磋〃
+     *
+     * @param homeId   浣忓畢ID
+     * @param roomType 鎴垮眿绫诲瀷 FLOOR  ROOM銆佷负绌虹殑鏃跺�欐煡鍏ㄩ儴
+     * @param pageNo   鍝竴椤�
+     * @param pageSize 椤甸潰澶у皬
+     * @param callBack
+     * @return
+     */
+    public void getRoomList(String homeId, String roomType, int pageNo, int pageSize, IRoomListCallBack callBack) {
+        HDLPMHomeController.getInstance().getRoomList(homeId, roomType, pageNo, pageSize, callBack);
+    }
+
+    /**
+     * 鎴块棿鍒楄〃鍏ㄩ噺鏇存柊銆佹坊鍔犮�佺紪杈戙�佸垹闄ら兘鐢ㄨ鎺ュ彛
+     *
+     * @param homeId   浣忓畢ID
+     * @param roomList 鏈�鏂扮殑鎴块棿鍒楄〃
+     * @param callBack
+     * @return
+     */
+    public void fullAddOrEditRoomList(String homeId, List<RoomInfoBean> roomList, IAddRoomListCallBack callBack) {
+        HDLPMHomeController.getInstance().fullAddOrEditRoomList(homeId, roomList, callBack);
+    }
+
+
+    /***************3.缃戝叧绠$悊***************/
+    /**
+     * 缁戝畾缃戝叧鍒颁綇瀹�
+     *
+     * @param bean     缃戝叧淇℃伅
+     * @param callBack
+     * @return
+     */
+    public void bindGateway(GatewayBindBean bean, IResponseCallBack<GatewayInfoBean> callBack) {
+        HDLPMHomeController.getInstance().bindGateway(bean, callBack);
+    }
+
+    /**
+     * 寮哄埗缁戝畾缃戝叧
+     * 濡傛灉缁戝畾缃戝叧杩斿洖10510 宸茬粡琚粦瀹氫簡,鍒欒皟杩欎釜鎺ュ彛寮哄埗鎹㈢粦
+     *
+     * @param homeId   浣忓畢ID
+     * @param mac      缃戝叧MAC
+     * @param callBack
+     * @return
+     */
+    public void forceBindGateway(String homeId, String mac, IResponseCallBack<GatewayInfoBean> callBack) {
+        HDLPMHomeController.getInstance().forceBindGateway(homeId, mac, callBack);
+    }
+
+    /**
+     * 瑙g粦缃戝叧
+     *
+     * @param homeId   浣忓畢id
+     * @param gateWayId  gatewayId
+     * @param callBack
+     * @return
+     */
+    public void unbindGateway(String homeId, String gateWayId, IResponseCallBack<Boolean> callBack) {
+        HDLPMHomeController.getInstance().unbindGateway(homeId, gateWayId, callBack);
+    }
+    /**
+     * 瑙g粦浠庣綉鍏�
+     *
+     * @param homeId   浣忓畢id
+     * @param oid      璁惧oid
+     * @param callBack
+     * @return
+     */
+    public void unbindFalseGateway(String homeId, String oid, IResponseCallBack<Boolean> callBack) {
+        HDLPMHomeController.getInstance().unbindFalseGateway(homeId, oid, callBack);
+    }
+    /**
+     * 缃戝叧缁戝畾浣忓畢淇℃伅
+     *
+     * @param mac   缃戝叧mac
+     * @param callBack
+     * @return
+     */
+    public void getGatewayHomeInfo(String mac,IResponseCallBack<GatewayInfoBean> callBack) {
+        HDLPMHomeController.getInstance().getGatewayHomeInfo(mac, callBack);
+    }
+
+    /**
+     * 鑾峰彇缃戝叧鍒楄〃
+     *
+     * @param homeId   浣忓畢id
+     * @param callBack
+     * @return
+     */
+    public void getGatewayList(String homeId, IResponseCallBack<List<GatewayInfoBean>> callBack) {
+        HDLPMHomeController.getInstance().getGatewayList(homeId, callBack);
+    }
+
+    /**
+     * 缃戝叧鏇挎崲
+     *
+     * @param homeId    浣忓畢id
+     * @param gatewayId 鏃х綉鍏砳d
+     * @param newMac    鏂扮綉鍏砿ac
+     * @param callBack
+     * @return
+     */
+    public void replaceGateway(String homeId, String gatewayId, String newMac, IDefaultCallBack callBack) {
+        HDLPMHomeController.getInstance().replaceGateway(homeId, gatewayId, newMac, callBack);
+    }
+
+    /***************6.鑷姩鍖栧鍒犳敼鏌ョ鐞�***************/
+    /**
+     * 鍏ㄩ噺鏇存柊鍚屾鑷姩鍖栥�佸瓨鍦ㄤ笉鍙�,涓嶅瓨鍦ㄦ柊澧�
+     *
+     * @param homeId   浣忓畢id
+     * @param logics   鑷姩鍖栧垪琛�
+     * @param callBack
+     * @return
+     */
+    public void fullAddLogicList(String homeId, List<LogicInfoBean> logics, IDefaultCallBack callBack) {
+        HDLPMHomeController.getInstance().fullAddLogicList(homeId, logics, callBack);
+    }
+
+    /***************7.瀹夐槻鍖栧鍒犳敼鏌ョ鐞�***************/
+    /**
+     * 鍏ㄩ噺鏇存柊鍚屾瀹夐槻銆佸瓨鍦ㄤ笉鍙�,涓嶅瓨鍦ㄦ柊澧�
+     *
+     * @param homeId    浣忓畢id
+     * @param gatewayId 缃戝叧ID
+     * @param securitys 瀹夐槻鍒楄〃
+     * @param callBack
+     * @return
+     */
+    public void fullAddSecurityList(String homeId, String gatewayId, List<SecurityInfoBean> securitys, IDefaultCallBack callBack) {
+        HDLPMHomeController.getInstance().fullAddSecurityList(homeId, gatewayId, securitys, callBack);
+    }
+
+}

--
Gitblit v1.8.0