package com.ozs.service.utils; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.ozs.service.entity.BaseCameraManagement; import com.ozs.service.service.BaseCameraManagementService; import com.ozs.service.service.CameraLogDetailService; import com.ozs.service.service.MqLogService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Configuration; import org.springframework.stereotype.Component; import javax.annotation.PostConstruct; /** * 相机工具 * @author Administrator */ @Configuration @Slf4j @Component public class CallbackUtil { @Autowired CameraLogDetailService cameraLogDetailService; @Autowired MqLogService mqLogService; @Autowired BaseCameraManagementService baseCameraManagementService; private static CameraLogDetailService cameraLogDetail; private static MqLogService mqLog; private static BaseCameraManagementService baseCameraManagement; @PostConstruct public void init() { cameraLogDetail = cameraLogDetailService; mqLog=mqLogService; } public static void callback(String deviceSn,Integer code,String remark){ CallbackUtil.cameraLogDetail.updateAccessories(deviceSn,code,remark); } public static void heart(String cameraCode){ CallbackUtil.mqLog.insetHeartLog(cameraCode); } public static void updateVersionNum(String model,String cameraCode) { // 找到 "bovai" 的位置 int bovaiIndex = model.indexOf("bovai"); if (bovaiIndex != -1) { // 截取 "bovai." 之后的版本号 String version = model.substring(bovaiIndex + "bovai.".length()); log.info("bovai 的位置: " + bovaiIndex); log.info("版本号: " + version); // 创建 LambdaUpdateWrapper 用于构建更新条件 LambdaUpdateWrapper wrapper = new LambdaUpdateWrapper<>(); // 设置更新条件:根据 cameraCode 进行筛选 wrapper.eq(BaseCameraManagement::getCameraCode, cameraCode); // 设置要更新的字段:将 versionNum 更新为指定的 version wrapper.set(BaseCameraManagement::getVersionNum, version); baseCameraManagement.update(wrapper); } } }