zhanghua
2022-12-14 adb2f4594760ff2b18e83b8cff5c4ce99dfdff45
ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/BaseCaseServiceImpl.java
@@ -17,6 +17,7 @@
import com.ycl.dto.casePool.IllegalBuildingParam;
import com.ycl.dto.casePool.VideoInspectParam;
import com.ycl.dto.casePool.ViolationParam;
import com.ycl.dto.cockpitManage.DelayDO;
import com.ycl.entity.caseHandler.*;
import com.ycl.entity.dict.DataDictionary;
import com.ycl.entity.resources.ImageResources;
@@ -32,7 +33,9 @@
import com.ycl.service.caseHandler.IViolationsService;
import com.ycl.service.video.IVideoAlarmReportService;
import com.ycl.vo.casePool.*;
import com.ycl.vo.cockpit.enforcementEvents.DelayVO;
import com.ycl.vo.cockpit.enforcementEvents.EventVO;
import com.ycl.vo.cockpit.enforcementEvents.VideoAndAreaVO;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
@@ -40,7 +43,9 @@
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.time.Duration;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
@@ -416,8 +421,8 @@
    public Map<String, Object> selectCount() {
        HashMap<String, Object> map = new HashMap<>();
        Long review = baseCaseMapper.selectCount(new LambdaQueryWrapper<BaseCase>().eq(BaseCase::getState, 1));
        Long register = baseCaseMapper.selectCount(new LambdaQueryWrapper<BaseCase>().in(BaseCase::getState, 2, 6));
        Long study = baseCaseMapper.selectCount(new LambdaQueryWrapper<BaseCase>().eq(BaseCase::getState, 3));
        Long register = baseCaseMapper.selectRegisterCount();
        Long study = baseCaseMapper.selectStudyCount();
        map.put("review", review);
        map.put("register", register);
        map.put("study", study);
@@ -446,7 +451,7 @@
        if (violationParam.getState() == 2) {
            baseCaseService.uploadEvent(violationParam.getBaseId());
        }
        return violationsMapper.insert(violations) == 1 ? true : false;
        return violationsMapper.updateById(violations) == 1 ? true : false;
    }
    @Override
@@ -473,4 +478,35 @@
    public List<EventVO> selectEventList(String beginTime, String endTime) {
        return baseCaseMapper.selectEventList(beginTime, endTime);
    }
    @Override
    public List<VideoAndAreaVO> areaCount() {
        List<VideoAndAreaVO> areaCountList = baseCaseMapper.areaCount();
        Long allCount = baseCaseMapper.selectCount(new LambdaQueryWrapper<>());
        areaCountList.stream().forEach(item -> item.setRatio(new BigDecimal(item.getCount() * 1.0 / allCount).setScale(2, BigDecimal.ROUND_HALF_UP)));
        return areaCountList;
    }
    @Override
    public List<DelayVO> selectDelayList() {
        List<DelayDO> delayDOS = baseCaseMapper.selectDelayVOList();
        ArrayList<DelayVO> delayVOS = new ArrayList<>();
        delayDOS.stream().forEach(item->{
            DelayVO delayVO = new DelayVO();
            delayVO.setDescription(item.getDescription());
            delayVO.setCode(item.getCode());
            Duration between;
            if (item.getEndTime()!=null){
                between = Duration.between(item.getEndTime(), item.getLimitTime());
            }else {
                between = Duration.between(LocalDateTime.now(), item.getLimitTime());
            }
            if (between.isNegative()){
                delayVO.setDuration(between.toMinutes());
                delayVOS.add(delayVO);
            }
        });
        return delayVOS;
    }
}