You've already forked FrameTour-BE
refactor(pc): 移除日志记录并优化数据查询
- 移除了多个控制器和服务类中的冗余日志记录 - 在查询数据时,不再通过 SQL左连接直接获取景点和设备名称,而是使用 Repository 单独查询 - 更新了 FaceSampleMapper、
This commit is contained in:
@@ -2,8 +2,12 @@ package com.ycwl.basic.service.pc.impl;
|
||||
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import com.ycwl.basic.mapper.ScenicDeviceStatsMapper;
|
||||
import com.ycwl.basic.model.pc.device.entity.DeviceEntity;
|
||||
import com.ycwl.basic.model.pc.scenic.entity.ScenicEntity;
|
||||
import com.ycwl.basic.model.pc.scenicDeviceStats.resp.ScenicDeviceStatsListResp;
|
||||
import com.ycwl.basic.model.pc.scenicDeviceStats.resp.ScenicDeviceStatsResp;
|
||||
import com.ycwl.basic.repository.DeviceRepository;
|
||||
import com.ycwl.basic.repository.ScenicRepository;
|
||||
import com.ycwl.basic.service.pc.DeviceStatsService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
@@ -17,6 +21,10 @@ import java.util.List;
|
||||
public class DeviceStatsServiceImpl implements DeviceStatsService {
|
||||
@Autowired
|
||||
private ScenicDeviceStatsMapper mapper;
|
||||
@Autowired
|
||||
private ScenicRepository scenicRepository;
|
||||
@Autowired
|
||||
private DeviceRepository deviceRepository;
|
||||
|
||||
@Override
|
||||
public ScenicDeviceStatsListResp queryByScenicId(Long scenicId, Date start, Date end) {
|
||||
@@ -30,10 +38,30 @@ public class DeviceStatsServiceImpl implements DeviceStatsService {
|
||||
if (DateUtil.isIn(start, DateUtil.tomorrow(), DateUtil.yesterday()) && DateUtil.isIn(end, DateUtil.tomorrow(), DateUtil.yesterday())) {
|
||||
resp.setRealtime(true);
|
||||
List<ScenicDeviceStatsResp> data = mapper.countRealtimeStatsByScenicId(scenicId, start, end);
|
||||
data.forEach(item -> {
|
||||
ScenicEntity scenic = scenicRepository.getScenic(item.getScenicId());
|
||||
if (scenic != null) {
|
||||
item.setScenicName(scenic.getName());
|
||||
}
|
||||
DeviceEntity device = deviceRepository.getDevice(item.getDeviceId());
|
||||
if (device != null) {
|
||||
item.setDeviceName(device.getName());
|
||||
}
|
||||
});
|
||||
resp.setData(data);
|
||||
} else {
|
||||
resp.setRealtime(false);
|
||||
List<ScenicDeviceStatsResp> data = mapper.countCachedStatsByScenicId(scenicId, start, end);
|
||||
data.forEach(item -> {
|
||||
ScenicEntity scenic = scenicRepository.getScenic(item.getScenicId());
|
||||
if (scenic != null) {
|
||||
item.setScenicName(scenic.getName());
|
||||
}
|
||||
DeviceEntity device = deviceRepository.getDevice(item.getDeviceId());
|
||||
if (device != null) {
|
||||
item.setDeviceName(device.getName());
|
||||
}
|
||||
});
|
||||
resp.setData(data);
|
||||
}
|
||||
resp.getData().stream()
|
||||
|
@@ -3,9 +3,13 @@ package com.ycwl.basic.service.pc.impl;
|
||||
import com.github.pagehelper.PageHelper;
|
||||
import com.github.pagehelper.PageInfo;
|
||||
import com.ycwl.basic.mapper.FaceSampleMapper;
|
||||
import com.ycwl.basic.model.pc.device.entity.DeviceEntity;
|
||||
import com.ycwl.basic.model.pc.faceSample.entity.FaceSampleEntity;
|
||||
import com.ycwl.basic.model.pc.faceSample.req.FaceSampleReqQuery;
|
||||
import com.ycwl.basic.model.pc.faceSample.resp.FaceSampleRespVO;
|
||||
import com.ycwl.basic.model.pc.scenic.entity.ScenicEntity;
|
||||
import com.ycwl.basic.repository.DeviceRepository;
|
||||
import com.ycwl.basic.repository.ScenicRepository;
|
||||
import com.ycwl.basic.service.pc.FaceSampleService;
|
||||
import com.ycwl.basic.utils.ApiResponse;
|
||||
import com.ycwl.basic.utils.SnowFlakeUtil;
|
||||
@@ -22,11 +26,25 @@ import java.util.List;
|
||||
public class FaceSampleServiceImpl implements FaceSampleService {
|
||||
@Autowired
|
||||
private FaceSampleMapper faceSampleMapper;
|
||||
@Autowired
|
||||
private ScenicRepository scenicRepository;
|
||||
@Autowired
|
||||
private DeviceRepository deviceRepository;
|
||||
|
||||
@Override
|
||||
public ApiResponse<PageInfo<FaceSampleRespVO>> pageQuery(FaceSampleReqQuery faceSampleReqQuery) {
|
||||
PageHelper.startPage(faceSampleReqQuery.getPageNum(),faceSampleReqQuery.getPageSize());
|
||||
List<FaceSampleRespVO> list = faceSampleMapper.list(faceSampleReqQuery);
|
||||
list.forEach(item -> {
|
||||
ScenicEntity scenic = scenicRepository.getScenic(item.getScenicId());
|
||||
if (scenic != null) {
|
||||
item.setScenicName(scenic.getName());
|
||||
}
|
||||
DeviceEntity device = deviceRepository.getDevice(item.getDeviceId());
|
||||
if (device != null) {
|
||||
item.setDeviceName(device.getName());
|
||||
}
|
||||
});
|
||||
PageInfo<FaceSampleRespVO> pageInfo = new PageInfo<>(list);
|
||||
return ApiResponse.success(pageInfo);
|
||||
}
|
||||
|
@@ -4,9 +4,13 @@ import com.github.pagehelper.PageHelper;
|
||||
import com.github.pagehelper.PageInfo;
|
||||
import com.ycwl.basic.exception.BaseException;
|
||||
import com.ycwl.basic.mapper.SourceMapper;
|
||||
import com.ycwl.basic.model.pc.device.entity.DeviceEntity;
|
||||
import com.ycwl.basic.model.pc.scenic.entity.ScenicEntity;
|
||||
import com.ycwl.basic.model.pc.source.entity.SourceEntity;
|
||||
import com.ycwl.basic.model.pc.source.req.SourceReqQuery;
|
||||
import com.ycwl.basic.model.pc.source.resp.SourceRespVO;
|
||||
import com.ycwl.basic.repository.DeviceRepository;
|
||||
import com.ycwl.basic.repository.ScenicRepository;
|
||||
import com.ycwl.basic.repository.SourceRepository;
|
||||
import com.ycwl.basic.service.pc.ScenicService;
|
||||
import com.ycwl.basic.service.pc.SourceService;
|
||||
@@ -39,12 +43,24 @@ public class SourceServiceImpl implements SourceService {
|
||||
private SourceRepository sourceRepository;
|
||||
@Autowired
|
||||
private ScenicService scenicService;
|
||||
@Autowired
|
||||
private ScenicRepository scenicRepository;
|
||||
@Autowired
|
||||
private DeviceRepository deviceRepository;
|
||||
|
||||
@Override
|
||||
public ApiResponse<PageInfo<SourceRespVO>> pageQuery(SourceReqQuery sourceReqQuery) {
|
||||
PageHelper.startPage(sourceReqQuery.getPageNum(), sourceReqQuery.getPageSize());
|
||||
List<SourceRespVO> list = sourceMapper.list(sourceReqQuery);
|
||||
list.forEach(sourceRespVO -> {
|
||||
ScenicEntity scenic = scenicRepository.getScenic(sourceRespVO.getScenicId());
|
||||
if (scenic != null) {
|
||||
sourceRespVO.setScenicName(scenic.getName());
|
||||
}
|
||||
DeviceEntity device = deviceRepository.getDevice(sourceRespVO.getDeviceId());
|
||||
if (device != null) {
|
||||
sourceRespVO.setDeviceName(device.getName());
|
||||
}
|
||||
if (sourceRespVO.getVideoUrl() != null) {
|
||||
try {
|
||||
URL url = new URL(sourceRespVO.getVideoUrl());
|
||||
|
Reference in New Issue
Block a user