把上传的录音信息保存在录音图表里
This commit is contained in:
@@ -5,6 +5,7 @@ import com.fasterxml.jackson.core.type.TypeReference;
|
|||||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||||
import com.rj.entity.*;
|
import com.rj.entity.*;
|
||||||
import com.rj.mapper.DeviceManagementMapper;
|
import com.rj.mapper.DeviceManagementMapper;
|
||||||
|
import com.rj.tenant.TenantContextHolder;
|
||||||
import com.rj.service.IFileUploadService;
|
import com.rj.service.IFileUploadService;
|
||||||
import com.rj.service.MinIOService;
|
import com.rj.service.MinIOService;
|
||||||
import com.rj.service.IYhyAudioUploadLogService;
|
import com.rj.service.IYhyAudioUploadLogService;
|
||||||
@@ -1317,6 +1318,9 @@ public class AudioFileController {
|
|||||||
* @param requestBody 请求体,用于获取deviceNo,并在方法中设置audioManagementId
|
* @param requestBody 请求体,用于获取deviceNo,并在方法中设置audioManagementId
|
||||||
*/
|
*/
|
||||||
private void associateAudioManagement(Map<String, Object> requestBody) {
|
private void associateAudioManagement(Map<String, Object> requestBody) {
|
||||||
|
// 保存原来的租户ID,用于后续恢复
|
||||||
|
String originalTenantId = TenantContextHolder.getTenantId();
|
||||||
|
|
||||||
try {
|
try {
|
||||||
String deviceNo = (String) requestBody.get("deviceNo");
|
String deviceNo = (String) requestBody.get("deviceNo");
|
||||||
if (deviceNo == null || deviceNo.trim().isEmpty()) {
|
if (deviceNo == null || deviceNo.trim().isEmpty()) {
|
||||||
@@ -1327,6 +1331,20 @@ public class AudioFileController {
|
|||||||
// 1. 根据device_no去device_management表查找device_code相同的记录
|
// 1. 根据device_no去device_management表查找device_code相同的记录
|
||||||
DeviceManagement deviceManagement = (DeviceManagement)requestBody.get(deviceKey);
|
DeviceManagement deviceManagement = (DeviceManagement)requestBody.get(deviceKey);
|
||||||
|
|
||||||
|
if (deviceManagement == null) {
|
||||||
|
log.warn("deviceManagement为空,无法关联audio_management表");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 1.1. 设置租户ID到上下文,使后续查询自动使用该租户ID
|
||||||
|
String tenantId = deviceManagement.getTenantId();
|
||||||
|
if (tenantId != null && !tenantId.trim().isEmpty()) {
|
||||||
|
TenantContextHolder.setTenantId(tenantId);
|
||||||
|
log.info("设置租户ID到上下文: {}", tenantId);
|
||||||
|
} else {
|
||||||
|
log.warn("deviceManagement中的tenantId为空,无法设置租户上下文");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
// 2. 通过bind_user_id去SalesManagement表查询sales_name和login_account(作为sales_phone)
|
// 2. 通过bind_user_id去SalesManagement表查询sales_name和login_account(作为sales_phone)
|
||||||
LambdaQueryWrapper<SalesManagement> salesQuery = new LambdaQueryWrapper<>();
|
LambdaQueryWrapper<SalesManagement> salesQuery = new LambdaQueryWrapper<>();
|
||||||
@@ -1371,6 +1389,13 @@ public class AudioFileController {
|
|||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
log.error("关联audio_management表失败", e);
|
log.error("关联audio_management表失败", e);
|
||||||
// 即使关联失败,也不影响后续处理,只记录日志
|
// 即使关联失败,也不影响后续处理,只记录日志
|
||||||
|
} finally {
|
||||||
|
// 恢复原来的租户ID
|
||||||
|
if (originalTenantId != null) {
|
||||||
|
TenantContextHolder.setTenantId(originalTenantId);
|
||||||
|
} else {
|
||||||
|
TenantContextHolder.clear();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user