From 050598b558ecd8d91a736453a9a2d97dbf33bfb6 Mon Sep 17 00:00:00 2001 From: wl <173@qq.com> Date: 星期一, 19 十二月 2022 17:27:03 +0800 Subject: [PATCH] fix: 包移动和执法事件统计接口 --- ycl-platform/src/main/java/com/ycl/service/message/impl/SmsTemplateServiceImpl.java | 2 ycl-platform/src/main/java/com/ycl/service/message/impl/SmsAuditServiceImpl.java | 2 ycl-platform/src/main/java/com/ycl/controller/cockpit/enforcementEvents/EnforcementEventsController.java | 18 --- ycl-platform/src/main/java/com/ycl/common/util/DateUtils.java | 2 ycl-platform/src/main/java/com/ycl/vo/cockpit/enforcementEvents/StatisticsVO.java | 19 +++ ycl-platform/src/main/java/com/ycl/service/message/impl/MessageServiceImpl.java | 4 ycl-platform/src/main/resources/mapper/caseHandler/BaseCaseMapper.xml | 50 ++++++++- ycl-platform/src/main/java/com/ycl/controller/caseHandler/BaseCaseController.java | 4 ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/IDispatchHandleServiceImpl.java | 4 ycl-platform/src/main/java/com/ycl/common/constant/CheckResult.java | 2 ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/CheckHandleServiceImpl.java | 6 ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/DisposeRecordServiceImpl.java | 4 ycl-platform/src/main/java/com/ycl/mapper/caseHandler/BaseCaseMapper.java | 10 ++ ycl-platform/src/main/java/com/ycl/common/util/RandomNumberGenerator.java | 2 ycl-platform/src/main/java/com/ycl/common/constant/StepName.java | 2 ycl-platform/src/test/java/com/ycl/sccgplatform/SccgPlatformApplicationTests.java | 3 ycl-platform/src/main/java/com/ycl/common/util/RandomStringUtil.java | 2 ycl-platform/src/main/java/com/ycl/common/constant/BaseCaseStatus.java | 2 ycl-platform/src/main/java/com/ycl/common/util/UtilNumber.java | 2 ycl-platform/src/main/java/com/ycl/controller/message/MessageColumnController.java | 2 ycl-platform/src/main/java/com/ycl/controller/store/StoreInfoController.java | 2 ycl-platform/src/main/java/com/ycl/vo/cockpit/enforcementEvents/EnforcementEventsVO.java | 11 -- ycl-platform/src/main/java/com/ycl/common/constant/ChannelCode.java | 2 ycl-platform/src/main/java/com/ycl/common/util/Md5.java | 2 ycl-platform/src/main/java/com/ycl/common/util/ParamsMap.java | 2 ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/BaseCaseServiceImpl.java | 107 +++++++++++++++++++-- ycl-platform/src/main/java/com/ycl/common/util/CommonUtils.java | 2 ycl-platform/src/main/java/com/ycl/common/util/DateUtil.java | 2 ycl-platform/src/main/java/com/ycl/controller/task/TaskController.java | 2 29 files changed, 198 insertions(+), 76 deletions(-) diff --git a/ycl-platform/src/main/java/com/ycl/controller/video/common/constant/BaseCaseStatus.java b/ycl-platform/src/main/java/com/ycl/common/constant/BaseCaseStatus.java similarity index 94% rename from ycl-platform/src/main/java/com/ycl/controller/video/common/constant/BaseCaseStatus.java rename to ycl-platform/src/main/java/com/ycl/common/constant/BaseCaseStatus.java index 15c21da..3b99ff0 100644 --- a/ycl-platform/src/main/java/com/ycl/controller/video/common/constant/BaseCaseStatus.java +++ b/ycl-platform/src/main/java/com/ycl/common/constant/BaseCaseStatus.java @@ -1,4 +1,4 @@ -package com.ycl.controller.video.common.constant; +package com.ycl.common.constant; /** * <p> diff --git a/ycl-platform/src/main/java/com/ycl/controller/video/common/constant/ChannelCode.java b/ycl-platform/src/main/java/com/ycl/common/constant/ChannelCode.java similarity index 87% rename from ycl-platform/src/main/java/com/ycl/controller/video/common/constant/ChannelCode.java rename to ycl-platform/src/main/java/com/ycl/common/constant/ChannelCode.java index 920f417..0957763 100644 --- a/ycl-platform/src/main/java/com/ycl/controller/video/common/constant/ChannelCode.java +++ b/ycl-platform/src/main/java/com/ycl/common/constant/ChannelCode.java @@ -1,4 +1,4 @@ -package com.ycl.controller.video.common.constant; +package com.ycl.common.constant; /** * <p> diff --git a/ycl-platform/src/main/java/com/ycl/controller/video/common/constant/CheckResult.java b/ycl-platform/src/main/java/com/ycl/common/constant/CheckResult.java similarity index 89% rename from ycl-platform/src/main/java/com/ycl/controller/video/common/constant/CheckResult.java rename to ycl-platform/src/main/java/com/ycl/common/constant/CheckResult.java index 7b70580..8d971ba 100644 --- a/ycl-platform/src/main/java/com/ycl/controller/video/common/constant/CheckResult.java +++ b/ycl-platform/src/main/java/com/ycl/common/constant/CheckResult.java @@ -1,4 +1,4 @@ -package com.ycl.controller.video.common.constant; +package com.ycl.common.constant; /** * <p> diff --git a/ycl-platform/src/main/java/com/ycl/controller/video/common/constant/StepName.java b/ycl-platform/src/main/java/com/ycl/common/constant/StepName.java similarity index 89% rename from ycl-platform/src/main/java/com/ycl/controller/video/common/constant/StepName.java rename to ycl-platform/src/main/java/com/ycl/common/constant/StepName.java index 9c90e90..c46c068 100644 --- a/ycl-platform/src/main/java/com/ycl/controller/video/common/constant/StepName.java +++ b/ycl-platform/src/main/java/com/ycl/common/constant/StepName.java @@ -1,4 +1,4 @@ -package com.ycl.controller.video.common.constant; +package com.ycl.common.constant; public enum StepName { diff --git a/ycl-platform/src/main/java/com/ycl/controller/video/common/util/CommonUtils.java b/ycl-platform/src/main/java/com/ycl/common/util/CommonUtils.java similarity index 99% rename from ycl-platform/src/main/java/com/ycl/controller/video/common/util/CommonUtils.java rename to ycl-platform/src/main/java/com/ycl/common/util/CommonUtils.java index e5acd98..f9b3180 100644 --- a/ycl-platform/src/main/java/com/ycl/controller/video/common/util/CommonUtils.java +++ b/ycl-platform/src/main/java/com/ycl/common/util/CommonUtils.java @@ -1,4 +1,4 @@ -package com.ycl.controller.video.common.util; +package com.ycl.common.util; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; diff --git a/ycl-platform/src/main/java/com/ycl/controller/video/common/util/DateUtil.java b/ycl-platform/src/main/java/com/ycl/common/util/DateUtil.java similarity index 99% rename from ycl-platform/src/main/java/com/ycl/controller/video/common/util/DateUtil.java rename to ycl-platform/src/main/java/com/ycl/common/util/DateUtil.java index 3ef4b67..2ea020d 100644 --- a/ycl-platform/src/main/java/com/ycl/controller/video/common/util/DateUtil.java +++ b/ycl-platform/src/main/java/com/ycl/common/util/DateUtil.java @@ -1,4 +1,4 @@ -package com.ycl.controller.video.common.util; +package com.ycl.common.util; import java.text.ParseException; import java.text.SimpleDateFormat; diff --git a/ycl-platform/src/main/java/com/ycl/controller/video/common/util/DateUtils.java b/ycl-platform/src/main/java/com/ycl/common/util/DateUtils.java similarity index 99% rename from ycl-platform/src/main/java/com/ycl/controller/video/common/util/DateUtils.java rename to ycl-platform/src/main/java/com/ycl/common/util/DateUtils.java index dfa46d9..2115b5d 100644 --- a/ycl-platform/src/main/java/com/ycl/controller/video/common/util/DateUtils.java +++ b/ycl-platform/src/main/java/com/ycl/common/util/DateUtils.java @@ -1,4 +1,4 @@ -package com.ycl.controller.video.common.util; +package com.ycl.common.util; import java.text.ParseException; import java.text.SimpleDateFormat; diff --git a/ycl-platform/src/main/java/com/ycl/controller/video/common/util/Md5.java b/ycl-platform/src/main/java/com/ycl/common/util/Md5.java similarity index 97% rename from ycl-platform/src/main/java/com/ycl/controller/video/common/util/Md5.java rename to ycl-platform/src/main/java/com/ycl/common/util/Md5.java index 5ec0a96..aebeb9f 100644 --- a/ycl-platform/src/main/java/com/ycl/controller/video/common/util/Md5.java +++ b/ycl-platform/src/main/java/com/ycl/common/util/Md5.java @@ -1,4 +1,4 @@ -package com.ycl.controller.video.common.util; +package com.ycl.common.util; import java.security.MessageDigest; diff --git a/ycl-platform/src/main/java/com/ycl/controller/video/common/util/ParamsMap.java b/ycl-platform/src/main/java/com/ycl/common/util/ParamsMap.java similarity index 98% rename from ycl-platform/src/main/java/com/ycl/controller/video/common/util/ParamsMap.java rename to ycl-platform/src/main/java/com/ycl/common/util/ParamsMap.java index 7a3860c..6df2b8a 100644 --- a/ycl-platform/src/main/java/com/ycl/controller/video/common/util/ParamsMap.java +++ b/ycl-platform/src/main/java/com/ycl/common/util/ParamsMap.java @@ -1,4 +1,4 @@ -package com.ycl.controller.video.common.util; +package com.ycl.common.util; import lombok.extern.slf4j.Slf4j; diff --git a/ycl-platform/src/main/java/com/ycl/controller/video/common/util/RandomNumberGenerator.java b/ycl-platform/src/main/java/com/ycl/common/util/RandomNumberGenerator.java similarity index 97% rename from ycl-platform/src/main/java/com/ycl/controller/video/common/util/RandomNumberGenerator.java rename to ycl-platform/src/main/java/com/ycl/common/util/RandomNumberGenerator.java index f78f3a1..d351cba 100644 --- a/ycl-platform/src/main/java/com/ycl/controller/video/common/util/RandomNumberGenerator.java +++ b/ycl-platform/src/main/java/com/ycl/common/util/RandomNumberGenerator.java @@ -1,4 +1,4 @@ -package com.ycl.controller.video.common.util; +package com.ycl.common.util; import java.text.SimpleDateFormat; import java.util.Date; diff --git a/ycl-platform/src/main/java/com/ycl/controller/video/common/util/RandomStringUtil.java b/ycl-platform/src/main/java/com/ycl/common/util/RandomStringUtil.java similarity index 95% rename from ycl-platform/src/main/java/com/ycl/controller/video/common/util/RandomStringUtil.java rename to ycl-platform/src/main/java/com/ycl/common/util/RandomStringUtil.java index affaab3..eae8313 100644 --- a/ycl-platform/src/main/java/com/ycl/controller/video/common/util/RandomStringUtil.java +++ b/ycl-platform/src/main/java/com/ycl/common/util/RandomStringUtil.java @@ -1,4 +1,4 @@ -package com.ycl.controller.video.common.util; +package com.ycl.common.util; import java.util.Random; diff --git a/ycl-platform/src/main/java/com/ycl/controller/video/common/util/UtilNumber.java b/ycl-platform/src/main/java/com/ycl/common/util/UtilNumber.java similarity index 99% rename from ycl-platform/src/main/java/com/ycl/controller/video/common/util/UtilNumber.java rename to ycl-platform/src/main/java/com/ycl/common/util/UtilNumber.java index 479400c..2ffcc95 100644 --- a/ycl-platform/src/main/java/com/ycl/controller/video/common/util/UtilNumber.java +++ b/ycl-platform/src/main/java/com/ycl/common/util/UtilNumber.java @@ -1,4 +1,4 @@ -package com.ycl.controller.video.common.util; +package com.ycl.common.util; import com.ycl.mapper.common.GeneratedCodeMapper; diff --git a/ycl-platform/src/main/java/com/ycl/controller/caseHandler/BaseCaseController.java b/ycl-platform/src/main/java/com/ycl/controller/caseHandler/BaseCaseController.java index 29162e1..ca8d45e 100644 --- a/ycl-platform/src/main/java/com/ycl/controller/caseHandler/BaseCaseController.java +++ b/ycl-platform/src/main/java/com/ycl/controller/caseHandler/BaseCaseController.java @@ -7,8 +7,8 @@ import com.ycl.annotation.LogSave; import com.ycl.api.CommonResult; import com.ycl.controller.BaseController; -import com.ycl.controller.video.common.constant.BaseCaseStatus; -import com.ycl.controller.video.common.util.UtilNumber; +import com.ycl.common.constant.BaseCaseStatus; +import com.ycl.common.util.UtilNumber; import com.ycl.dto.caseHandler.QueryForViolationParam; import com.ycl.dto.casePool.IllegalBuildingParam; import com.ycl.dto.casePool.VideoInspectParam; diff --git a/ycl-platform/src/main/java/com/ycl/controller/cockpit/enforcementEvents/EnforcementEventsController.java b/ycl-platform/src/main/java/com/ycl/controller/cockpit/enforcementEvents/EnforcementEventsController.java index c6df34a..c0e01fc 100644 --- a/ycl-platform/src/main/java/com/ycl/controller/cockpit/enforcementEvents/EnforcementEventsController.java +++ b/ycl-platform/src/main/java/com/ycl/controller/cockpit/enforcementEvents/EnforcementEventsController.java @@ -2,16 +2,13 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.ycl.api.CommonResult; -import com.ycl.controller.video.common.constant.BaseCaseStatus; import com.ycl.dto.trend.TrendAnalysisParam; import com.ycl.entity.caseHandler.BaseCase; import com.ycl.entity.caseHandler.Violations; import com.ycl.mapper.trend.TrendAnalysisMapper; import com.ycl.service.caseHandler.IBaseCaseService; import com.ycl.service.caseHandler.IViolationsService; -import com.ycl.service.trend.TrendAnalysisService; import com.ycl.util.CheckApiUtil; -import com.ycl.vo.TrendVo; import com.ycl.vo.cockpit.CockpitVO; import com.ycl.vo.cockpit.enforcementEvents.EnforcementEventsVO; import com.ycl.vo.cockpit.enforcementEvents.VideoAndAreaVO; @@ -25,12 +22,9 @@ import javax.annotation.Resource; import java.math.BigDecimal; -import java.math.RoundingMode; import java.util.ArrayList; -import java.util.HashMap; import java.util.List; import java.util.Map; -import java.util.function.Consumer; import java.util.stream.Collectors; /** @@ -56,16 +50,6 @@ @GetMapping("/statistics") public CommonResult<Map<String, Object>> statistics(@Validated CockpitVO params) { checkApiUtil.cockpit(params); - Map<String, Object> map = new HashMap<>(); -// EnforcementEventsVO.StatisticsEventVO eventVO = new EnforcementEventsVO.StatisticsEventVO(); -// eventVO.setCount(10); -// eventVO.setRatio(new BigDecimal("0.69").setScale(2, RoundingMode.HALF_UP)); -// eventVO.setUp(true); -// iBaseCaseService.count(); -// map.put("reported", eventVO); -// map.put("disposition", eventVO); -// map.put("dispositionInTime", eventVO); -// map.put("register", eventVO); return CommonResult.success(iBaseCaseService.statistics()); } @@ -77,7 +61,7 @@ Long count = iViolationsService.count(); typeAndSourceVO.setAll(iViolationsService.count()); List<VideoAndAreaVO> videoAndAreaVOS = iViolationsService.selectType(); - videoAndAreaVOS.stream().forEach(item->item.setRatio(new BigDecimal(item.getCount()*1.0/count).setScale(2,BigDecimal.ROUND_HALF_UP))); + videoAndAreaVOS.stream().forEach(item -> item.setRatio(new BigDecimal(item.getCount() * 1.0 / count).setScale(2, BigDecimal.ROUND_HALF_UP))); typeAndSourceVO.setRecords(videoAndAreaVOS); return CommonResult.success(typeAndSourceVO); } diff --git a/ycl-platform/src/main/java/com/ycl/controller/message/MessageColumnController.java b/ycl-platform/src/main/java/com/ycl/controller/message/MessageColumnController.java index 77659e2..d0de9b9 100644 --- a/ycl-platform/src/main/java/com/ycl/controller/message/MessageColumnController.java +++ b/ycl-platform/src/main/java/com/ycl/controller/message/MessageColumnController.java @@ -4,7 +4,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.ycl.api.CommonResult; import com.ycl.bo.AdminUserDetails; -import com.ycl.controller.video.common.util.UtilNumber; +import com.ycl.common.util.UtilNumber; import com.ycl.dto.message.MessageColumnParam; import com.ycl.entity.message.MessageColumn; import com.ycl.service.message.IMessageColumnService; diff --git a/ycl-platform/src/main/java/com/ycl/controller/store/StoreInfoController.java b/ycl-platform/src/main/java/com/ycl/controller/store/StoreInfoController.java index d98ac78..379aa97 100644 --- a/ycl-platform/src/main/java/com/ycl/controller/store/StoreInfoController.java +++ b/ycl-platform/src/main/java/com/ycl/controller/store/StoreInfoController.java @@ -5,7 +5,7 @@ import com.ycl.annotation.LogSave; import com.ycl.api.CommonPage; import com.ycl.api.CommonResult; -import com.ycl.controller.video.common.util.UtilNumber; +import com.ycl.common.util.UtilNumber; import com.ycl.dto.store.UmsStoreInfoParam; import com.ycl.entity.store.StoreInfo; import com.ycl.entity.store.StoreScore; diff --git a/ycl-platform/src/main/java/com/ycl/controller/task/TaskController.java b/ycl-platform/src/main/java/com/ycl/controller/task/TaskController.java index e00084d..bec02a8 100644 --- a/ycl-platform/src/main/java/com/ycl/controller/task/TaskController.java +++ b/ycl-platform/src/main/java/com/ycl/controller/task/TaskController.java @@ -3,7 +3,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.ycl.api.CommonResult; import com.ycl.bo.AdminUserDetails; -import com.ycl.controller.video.common.util.UtilNumber; +import com.ycl.common.util.UtilNumber; import com.ycl.entity.task.Task; import com.ycl.service.task.ITaskService; import io.swagger.annotations.Api; diff --git a/ycl-platform/src/main/java/com/ycl/mapper/caseHandler/BaseCaseMapper.java b/ycl-platform/src/main/java/com/ycl/mapper/caseHandler/BaseCaseMapper.java index 933e1ae..0bef9a8 100644 --- a/ycl-platform/src/main/java/com/ycl/mapper/caseHandler/BaseCaseMapper.java +++ b/ycl-platform/src/main/java/com/ycl/mapper/caseHandler/BaseCaseMapper.java @@ -58,4 +58,14 @@ List<DelayDO> selectDelayVOList(); List<VideoAndAreaVO> selectType(); + + Long selectLastMonthCount(List<Integer> states); + + Long selectRecentlyMonthCount(List<Integer> states); + + Long selectOnTimeCaseCount(); + + Long selectOnTimeCaseLastMonthCount(); + + Long selectOnTimeCaseRecentlyMonthCount(); } diff --git a/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/BaseCaseServiceImpl.java b/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/BaseCaseServiceImpl.java index ff7582a..0b5789c 100644 --- a/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/BaseCaseServiceImpl.java +++ b/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/BaseCaseServiceImpl.java @@ -8,10 +8,10 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ycl.bo.AdminUserDetails; -import com.ycl.controller.video.common.constant.BaseCaseStatus; -import com.ycl.controller.video.common.constant.StepName; -import com.ycl.controller.video.common.util.DateUtil; -import com.ycl.controller.video.common.util.UtilNumber; +import com.ycl.common.constant.BaseCaseStatus; +import com.ycl.common.constant.StepName; +import com.ycl.common.util.DateUtil; +import com.ycl.common.util.UtilNumber; import com.ycl.dto.caseHandler.DispatchInfoParam; import com.ycl.dto.caseHandler.QueryForViolationParam; import com.ycl.dto.casePool.IllegalBuildingParam; @@ -35,6 +35,7 @@ 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.StatisticsVO; import com.ycl.vo.cockpit.enforcementEvents.VideoAndAreaVO; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -42,7 +43,6 @@ import org.springframework.security.core.context.SecurityContextHolder; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; - import javax.annotation.Resource; import java.math.BigDecimal; @@ -492,17 +492,17 @@ public List<DelayVO> selectDelayList() { List<DelayDO> delayDOS = baseCaseMapper.selectDelayVOList(); ArrayList<DelayVO> delayVOS = new ArrayList<>(); - delayDOS.stream().forEach(item->{ + delayDOS.stream().forEach(item -> { DelayVO delayVO = new DelayVO(); delayVO.setDescription(item.getDescription()); delayVO.setCode(item.getCode()); Duration between; - if (item.getEndTime()!=null){ + if (item.getEndTime() != null) { between = Duration.between(item.getEndTime(), item.getLimitTime()); - }else { + } else { between = Duration.between(LocalDateTime.now(), item.getLimitTime()); } - if (between.isNegative()){ + if (between.isNegative()) { delayVO.setDuration(between.toMinutes()); delayVOS.add(delayVO); } @@ -512,8 +512,91 @@ @Override public Map<String, Object> statistics() { - baseCaseMapper.selectCount(new LambdaQueryWrapper<BaseCase>().eq(BaseCase::getState, BaseCaseStatus.REPORT)); - return null; - } + Map<String, Object> map = new HashMap<>(); + Long reportCount = baseCaseMapper.selectCount(new LambdaQueryWrapper<BaseCase>().eq(BaseCase::getState, BaseCaseStatus.REPORT)); + StatisticsVO report = new StatisticsVO(); + report.setCount(reportCount); + ArrayList<Integer> reportState = new ArrayList<>(); + reportState.add(BaseCaseStatus.REPORT); + Long reportLastMonthCount = baseCaseMapper.selectLastMonthCount(reportState); + Long reportRecentlyMonthCount = baseCaseMapper.selectRecentlyMonthCount(reportState); + Double v = (reportRecentlyMonthCount - reportLastMonthCount) * 1.0 / reportLastMonthCount; + if (reportLastMonthCount == 0) { + report.setRatio(null); + } else { + report.setRatio(new BigDecimal(v).setScale(2, BigDecimal.ROUND_HALF_UP).abs()); + } + if (v < 0) { + report.setUp(false); + } else { + report.setUp(true); + } + Long disposeCount = baseCaseMapper.selectCount(new LambdaQueryWrapper<BaseCase>().in(BaseCase::getState, BaseCaseStatus.DISPATCH, BaseCaseStatus.DISPOSE, BaseCaseStatus.CHECK, BaseCaseStatus.CLOSING_REGISTER)); + StatisticsVO dispose = new StatisticsVO(); + dispose.setCount(disposeCount); + ArrayList<Integer> disposeState = new ArrayList<>(); + disposeState.add(BaseCaseStatus.DISPATCH); + disposeState.add(BaseCaseStatus.DISPOSE); + disposeState.add(BaseCaseStatus.CHECK); + disposeState.add(BaseCaseStatus.CLOSING_REGISTER); + Long disposeLastMonthCount = baseCaseMapper.selectLastMonthCount(disposeState); + Long disposeRecentlyMonthCount = baseCaseMapper.selectRecentlyMonthCount(disposeState); + Double v1 = (disposeRecentlyMonthCount - disposeLastMonthCount) * 1.0 / disposeLastMonthCount; + if (disposeLastMonthCount == 0) { + dispose.setRatio(null); + } else { + dispose.setRatio(new BigDecimal(v1).setScale(2, BigDecimal.ROUND_HALF_UP).abs()); + } + if (v1 < 0) { + dispose.setUp(false); + } else { + dispose.setUp(true); + } + + StatisticsVO onTimeDispose = new StatisticsVO(); + onTimeDispose.setCount(baseCaseMapper.selectOnTimeCaseCount()); + Long onTimeCaseLastMonthCount = baseCaseMapper.selectOnTimeCaseLastMonthCount(); + Long timeCaseRecentlyMonthCount = baseCaseMapper.selectOnTimeCaseRecentlyMonthCount(); + Double v2 = (timeCaseRecentlyMonthCount - onTimeCaseLastMonthCount) * 1.0 / onTimeCaseLastMonthCount; + if (onTimeCaseLastMonthCount == 0) { + onTimeDispose.setRatio(null); + } else { + onTimeDispose.setRatio(new BigDecimal(v2).setScale(2, BigDecimal.ROUND_HALF_UP).abs()); + } + if (v2 < 0) { + onTimeDispose.setUp(false); + } else { + onTimeDispose.setUp(true); + } + + Long registerCount = baseCaseMapper.selectCount(new LambdaQueryWrapper<BaseCase>().in(BaseCase::getState, BaseCaseStatus.DISPATCH, BaseCaseStatus.DISPOSE, BaseCaseStatus.CHECK, BaseCaseStatus.CLOSING_REGISTER, BaseCaseStatus.REPORT)); + StatisticsVO register = new StatisticsVO(); + register.setCount(registerCount); + ArrayList<Integer> registerState = new ArrayList<>(); + registerState.add(BaseCaseStatus.DISPATCH); + registerState.add(BaseCaseStatus.DISPOSE); + registerState.add(BaseCaseStatus.CHECK); + registerState.add(BaseCaseStatus.CLOSING_REGISTER); + registerState.add(BaseCaseStatus.REPORT); + Long registerLastMonthCount = baseCaseMapper.selectLastMonthCount(registerState); + Long registerRecentlyMonthCount = baseCaseMapper.selectRecentlyMonthCount(registerState); + System.out.println(disposeRecentlyMonthCount); + Double v3 = (registerRecentlyMonthCount - registerLastMonthCount) * 1.0 / registerLastMonthCount; + if (disposeLastMonthCount == 0) { + register.setRatio(null); + } else { + register.setRatio(new BigDecimal(v3).setScale(2, BigDecimal.ROUND_HALF_UP).abs()); + } + if (v3 < 0) { + register.setUp(false); + } else { + register.setUp(true); + } + map.put("reported", report); + map.put("disposition", dispose); + map.put("dispositionInTime", onTimeDispose); + map.put("register", register); + return map; + } } \ No newline at end of file diff --git a/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/CheckHandleServiceImpl.java b/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/CheckHandleServiceImpl.java index 3b898cc..5387357 100644 --- a/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/CheckHandleServiceImpl.java +++ b/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/CheckHandleServiceImpl.java @@ -3,9 +3,9 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.ycl.controller.video.common.constant.BaseCaseStatus; -import com.ycl.controller.video.common.constant.CheckResult; -import com.ycl.controller.video.common.constant.StepName; +import com.ycl.common.constant.BaseCaseStatus; +import com.ycl.common.constant.CheckResult; +import com.ycl.common.constant.StepName; import com.ycl.dto.caseHandler.ChechParam; import com.ycl.entity.caseHandler.BaseCase; import com.ycl.entity.caseHandler.DisposeRecord; diff --git a/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/DisposeRecordServiceImpl.java b/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/DisposeRecordServiceImpl.java index 5f66c8d..b9c3042 100644 --- a/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/DisposeRecordServiceImpl.java +++ b/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/DisposeRecordServiceImpl.java @@ -7,8 +7,8 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ycl.bo.AdminUserDetails; -import com.ycl.controller.video.common.constant.BaseCaseStatus; -import com.ycl.controller.video.common.constant.StepName; +import com.ycl.common.constant.BaseCaseStatus; +import com.ycl.common.constant.StepName; import com.ycl.dto.dispatch.UploadDisposingResultParam; import com.ycl.entity.caseHandler.*; import com.ycl.entity.resources.ImageResources; diff --git a/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/IDispatchHandleServiceImpl.java b/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/IDispatchHandleServiceImpl.java index 18fb476..2033940 100644 --- a/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/IDispatchHandleServiceImpl.java +++ b/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/IDispatchHandleServiceImpl.java @@ -3,8 +3,8 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.ycl.controller.video.common.constant.BaseCaseStatus; -import com.ycl.controller.video.common.constant.StepName; +import com.ycl.common.constant.BaseCaseStatus; +import com.ycl.common.constant.StepName; import com.ycl.dto.caseHandler.DispatchInfoParam; import com.ycl.entity.caseHandler.BaseCase; import com.ycl.entity.caseHandler.DispatchInfo; diff --git a/ycl-platform/src/main/java/com/ycl/service/message/impl/MessageServiceImpl.java b/ycl-platform/src/main/java/com/ycl/service/message/impl/MessageServiceImpl.java index f57fa44..04e0ea9 100644 --- a/ycl-platform/src/main/java/com/ycl/service/message/impl/MessageServiceImpl.java +++ b/ycl-platform/src/main/java/com/ycl/service/message/impl/MessageServiceImpl.java @@ -4,8 +4,8 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.fasterxml.jackson.databind.ObjectMapper; -import com.ycl.controller.video.common.constant.ChannelCode; -import com.ycl.controller.video.common.util.CommonUtils; +import com.ycl.common.constant.ChannelCode; +import com.ycl.common.util.CommonUtils; import com.ycl.dto.message.MessageParam; import com.ycl.entity.message.Message; import com.ycl.entity.message.SendReq; diff --git a/ycl-platform/src/main/java/com/ycl/service/message/impl/SmsAuditServiceImpl.java b/ycl-platform/src/main/java/com/ycl/service/message/impl/SmsAuditServiceImpl.java index 4323e14..2df405f 100644 --- a/ycl-platform/src/main/java/com/ycl/service/message/impl/SmsAuditServiceImpl.java +++ b/ycl-platform/src/main/java/com/ycl/service/message/impl/SmsAuditServiceImpl.java @@ -4,7 +4,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.ycl.controller.video.common.util.CommonUtils; +import com.ycl.common.util.CommonUtils; import com.ycl.dto.message.MessageSmsParam; import com.ycl.entity.message.Message; import com.ycl.entity.message.SmsAudit; diff --git a/ycl-platform/src/main/java/com/ycl/service/message/impl/SmsTemplateServiceImpl.java b/ycl-platform/src/main/java/com/ycl/service/message/impl/SmsTemplateServiceImpl.java index 6e71271..d7caecc 100644 --- a/ycl-platform/src/main/java/com/ycl/service/message/impl/SmsTemplateServiceImpl.java +++ b/ycl-platform/src/main/java/com/ycl/service/message/impl/SmsTemplateServiceImpl.java @@ -4,7 +4,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.ycl.controller.video.common.util.CommonUtils; +import com.ycl.common.util.CommonUtils; import com.ycl.entity.message.SmsTemplate; import com.ycl.mapper.message.SmsTemplateMapper; import com.ycl.service.message.ISmsTemplateService; diff --git a/ycl-platform/src/main/java/com/ycl/vo/cockpit/enforcementEvents/EnforcementEventsVO.java b/ycl-platform/src/main/java/com/ycl/vo/cockpit/enforcementEvents/EnforcementEventsVO.java index d0cb203..1ac0c65 100644 --- a/ycl-platform/src/main/java/com/ycl/vo/cockpit/enforcementEvents/EnforcementEventsVO.java +++ b/ycl-platform/src/main/java/com/ycl/vo/cockpit/enforcementEvents/EnforcementEventsVO.java @@ -16,18 +16,7 @@ */ @ApiModel(description = "椹鹃┒鑸辨暟鎹�-鎵ф硶浜嬩欢VO灞�") public class EnforcementEventsVO { - @ApiModel(description = "鎵ф硶浜嬩欢缁熻") - @Data - public static class StatisticsEventVO { - @ApiModelProperty(value = "鏁伴噺") - private Integer count; - @ApiModelProperty(value = "姣斾緥") - private BigDecimal ratio; - - @ApiModelProperty(value = "涓婂崌涓嬮檷") - private Boolean up; - } @Data @ApiModel(description = "浜嬩欢绫诲瀷/浜嬩欢鏉ユ簮") diff --git a/ycl-platform/src/main/java/com/ycl/vo/cockpit/enforcementEvents/StatisticsVO.java b/ycl-platform/src/main/java/com/ycl/vo/cockpit/enforcementEvents/StatisticsVO.java new file mode 100644 index 0000000..0f67254 --- /dev/null +++ b/ycl-platform/src/main/java/com/ycl/vo/cockpit/enforcementEvents/StatisticsVO.java @@ -0,0 +1,19 @@ +package com.ycl.vo.cockpit.enforcementEvents; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.math.BigDecimal; + +@Data +public class StatisticsVO { + @ApiModelProperty(value = "鏁伴噺") + private Long count; + + @ApiModelProperty(value = "姣斾緥") + private BigDecimal ratio; + + @ApiModelProperty(value = "涓婂崌涓嬮檷") + private Boolean up; +} \ No newline at end of file diff --git a/ycl-platform/src/main/resources/mapper/caseHandler/BaseCaseMapper.xml b/ycl-platform/src/main/resources/mapper/caseHandler/BaseCaseMapper.xml index 632de9b..70b64c2 100644 --- a/ycl-platform/src/main/resources/mapper/caseHandler/BaseCaseMapper.xml +++ b/ycl-platform/src/main/resources/mapper/caseHandler/BaseCaseMapper.xml @@ -254,14 +254,14 @@ <select id="selectRegisterCount" resultType="java.lang.Long"> select count(1) from ums_base_case - where state in (2, 6) + where state in (2, 6,7,8,9) and to_days(create_time) = TO_DAYS(now()); </select> <select id="selectStudyCount" resultType="java.lang.Long"> select count(1) from ums_base_case - where state =3 + where state = 3 and to_days(create_time) = TO_DAYS(now()); </select> @@ -337,13 +337,51 @@ </select> <select id="selectType" resultType="com.ycl.vo.cockpit.enforcementEvents.VideoAndAreaVO"> - SELECT - IFNULL( t2.`name`, "鍏朵粬" ) as name, - COUNT( 1 ) as count + SELECT IFNULL(t2.`name`, "鍏朵粬") as name, + COUNT(1) as count FROM ums_violations t1 - LEFT JOIN ums_data_dictionary t2 ON t1.category_id = t2.id + LEFT JOIN ums_data_dictionary t2 + ON t1.category_id = t2.id GROUP BY t1.category_id </select> + + <select id="selectLastMonthCount" resultType="java.lang.Long"> + SELECT + count(1) + FROM + ums_base_case + WHERE + state in + <foreach collection="list" open="(" separator="," close=")" item="state"> + #{state} + </foreach> + AND PERIOD_DIFF( date_format( now( ), '%Y%m' ), date_format( create_time, '%Y%m' ) ) =1 + </select> + + <select id="selectRecentlyMonthCount" resultType="java.lang.Long"> + SELECT + count(1) + FROM + ums_base_case + WHERE + state in + <foreach collection="list" open="(" separator="," close=")" item="state"> + #{state} + </foreach> + AND PERIOD_DIFF( date_format( now( ), '%Y%m' ), date_format( create_time, '%Y%m' ) ) =0 + </select> + + <select id="selectOnTimeCaseCount" resultType="java.lang.Long"> + SELECT COUNT(1) FROM ums_dispose_record WHERE end_time < limit_time + </select> + + <select id="selectOnTimeCaseLastMonthCount" resultType="java.lang.Long"> + SELECT COUNT(1) FROM ums_dispose_record WHERE end_time < limit_time AND PERIOD_DIFF( date_format( now( ), '%Y%m' ), date_format( create_time, '%Y%m' ) ) =1 + </select> + + <select id="selectOnTimeCaseRecentlyMonthCount" resultType="java.lang.Long"> + SELECT COUNT(1) FROM ums_dispose_record WHERE end_time < limit_time AND PERIOD_DIFF( date_format( now( ), '%Y%m' ), date_format( create_time, '%Y%m' ) ) =0 + </select> </mapper> \ No newline at end of file diff --git a/ycl-platform/src/test/java/com/ycl/sccgplatform/SccgPlatformApplicationTests.java b/ycl-platform/src/test/java/com/ycl/sccgplatform/SccgPlatformApplicationTests.java index 506f26a..138d65a 100644 --- a/ycl-platform/src/test/java/com/ycl/sccgplatform/SccgPlatformApplicationTests.java +++ b/ycl-platform/src/test/java/com/ycl/sccgplatform/SccgPlatformApplicationTests.java @@ -1,10 +1,9 @@ package com.ycl.sccgplatform; -import com.ycl.controller.video.common.util.UtilNumber; +import com.ycl.common.util.UtilNumber; import com.ycl.enums.common.DictTypeEnum; import com.ycl.service.caseHandler.IBaseCaseService; import com.ycl.utils.MD5Util; -import org.apache.commons.codec.digest.Md5Crypt; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; -- Gitblit v1.8.0