From b9408687a3c0490289206b7e3b623d1490b38afd Mon Sep 17 00:00:00 2001
From: wjc <1243177876@qq.com>
Date: 星期五, 06 三月 2026 09:52:30 +0800
Subject: [PATCH] 2026年03月06日09:52:20 增加AI接口

---
 app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java |   67 +++++++++++++++++++++++++++++++++
 1 files changed, 67 insertions(+), 0 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 e459528..b6b2a79 100644
--- a/app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java
+++ b/app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java
@@ -47,6 +47,7 @@
 import com.hdl.photovoltaic.listener.LinkCallBack;
 import com.hdl.photovoltaic.ui.LoginActivity;
 import com.hdl.photovoltaic.ui.bean.CUserInfo;
+import com.hdl.photovoltaic.ui.bean.ChatMessageBean;
 import com.hdl.photovoltaic.ui.bean.CloudInverterDeviceBean;
 import com.hdl.photovoltaic.ui.bean.DeviceInfoBean;
 import com.hdl.photovoltaic.ui.bean.DeviceTimeBean;
@@ -939,6 +940,19 @@
                     }
                 });
 
+            } else if (HDLUniMP.UNI_EVENT_REPLY_AI_MODEL.equals(topic)) {
+                switch (type) {
+                    //鍙戦�乤i瀵硅瘽鑱婂ぉ
+                    case HDLUniMP.UNI_EVENT_REPLY_AI_MODEL_SENDAIREQUEST: {
+                        this.uniSendAIChat(mode_type, data, callback);
+                    }
+                    break;
+                    //鍙戦�乤i瀵硅瘽鑱婂ぉ
+                    case HDLUniMP.UNI_EVENT_REPLY_AI_MODEL_PAUSEAIREQUEST: {
+                        this.uniSendStopAIChat(mode_type, data, callback);
+                    }
+                    break;
+                }
             }
 
         } catch (Exception e) {
@@ -947,6 +961,59 @@
 
     }
 
+    /**
+     * Uni(鍙栨秷/鏆傚仠)AI鑱婂ぉ瀵硅瘽
+     *
+     * @param callback -
+     */
+    private void uniSendStopAIChat(String type, Object data, DCUniMPJSCallback callback) {
+        String task_id = getKeyValue("task_id", getKeyValue("data", data));
+        HdlAiLogic.getInstance().chatMessageStop(task_id, new CloudCallBeak<Boolean>() {
+            @Override
+            public void onSuccess(Boolean obj) {
+                if (callback != null) {
+                    uniSuccessCallback(type, obj, callback);
+                }
+            }
+
+            @Override
+            public void onFailure(HDLException e) {
+                uniCallbackData(type, null, e.getCode(), e.getMsg(), callback);
+            }
+        });
+    }
+
+    /**
+     * Uni鍙戣捣AI鑱婂ぉ瀵硅瘽
+     *
+     * @param callback -
+     */
+    private void uniSendAIChat(String type, Object data, DCUniMPJSCallback callback) {
+        String query = getKeyValue("query", getKeyValue("data", data));
+        HdlAiLogic.getInstance().chatMessages(query, new CloudCallBeak<ChatMessageBean>() {
+            @Override
+            public void onSuccess(ChatMessageBean obj) {
+                HDLUniMP.UniCallBackBaseBean uniCallBackBaseBean = new HDLUniMP.UniCallBackBaseBean();
+                if (obj == null) {
+                    //琛ㄧず缁撴潫
+                    uniCallBackBaseBean.setType(HDLUniMP.UNI_EVENT_REPLY_AI_MODEL_AISTREAMINGEND);
+                } else {
+                    uniCallBackBaseBean.setType(HDLUniMP.UNI_EVENT_REPLY_AI_MODEL_AISTREAMING);
+                    uniCallBackBaseBean.setData(obj);
+                }
+                HdlUniLogic.getInstance().sendUni(HDLUniMP.UNI_EVENT_NOTIFICATION_DEVICE_MODEL, uniCallBackBaseBean);
+            }
+
+            @Override
+            public void onFailure(HDLException e) {
+                uniCallbackData(type, null, e.getCode(), e.getMsg(), callback);
+//                HDLUniMP.UniCallBackBaseBean uniCallBackBaseBean = new HDLUniMP.UniCallBackBaseBean();
+//                uniCallBackBaseBean.setType(HDLUniMP.UNI_EVENT_REPLY_AI_MODEL_AISTREAMINGEND);
+//                uniCallBackBaseBean.setData(e.getMessage());
+//                HdlUniLogic.getInstance().sendUni(HDLUniMP.UNI_EVENT_NOTIFICATION_DEVICE_MODEL, uniCallBackBaseBean);
+            }
+        });
+    }
 
     /**
      * 鍘熺敓銆愭墦寮�銆憉ni鎸囧畾椤甸潰

--
Gitblit v1.8.0