1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- package com.fdkankan.fusion.service.impl;
- import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
- import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
- import com.fdkankan.fusion.common.PageInfo;
- import com.fdkankan.fusion.entity.ScenePlus;
- import com.fdkankan.fusion.mapper.IScenePlusMapper;
- import com.fdkankan.fusion.request.CaseParam;
- import com.fdkankan.fusion.request.DataParam;
- import com.fdkankan.fusion.response.DataGroupVo;
- import com.fdkankan.fusion.service.IScenePlusService;
- import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
- import com.fdkankan.fusion.service.ISceneService;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Service;
- import java.util.ArrayList;
- import java.util.HashMap;
- import java.util.List;
- import java.util.stream.Collectors;
- /**
- * <p>
- * 场景主表 服务实现类
- * </p>
- *
- * @author
- * @since 2023-12-28
- */
- @Service
- public class ScenePlusServiceImpl extends ServiceImpl<IScenePlusMapper, ScenePlus> implements IScenePlusService {
- @Autowired
- ISceneService sceneService;
- @Override
- public ScenePlus getByNum(String sceneNum) {
- LambdaQueryWrapper<ScenePlus> wrapper = new LambdaQueryWrapper<>();
- wrapper.eq(ScenePlus::getNum,sceneNum);
- return this.getOne(wrapper);
- }
- @Override
- public List<DataGroupVo> groupByCameraId(DataParam param, List<Long> cameraIds) {
- return getBaseMapper().groupByCameraId(param.getStartTime(),param.getEndTime(),cameraIds);
- }
- @Override
- public List<DataGroupVo> groupByType(DataParam param, List<Long> cameraIds) {
- return getBaseMapper().groupByType(param.getStartTime(),param.getEndTime(),cameraIds);
- }
- @Override
- public List<ScenePlus> getByNumList(List<String> numList) {
- if(numList == null || numList.isEmpty()){
- return new ArrayList<>();
- }
- LambdaQueryWrapper<ScenePlus> wrapper = new LambdaQueryWrapper<>();
- wrapper.in(ScenePlus::getNum,numList);
- return this.list(wrapper);
- }
- @Override
- public Page<ScenePlus> pageList(CaseParam param) {
- LambdaQueryWrapper<ScenePlus> wrapper = new LambdaQueryWrapper<>();
- wrapper.eq(ScenePlus::getSceneStatus,1);
- wrapper.orderByDesc(ScenePlus::getId);
- Page<ScenePlus> page = this.page(new Page<>(param.getPageNum(), param.getPageSize()),wrapper);
- List<String> collect = page.getRecords().stream().map(ScenePlus::getNum).collect(Collectors.toList());
- HashMap<String, String> mappingMap = sceneService.getMappingMap(collect);
- for (ScenePlus record : page.getRecords()) {
- record.setMapping(mappingMap.get(record.getNum()));
- }
- return page;
- }
- }
|