feat(device): 添加谐波计划线路客户端并优化统计缓存键

- 引入 CsHarmonicPlanLineFeignClient 客户端依赖
- 在 CsDeviceServiceImpl 中注入谐波计划线路客户端实例
- 删除监测点稳态指标告警的默认指标配置功能
- 重构统计服务中的缓存键生成逻辑,移除统计方法参数
This commit is contained in:
xy
2026-05-27 18:11:08 +08:00
parent 498fbe930e
commit 9fc3e126d9
2 changed files with 8 additions and 1 deletions

View File

@@ -26,6 +26,7 @@ import com.njcn.csdevice.param.LineInfoParam;
import com.njcn.csdevice.pojo.param.*;
import com.njcn.csdevice.pojo.po.*;
import com.njcn.csdevice.pojo.vo.CsEquipmentDeliveryVO;
import com.njcn.csharmonic.api.CsHarmonicPlanLineFeignClient;
import com.njcn.redis.pojo.enums.AppRedisKey;
import com.njcn.redis.utils.RedisUtil;
import com.njcn.system.api.DicDataFeignClient;
@@ -87,6 +88,7 @@ public class CsDeviceServiceImpl implements ICsDeviceService {
private final EngineeringFeignClient engineeringFeignClient;
private final AppProjectFeignClient appProjectFeignClient;
private final DeviceMessageFeignClient deviceMessageFeignClient;
private final CsHarmonicPlanLineFeignClient csHarmonicPlanLineFeignClient;
@Override
@Transactional(rollbackFor = {Exception.class})
@@ -288,7 +290,11 @@ public class CsDeviceServiceImpl implements ICsDeviceService {
csLogsFeignClient.addUserLog(logDto);
throw new BusinessException(AccessResponseEnum.LINE_POSITION_REPEAT);
}
//删除监测点稳态指标告警的默认指标配置
List<String> lineIdList = csLinePoList.stream().map(CsLinePO::getLineId).collect(Collectors.toList());
csHarmonicPlanLineFeignClient.deleteByLineIds(lineIdList);
csLineService.saveBatch(csLinePoList);
redisUtil.saveByKeyWithExpire("accessLineInfo:" + devAccessParam.getNDid(),csLinePoList,30L);
//缓存监测点信息
LineInfoParam param = new LineInfoParam();

View File

@@ -139,7 +139,8 @@ public class StatServiceImpl implements IStatService {
}
boolean flag = Objects.equals(DicDataEnum.DEV_CLD.getCode(), code) && Objects.equals(po.getDevAccessMethod(), "CLD");
int clDid = flag?1:appAutoDataMessage.getMsg().getClDid();
String key = AppRedisKey.DEV_MODEL.concat(dataArrayParam.getId() + dataArrayParam.getDid() + clDid + dataArrayParam.getStatMethod() + dataArrayParam.getIdx());
// String key = AppRedisKey.DEV_MODEL.concat(dataArrayParam.getId() + dataArrayParam.getDid() + clDid + dataArrayParam.getStatMethod() + dataArrayParam.getIdx());
String key = AppRedisKey.DEV_MODEL.concat(dataArrayParam.getId() + dataArrayParam.getDid() + clDid + dataArrayParam.getIdx());
Object object = redisUtil.getObjectByKey(key);
List<CsDataArray> dataArrayList;
if (Objects.isNull(object)){