From 269d0db0c285fa05ecc093b7d0579b3bd8057273 Mon Sep 17 00:00:00 2001
From: rk <94314517@qq.com>
Date: 星期三, 10 十二月 2025 10:53:51 +0800
Subject: [PATCH] 处理设备消息推送

---
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/DeviceServiceImpl.java |   57 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 56 insertions(+), 1 deletions(-)

diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/DeviceServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/DeviceServiceImpl.java
index 86fa98a..d66c345 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/DeviceServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/DeviceServiceImpl.java
@@ -1,5 +1,6 @@
 package com.doumee.service.business.impl;
 
+import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.doumee.biz.system.SystemDictDataBiz;
@@ -10,6 +11,7 @@
 import com.doumee.core.haikang.model.param.request.CustomBroadcastRequest;
 import com.doumee.core.haikang.model.param.request.TransparentChannelSingleRequest;
 import com.doumee.core.haikang.service.HKService;
+import com.doumee.core.utils.HttpsUtil;
 import com.doumee.dao.business.*;
 import com.doumee.dao.business.model.*;
 import com.doumee.service.business.third.model.LoginUserInfo;
@@ -52,6 +54,8 @@
     private SystemDictDataBiz systemDictDataBiz;
     @Autowired
     private PlatformBroadcastLogMapper platformBroadcastLogMapper;
+    @Autowired
+    private InterfaceLogMapper interfaceLogMapper;
 
 
     @Override
@@ -121,6 +125,7 @@
 
     @Override
     public List<Device> findList(Device device) {
+        device.setIsdeleted(Constants.ZERO);
         QueryWrapper<Device> wrapper = new QueryWrapper<>(device);
         return deviceMapper.selectList(wrapper);
     }
@@ -268,6 +273,57 @@
         }
     }
     @Override
+    public String setBroadcaseBobaoHttp(Device param){
+        Device model = deviceMapper.selectById(param.getId());
+        if(model ==null && Constants.equalsInteger(param.getType(),Constants.FOUR)){
+            throw  new BusinessException(ResponseStatus.DATA_EMPTY);
+        }
+        String input = "";
+
+        model.setSendInfo(param.getSendInfo());
+        return  sendBroadcaseBobaoHttpBiz(model,interfaceLogMapper);
+    }
+    public static String sendBroadcaseBobaoHttpBiz(Device model,InterfaceLogMapper interfaceLogMapper){
+        //閲嶆柊涓嬪彂璁″垝
+        JSONObject jsonObject = new JSONObject();
+        jsonObject.put("command","start");
+        jsonObject.put("TTSContent",model.getSendInfo());
+        jsonObject.put("audioLevel",6);
+        jsonObject.put("audioVolume",100);
+        jsonObject.put("TTSLanguageType","chinese");
+        jsonObject.put("voiceType","female");
+        jsonObject.put("pace",50);
+        JSONArray a = new JSONArray();
+        a.add(1);
+        jsonObject.put("audioOutID",a);
+        String params =jsonObject.toJSONString();
+        log.error("========娴峰悍骞挎挱鎾斁鍏ュ弬鍐呭 : " + params);
+        String result = HttpsUtil.doPutHk(model.getIp(),Integer.parseInt(StringUtils.defaultString(model.getPort(),"80")),model.getDoorId(), model.getDoorName()
+                ,"/ISAPI/AccessControl/EventCardLinkageCfg/TTSAudio?format=json",params);
+        log.error("========娴峰悍骞挎挱鎾斁杩斿洖鍐呭 : " + result);
+
+        JSONObject resultJson = JSONObject.parseObject(result);
+        Boolean success = false;
+        if(Constants.equalsInteger(resultJson.getInteger("statusCode"),Constants.ONE)){
+            success = true;
+        }
+        InterfaceLog log = new InterfaceLog();
+        log.setCreateDate(new Date());
+        log.setUrl("/ISAPI/AccessControl/EventCardLinkageCfg/TTSAudio?format=json");
+        log.setEditDate(log.getCreateDate());
+        log.setPlat(Constants.ZERO);
+        log.setName("娴峰悍骞挎挱鎾斁");
+        log.setIsdeleted(Constants.ZERO);
+        log.setRequest(params);
+        log.setType(Constants.ZERO);
+        log.setSuccess(success?Constants.ZERO:Constants.ONE);
+        log.setRepose(result);
+        interfaceLogMapper.insert(log);
+
+
+        return result;
+    }
+    @Override
     public void setLedContent(TransparentChannelSingleRequest model) {
         Device device = findById(model.getDeviceId());
         if(device == null
@@ -323,7 +379,6 @@
             }catch (Exception e){
                 log.error( "瀵逛笉璧凤紝灞忓箷鍐呭璁剧疆寮傚父"+ device.getName());
             }
-
         }
         log.error( "灞忓箷鍐呭璁剧疆=======================缁撴潫========" );
     }

--
Gitblit v1.9.3