3 Commits

Author SHA1 Message Date
05cb75e652 修复bug3 2026-04-01 17:52:11 +08:00
5813425be9 修复bug2 2026-04-01 17:42:14 +08:00
539caa4b5f 修复bug 2026-03-27 10:34:38 +08:00
11 changed files with 56 additions and 44 deletions

View File

@ -131,8 +131,8 @@ public class AppVideoController extends BaseController {
* 删除语音文件
*/
@GetMapping("/deleteAudioFile")
public R<Void> deleteAudioFile(Long fileId,Long deviceId) {
return audioProcessService.deleteAudioFile(fileId,deviceId);
public R<Void> deleteAudioFile(Long id) {
return audioProcessService.deleteAudioFile(id);
}
/**

View File

@ -6,6 +6,8 @@ import org.springframework.web.multipart.MultipartFile;
@Data
public class AppFileRenameDto {
private Long id;
/**
* 文件id
*/

View File

@ -414,19 +414,18 @@ public class AudioProcessService {
}
private Long getUserId(String source,Long deviceId){
Long userId = null;
if("app".equals( source)){
userId = AppLoginHelper.getUserId();
return AppLoginHelper.getUserId();
} else if ("web".equals( source)){
AppDeviceBindRecordBo appDeviceBindRecordBo = new AppDeviceBindRecordBo();
appDeviceBindRecordBo.setDeviceId(deviceId);
appDeviceBindRecordBo.setCommunicationMode(0);
List<AppDeviceBindRecordVo> appDeviceBindRecordVos = appDeviceBindRecordService.queryList(appDeviceBindRecordBo);
if (appDeviceBindRecordVos != null && !appDeviceBindRecordVos.isEmpty()){
userId = appDeviceBindRecordVos.get(0).getBindingUserId();
}
// AppDeviceBindRecordBo appDeviceBindRecordBo = new AppDeviceBindRecordBo();
// appDeviceBindRecordBo.setDeviceId(deviceId);
//// appDeviceBindRecordBo.setCommunicationMode(0);
// List<AppDeviceBindRecordVo> appDeviceBindRecordVos = appDeviceBindRecordService.queryList(appDeviceBindRecordBo);
// if (appDeviceBindRecordVos != null && !appDeviceBindRecordVos.isEmpty()){
// userId = appDeviceBindRecordVos.get(0).getBindingUserId();
// }
}
return userId;
return 0L;
}
/**
* 校验音频文件格式
@ -450,8 +449,9 @@ public class AudioProcessService {
throw new IllegalArgumentException("只允许上传MP3、WAV、PCM格式的音频文件");
}
long fileSize = 256 * 1024;
// 检查文件大小
if (file.getSize() > MAX_AUDIO_SIZE) {
if (file.getSize() > fileSize) {
throw new IllegalArgumentException("音频大小不能超过5MB");
}
}
@ -571,26 +571,29 @@ public class AudioProcessService {
if(deviceId == null){
return null;
}
Long userId = getUserId(source, deviceId);
AppBusinessFileBo bo = new AppBusinessFileBo();
bo.setBusinessId(deviceId);
bo.setCreateBy(userId);
bo.setFileType(3L);
if("web".equals(source)){
bo.setCreateBy(null);
}else{
bo.setCreateBy(userId);
}
return appBusinessFileService.queryAppFileList(bo);
}
public R<Void> deleteAudioFile(Long fileId,Long deviceId) {
public R<Void> deleteAudioFile(Long id) {
UpdateWrapper<AppBusinessFile> updateWrapper = new UpdateWrapper<>();
updateWrapper.eq("file_id",fileId);
updateWrapper.eq("business_id",deviceId);
updateWrapper.eq("id",id);
appBusinessFileMapper.delete(updateWrapper);
return R.ok();
}
public R<Void> renameAudioFile(AppFileRenameDto bo) {
UpdateWrapper<AppBusinessFile> updateWrapper = new UpdateWrapper<>();
updateWrapper.eq("file_id",bo.getFileId());
updateWrapper.eq("business_id",bo.getDeviceId());
updateWrapper.eq("id",bo.getId());
updateWrapper.set("re_name",bo.getFileName());
appBusinessFileMapper.update(updateWrapper);
return R.ok();

View File

@ -123,8 +123,8 @@ public class WebVideoController extends BaseController {
* 删除语音文件
*/
@GetMapping("/deleteAudioFile")
public R<Void> deleteAudioFile(Long fileId,Long deviceId) {
return audioProcessService.deleteAudioFile(fileId,deviceId);
public R<Void> deleteAudioFile(Long id) {
return audioProcessService.deleteAudioFile(id);
}
/**

View File

@ -38,6 +38,7 @@ public class WebDeviceHBY100JController extends BaseController {
*/
@PostMapping("/updateVoice")
public R<Void> updateVoice(@RequestBody HBY100JUpdateVoiceDto dto) {
dto.setCommunicationMode(0);
deviceHBY100JBizService.updateVoice(dto);
return R.ok();
}

View File

@ -7,4 +7,8 @@ public class HBY100JUpdateVoiceDto {
private Long id;
/**
* 通讯方式 0:4G;1:蓝牙
*/
private Integer communicationMode;
}

View File

@ -271,12 +271,12 @@ public class DeviceBizService {
if (type == 0) {
QueryWrapper<AppDeviceBindRecord> bindRecordQueryWrapper = new QueryWrapper<>();
bindRecordQueryWrapper.eq("device_id", device.getId());
bindRecordQueryWrapper.eq("binding_user_id", userId);
// bindRecordQueryWrapper.eq("binding_user_id", userId);
Long count = appDeviceBindRecordMapper.selectCount(bindRecordQueryWrapper);
if (count == 0) {
throw new RuntimeException("请先绑定设备!!!");
}
if (count < 2) {
if (count <= 1) {
UpdateWrapper<Device> deviceUpdateWrapper = new UpdateWrapper<>();
deviceUpdateWrapper.eq("id", device.getId())
.set("binding_user_id", null)

View File

@ -166,7 +166,7 @@ public class DeviceHBY100JBizService {
if(StringUtils.isNotBlank(voicePlayStatus)){
FuncType6VoicePlayRequest funcType6VoicePlayRequest = JSONObject.parseObject(voicePlayStatus, FuncType6VoicePlayRequest.class);
if(funcType6VoicePlayRequest.getData() != null){
vo.setVolume(funcType6VoicePlayRequest.getData().getVoiceBroadcast());
vo.setVoiceBroadcast(funcType6VoicePlayRequest.getData().getVoiceBroadcast());
}
}
@ -285,21 +285,22 @@ public class DeviceHBY100JBizService {
if (getDeviceStatus(deviceObj.getDeviceImei())) {
throw new ServiceException(deviceObj.getDeviceName() + ",设备已断开连接");
}
AppLoginUser loginUser = AppLoginHelper.getLoginUser();
SysOssVo sysOssVo = sysOssMapper.selectVoById(appBusinessFileVo.getFileId());
FuncType5UpdateVoiceRequest request = new FuncType5UpdateVoiceRequest();
request.setRequestId(GenerateIdUtil.generateNumericId());
request.setImei(deviceObj.getDeviceImei());
request.setFuncType("5");
request.setTimestamp(System.currentTimeMillis());
FuncType5UpdateVoiceRequest.Data data = new FuncType5UpdateVoiceRequest.Data();
data.setVoiceResource(sysOssVo.getUrl());
data.setVoiceType(0);
request.setData(data);
log.info("HBY100J更新语音参数{}", request);
if(dto.getCommunicationMode()!=null && dto.getCommunicationMode()==0){
SysOssVo sysOssVo = sysOssMapper.selectVoById(appBusinessFileVo.getFileId());
FuncType5UpdateVoiceRequest request = new FuncType5UpdateVoiceRequest();
request.setRequestId(GenerateIdUtil.generateNumericId());
request.setImei(deviceObj.getDeviceImei());
request.setFuncType("5");
request.setTimestamp(System.currentTimeMillis());
FuncType5UpdateVoiceRequest.Data data = new FuncType5UpdateVoiceRequest.Data();
data.setVoiceResource(sysOssVo.getUrl());
data.setVoiceType(0);
request.setData(data);
log.info("HBY100J更新语音参数{}", request);
mqttGateway.sendMsgToMqtt(buildMqttTopic(deviceObj.getDeviceImei()), 1, JSON.toJSONString(request));
mqttGateway.sendMsgToMqtt(buildMqttTopic(deviceObj.getDeviceImei()), 1, JSON.toJSONString(request));
}
UpdateWrapper<AppBusinessFile> updateWrapper = new UpdateWrapper<>();
updateWrapper.eq("business_id", appBusinessFileVo.getBusinessId());

View File

@ -17,4 +17,5 @@ import java.util.List;
public interface AppBusinessFileMapper extends BaseMapperPlus<AppBusinessFile, AppBusinessFileVo> {
List<AppFileVo> queryAppFileList(AppBusinessFileBo bo);
}

View File

@ -23,8 +23,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="fileType != null">
and a.file_type = #{fileType}
</if>
<if test="createBy != null">
and a.create_by = #{createBy}
<if test="createBy != null ">
and (a.create_by = #{createBy} or a.create_by = 0)
</if>
order by a.create_time desc
</select>

View File

@ -213,11 +213,11 @@ public class SysOssServiceImpl implements ISysOssService, OssService {
try {
byte[] imageData = file.getBytes();
// 检查是否需要压缩
if (ImageCompressUtil.needCompress(imageData)) {
// 压缩到100KB以内
imageData = ImageCompressUtil.compressImage(imageData);
// 使用压缩后的数据
}
// if (ImageCompressUtil.needCompress(imageData)) {
// // 压缩到100KB以内
// imageData = ImageCompressUtil.compressImage(imageData);
// // 使用压缩后的数据
// }
uploadResult = storage.uploadSuffix(imageData, suffix, file.getContentType());
} catch (IOException e) {
throw new ServiceException(e.getMessage());