diff --git a/fys-admin/src/main/java/com/fuyuanshen/app/service/AudioProcessService.java b/fys-admin/src/main/java/com/fuyuanshen/app/service/AudioProcessService.java index c7ec5e36..82f27191 100644 --- a/fys-admin/src/main/java/com/fuyuanshen/app/service/AudioProcessService.java +++ b/fys-admin/src/main/java/com/fuyuanshen/app/service/AudioProcessService.java @@ -544,7 +544,7 @@ public class AudioProcessService { extension = "." + extension; } - return timestamp + "_" + String.format("%04d", randomNum) + "_" + uuidPart + extension; + return timestamp; } public List queryAudioFileList(Long deviceId) { diff --git a/fys-admin/src/main/java/com/fuyuanshen/global/mqtt/rule/hby100j/FuncType1Rest.java b/fys-admin/src/main/java/com/fuyuanshen/global/mqtt/rule/hby100j/FuncType1Rest.java index d557ddaa..22a9085c 100644 --- a/fys-admin/src/main/java/com/fuyuanshen/global/mqtt/rule/hby100j/FuncType1Rest.java +++ b/fys-admin/src/main/java/com/fuyuanshen/global/mqtt/rule/hby100j/FuncType1Rest.java @@ -1,46 +1,46 @@ -//package com.fuyuanshen.global.mqtt.rule.hby100j; -// -//import com.alibaba.fastjson2.JSONObject; -//import com.fuyuanshen.common.core.constant.GlobalConstants; -//import com.fuyuanshen.common.redis.utils.RedisUtils; -//import com.fuyuanshen.global.mqtt.base.NewMqttMessageRule; -//import com.fuyuanshen.global.mqtt.base.NewMqttRuleContext; -//import lombok.extern.slf4j.Slf4j; -//import org.springframework.stereotype.Component; -// -//import java.util.Map; -// -//import static com.fuyuanshen.global.mqtt.constants.DeviceRedisKeyConstants.DEVICE_KEY_PREFIX; -// -///** -// * 设备复位 -// */ -//@Slf4j -//@Component -//public class FuncType1Rest implements NewMqttMessageRule { -// -// @Override -// public String getCommandType() { -// return "HBY100_1"; -// } -// -// @Override -// public void execute(NewMqttRuleContext context) { -// log.info("开始处理设备复位,消息负载:{}", context.getPayloadDict()); -// -// try { -// // 构建强制声光报警开关的Redis键 -//// String redisKey = GlobalConstants.GLOBAL_REDIS_KEY + DEVICE_KEY_PREFIX + -//// context.getDeviceImei() + ":force_audio_visual_alarm_switch"; -//// -//// Map payloadDict = context.getPayloadDict(); -//// if (payloadDict != null) { -//// // 存储强制声光报警开关状态到Redis -//// RedisUtils.setCacheObject(redisKey, JSONObject.toJSONString(payloadDict)); -//// } -// log.info("设备复位,设备ID:{}", context.getDeviceImei()); -// } catch (Exception e) { -// log.error("处理设备复位失败", e); -// } -// } -//} +package com.fuyuanshen.global.mqtt.rule.hby100j; + +import com.alibaba.fastjson2.JSONObject; +import com.fuyuanshen.common.core.constant.GlobalConstants; +import com.fuyuanshen.common.redis.utils.RedisUtils; +import com.fuyuanshen.global.mqtt.base.NewMqttMessageRule; +import com.fuyuanshen.global.mqtt.base.NewMqttRuleContext; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Component; + +import java.util.Map; + +import static com.fuyuanshen.global.mqtt.constants.DeviceRedisKeyConstants.DEVICE_KEY_PREFIX; + +/** + * 设备复位 + */ +@Slf4j +@Component +public class FuncType1Rest implements NewMqttMessageRule { + + @Override + public String getCommandType() { + return "HBY100_1"; + } + + @Override + public void execute(NewMqttRuleContext context) { + log.info("开始处理设备复位,消息负载:{}", context.getPayloadDict()); + + try { + // 构建强制声光报警开关的Redis键 + String redisKey = GlobalConstants.GLOBAL_REDIS_KEY + DEVICE_KEY_PREFIX + + context.getDeviceImei() + ":rest"; + + Map payloadDict = context.getPayloadDict(); + if (payloadDict != null) { + // 存储强制声光报警开关状态到Redis + RedisUtils.setCacheObject(redisKey, JSONObject.toJSONString(payloadDict)); + } + log.info("设备复位,设备ID:{}", context.getDeviceImei()); + } catch (Exception e) { + log.error("处理设备复位失败", e); + } + } +} diff --git a/fys-admin/src/main/java/com/fuyuanshen/global/mqtt/rule/hby100j/FuncType5UpdateVoice.java b/fys-admin/src/main/java/com/fuyuanshen/global/mqtt/rule/hby100j/FuncType5UpdateVoice.java index 724c3171..f219a81e 100644 --- a/fys-admin/src/main/java/com/fuyuanshen/global/mqtt/rule/hby100j/FuncType5UpdateVoice.java +++ b/fys-admin/src/main/java/com/fuyuanshen/global/mqtt/rule/hby100j/FuncType5UpdateVoice.java @@ -29,13 +29,13 @@ public class FuncType5UpdateVoice implements NewMqttMessageRule { log.info("HBY100J更新语音,消息负载:{}", context.getPayloadDict()); try { -// String redisKey = GlobalConstants.GLOBAL_REDIS_KEY + DEVICE_KEY_PREFIX + -// context.getDeviceImei() + ":updateVoice"; -// -// Map payloadDict = context.getPayloadDict(); -// if (payloadDict != null) { -// RedisUtils.setCacheObject(redisKey, JSONObject.toJSONString(payloadDict)); -// } + String redisKey = GlobalConstants.GLOBAL_REDIS_KEY + DEVICE_KEY_PREFIX + + context.getDeviceImei() + ":updateVoice"; + + Map payloadDict = context.getPayloadDict(); + if (payloadDict != null) { + RedisUtils.setCacheObject(redisKey, JSONObject.toJSONString(payloadDict)); + } } catch (Exception e) { log.error("HBY100J更新语音失败", e); } diff --git a/fys-admin/src/main/java/com/fuyuanshen/global/mqtt/rule/hby100j/FuncType6VoicePlay.java b/fys-admin/src/main/java/com/fuyuanshen/global/mqtt/rule/hby100j/FuncType6VoicePlay.java index 15e36bdc..44088709 100644 --- a/fys-admin/src/main/java/com/fuyuanshen/global/mqtt/rule/hby100j/FuncType6VoicePlay.java +++ b/fys-admin/src/main/java/com/fuyuanshen/global/mqtt/rule/hby100j/FuncType6VoicePlay.java @@ -29,13 +29,13 @@ public class FuncType6VoicePlay implements NewMqttMessageRule { log.info("HBY100J语音播报开启/关闭,消息负载:{}", context.getPayloadDict()); try { -// String redisKey = GlobalConstants.GLOBAL_REDIS_KEY + DEVICE_KEY_PREFIX + -// context.getDeviceImei() + ":VoicePlay"; -// -// Map payloadDict = context.getPayloadDict(); -// if (payloadDict != null) { -// RedisUtils.setCacheObject(redisKey, JSONObject.toJSONString(payloadDict)); -// } + String redisKey = GlobalConstants.GLOBAL_REDIS_KEY + DEVICE_KEY_PREFIX + + context.getDeviceImei() + ":voicePlay"; + + Map payloadDict = context.getPayloadDict(); + if (payloadDict != null) { + RedisUtils.setCacheObject(redisKey, JSONObject.toJSONString(payloadDict)); + } } catch (Exception e) { log.error("HBY100J语音播报开启/关闭失败", e); } diff --git a/fys-admin/src/main/java/com/fuyuanshen/web/service/device/DeviceHBY100JBizService.java b/fys-admin/src/main/java/com/fuyuanshen/web/service/device/DeviceHBY100JBizService.java index e40ab77c..64371d3e 100644 --- a/fys-admin/src/main/java/com/fuyuanshen/web/service/device/DeviceHBY100JBizService.java +++ b/fys-admin/src/main/java/com/fuyuanshen/web/service/device/DeviceHBY100JBizService.java @@ -5,6 +5,7 @@ import com.alibaba.fastjson2.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.fuyuanshen.app.domain.vo.AppDeviceHBY100JDetailVo; +import com.fuyuanshen.app.mapper.AppDeviceShareMapper; import com.fuyuanshen.common.core.constant.GlobalConstants; import com.fuyuanshen.common.core.domain.model.LoginUser; import com.fuyuanshen.common.core.exception.ServiceException; @@ -52,6 +53,7 @@ public class DeviceHBY100JBizService { private final IAppBusinessFileService appBusinessFileService; private final AppBusinessFileMapper appBusinessFileMapper; private final SysOssMapper sysOssMapper; + private final AppDeviceShareMapper appDeviceShareMapper; private static final String DEVICE_TYPE = "HBY100/"; @@ -254,7 +256,7 @@ public class DeviceHBY100JBizService { mqttGateway.sendMsgToMqtt(buildMqttTopic(deviceObj.getDeviceImei()), 1, JSON.toJSONString(request)); -// recordDeviceLog(deviceId, deviceObj.getDeviceName(), "强制报警激活", "强制报警激活", loginUser.getUserId()); + recordDeviceLog(deviceId, deviceObj.getDeviceName(), "强制报警激活", "强制报警激活", loginUser.getUserId()); }); } @@ -293,6 +295,8 @@ public class DeviceHBY100JBizService { updateWrapper2.eq("id", appBusinessFileVo.getId()); updateWrapper2.set("use_status", 1); appBusinessFileMapper.update(updateWrapper2); + + recordDeviceLog(deviceObj.getId(), deviceObj.getDeviceName(), "更新语音", "更新语音", loginUser.getUserId()); } private String buildMqttTopic(String deviceImei) { @@ -305,6 +309,7 @@ public class DeviceHBY100JBizService { if (getDeviceStatus(deviceObj.getDeviceImei())) { throw new ServiceException(deviceObj.getDeviceName() + ",设备已断开连接"); } + LoginUser loginUser = LoginHelper.getLoginUser(); FuncType10StrobeModeRequest request = new FuncType10StrobeModeRequest(); request.setRequestId(GenerateIdUtil.generateNumericId()); request.setImei(deviceObj.getDeviceImei()); @@ -316,6 +321,8 @@ public class DeviceHBY100JBizService { request.setData(data); log.info("HBY100J爆闪模式开启/关闭,下发设备参数:{}", request); mqttGateway.sendMsgToMqtt(buildMqttTopic(deviceObj.getDeviceImei()), 1, JSON.toJSONString(request)); + String content = params.getEnable() != null && params.getEnable() == 1 ? "爆闪模式开启" : "爆闪模式关闭"; + recordDeviceLog(deviceObj.getId(), deviceObj.getDeviceName(), content, content, loginUser.getUserId()); } public void lightAdjustment(HBY100JLightAdjustmentDto params) { @@ -327,6 +334,7 @@ public class DeviceHBY100JBizService { if (getDeviceStatus(deviceObj.getDeviceImei())) { throw new ServiceException(deviceObj.getDeviceName() + ",设备已断开连接"); } + LoginUser loginUser = LoginHelper.getLoginUser(); FuncType13BrightnessRequest request = new FuncType13BrightnessRequest(); request.setRequestId(GenerateIdUtil.generateNumericId()); request.setImei(deviceObj.getDeviceImei()); @@ -339,6 +347,7 @@ public class DeviceHBY100JBizService { request.setData(data); log.info("HBY100J灯光调节,下发设备参数:{}", request); mqttGateway.sendMsgToMqtt(buildMqttTopic(deviceObj.getDeviceImei()), 1, JSON.toJSONString(request)); + recordDeviceLog(deviceObj.getId(), deviceObj.getDeviceName(), "灯光调节", "灯光调节", loginUser.getUserId()); } public void strobeFrequency(HBY100JStrobeFrequencyDto params) { @@ -349,6 +358,7 @@ public class DeviceHBY100JBizService { if (getDeviceStatus(deviceObj.getDeviceImei())) { throw new ServiceException(deviceObj.getDeviceName() + ",设备已断开连接"); } + LoginUser loginUser = LoginHelper.getLoginUser(); FuncType11FrequencyRequest request = new FuncType11FrequencyRequest(); request.setRequestId(GenerateIdUtil.generateNumericId()); request.setImei(deviceObj.getDeviceImei()); @@ -359,6 +369,7 @@ public class DeviceHBY100JBizService { request.setData(data); log.info("HBY100J爆闪频率,下发设备参数:{}", request); mqttGateway.sendMsgToMqtt(buildMqttTopic(deviceObj.getDeviceImei()), 1, JSON.toJSONString(request)); + recordDeviceLog(deviceObj.getId(), deviceObj.getDeviceName(), "爆闪频率", "爆闪频率", loginUser.getUserId()); } public void updateVolume(HBY100JUpdateVolumeDto params) { @@ -369,6 +380,7 @@ public class DeviceHBY100JBizService { if (getDeviceStatus(deviceObj.getDeviceImei())) { throw new ServiceException(deviceObj.getDeviceName() + ",设备已断开连接"); } + LoginUser loginUser = LoginHelper.getLoginUser(); FuncType9UpdateVolumeRequest request = new FuncType9UpdateVolumeRequest(); request.setRequestId(GenerateIdUtil.generateNumericId()); request.setImei(deviceObj.getDeviceImei()); @@ -379,6 +391,7 @@ public class DeviceHBY100JBizService { request.setData(data); log.info("HBY100J更新音量,下发设备参数:{}", JSON.toJSONString(request)); mqttGateway.sendMsgToMqtt(buildMqttTopic(deviceObj.getDeviceImei()), 1, JSON.toJSONString(request)); + recordDeviceLog(deviceObj.getId(), deviceObj.getDeviceName(), "更新音量", "更新音量", loginUser.getUserId()); } public void voiceBroadcast(HBY100JVoiceBroadcastDto params) { @@ -389,6 +402,7 @@ public class DeviceHBY100JBizService { if (getDeviceStatus(deviceObj.getDeviceImei())) { throw new ServiceException(deviceObj.getDeviceName() + ",设备已断开连接"); } + LoginUser loginUser = LoginHelper.getLoginUser(); FuncType6VoicePlayRequest request = new FuncType6VoicePlayRequest(); request.setRequestId(GenerateIdUtil.generateNumericId()); request.setImei(deviceObj.getDeviceImei()); @@ -399,5 +413,8 @@ public class DeviceHBY100JBizService { request.setData(data); log.info("HBY100J语音播报,下发设备参数:{}", request); mqttGateway.sendMsgToMqtt(buildMqttTopic(deviceObj.getDeviceImei()), 1, JSON.toJSONString(request)); + recordDeviceLog(deviceObj.getId(), deviceObj.getDeviceName(), "语音播报", "语音播报", loginUser.getUserId()); } + + }