diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/StatisticController.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/StatisticController.java index 65143c0..2e174c6 100644 --- a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/StatisticController.java +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/StatisticController.java @@ -31,7 +31,7 @@ public class StatisticController extends BaseController { * 获取完成情况统计 */ @GetMapping("/complete/all") - public R getComplete(BaseQueryBo query) { + public R> getComplete(BaseQueryBo query) { return R.ok(statisticService.getComplete4All(query)); } diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/SysWarnRecordController.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/SysWarnController.java similarity index 85% rename from ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/SysWarnRecordController.java rename to ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/SysWarnController.java index d11d054..32aa8b8 100644 --- a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/SysWarnRecordController.java +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/SysWarnController.java @@ -2,6 +2,7 @@ package org.dromara.scale.controller; import cn.dev33.satoken.annotation.SaCheckPermission; import jakarta.servlet.http.HttpServletResponse; +import jakarta.validation.constraints.NotEmpty; import jakarta.validation.constraints.NotNull; import lombok.RequiredArgsConstructor; import org.dromara.common.core.domain.R; @@ -32,7 +33,7 @@ import java.util.List; @RequiredArgsConstructor @RestController @RequestMapping("/scale/warn") -public class SysWarnRecordController extends BaseController { +public class SysWarnController extends BaseController { private final ISysWarnRecordService sysWarnRecordService; @@ -90,4 +91,17 @@ public class SysWarnRecordController extends BaseController { public R> getEvaluationRecordList(@NotNull(message = "主键不能为空") Long warnId) { return R.ok(sysWarnRecordService.queryConclusionListByWarnId(warnId)); } + + /** + * 修改预警记录 + */ + @SaCheckPermission("scale:warn:edit") + @Log(title = "预警记录", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping("/config/{ids}") + public R config(@NotEmpty(message = "主键不能为空") + @PathVariable Integer[] ids) { + return toAjax(sysWarnRecordService.updateWarnConfig(ids)); + } + } diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/bo/BaseQueryBo.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/bo/BaseQueryBo.java index 2752501..1d011f5 100644 --- a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/bo/BaseQueryBo.java +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/bo/BaseQueryBo.java @@ -15,4 +15,5 @@ public class BaseQueryBo { Long batchNo; Long scaleId; Long deptId; + } diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/mapper/SysWarnRecordMapper.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/mapper/SysWarnRecordMapper.java index ae92615..d6edc7a 100644 --- a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/mapper/SysWarnRecordMapper.java +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/mapper/SysWarnRecordMapper.java @@ -26,4 +26,7 @@ public interface SysWarnRecordMapper extends BaseMapperPlus selectEvaluationRecordListByWarnId(Long warnId); + int updateConfigByIds(String ids); + + } diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/IStatisticService.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/IStatisticService.java index 6eaa304..9bb7e15 100644 --- a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/IStatisticService.java +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/IStatisticService.java @@ -9,7 +9,7 @@ import java.util.List; public interface IStatisticService { - StatisticNumVo getComplete4All(BaseQueryBo query); + List getComplete4All(BaseQueryBo query); List getComplete4Class(BaseQueryBo query); diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/ISysWarnRecordService.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/ISysWarnRecordService.java index a052954..e1cfd89 100644 --- a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/ISysWarnRecordService.java +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/ISysWarnRecordService.java @@ -44,4 +44,6 @@ public interface ISysWarnRecordService { List queryConclusionListByWarnId(Long warnId); + Boolean updateWarnConfig(Integer[] ids); + } diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/StatisticServiceImpl.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/StatisticServiceImpl.java index 5666572..71a727f 100644 --- a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/StatisticServiceImpl.java +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/StatisticServiceImpl.java @@ -8,7 +8,11 @@ import org.dromara.scale.mapper.StatisticMapper; import org.dromara.scale.service.IStatisticService; import org.springframework.stereotype.Service; +import java.util.ArrayList; import java.util.List; +import java.util.Map; +import java.util.Set; +import java.util.stream.Collectors; /** *

TODO

@@ -25,25 +29,39 @@ public class StatisticServiceImpl implements IStatisticService { private final StatisticMapper statisticMapper; @Override - public StatisticNumVo getComplete4All(BaseQueryBo query) { + public List getComplete4All(BaseQueryBo query) { Long batchNo = query.getBatchNo(); Long scaleId = query.getScaleId(); - List list = statisticMapper.selectCompleteAvaluation(batchNo, scaleId); - int complete = list.stream().mapToInt(StatisticNumVo::getValue).sum(); - int uncompleted = list.stream().mapToInt(StatisticNumVo::getSpareValue).sum(); - - StatisticNumVo data = new StatisticNumVo(); - //data.setName(deptName); - data.setValue(complete); - data.setSpareValue(uncompleted); - return data; + List statisticNumVos = statisticMapper.selectCompleteAvaluation(batchNo, scaleId); + Map> collect = statisticNumVos.stream() + .collect(Collectors.groupingBy(StatisticNumVo::getParentName)); + return processData(collect); } @Override public List getComplete4Class(BaseQueryBo query) { Long batchNo = query.getBatchNo(); Long scaleId = query.getScaleId(); - return statisticMapper.selectCompleteAvaluation(batchNo, scaleId); + List statisticNumVos = statisticMapper.selectCompleteAvaluation(batchNo, scaleId); + Map> collect = statisticNumVos.stream() + .collect(Collectors.groupingBy(StatisticNumVo::getDeptName)); + return processData(collect); + } + + private List processData(Map> collect) { + Set keys = collect.keySet(); + List data = new ArrayList<>(); + for (String key : keys) { + List list = collect.get(key); + int complete = list.stream().mapToInt(StatisticNumVo::getValue).sum(); + int uncompleted = list.stream().mapToInt(StatisticNumVo::getSpareValue).sum(); + StatisticNumVo one = new StatisticNumVo(); + one.setName(key); + one.setValue(complete); + one.setSpareValue(uncompleted); + data.add(one); + } + return data; } @Override diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/SysWarnRecordServiceImpl.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/SysWarnRecordServiceImpl.java index 3fe617d..26ea8c8 100644 --- a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/SysWarnRecordServiceImpl.java +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/SysWarnRecordServiceImpl.java @@ -1,5 +1,6 @@ package org.dromara.scale.service.impl; +import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -101,4 +102,10 @@ public class SysWarnRecordServiceImpl implements ISysWarnRecordService { public List queryConclusionListByWarnId(Long warnId) { return baseMapper.selectEvaluationRecordListByWarnId(warnId); } + + @Override + public Boolean updateWarnConfig(Integer[] ids) { + + return baseMapper.updateConfigByIds(StrUtil.join(StrUtil.COMMA, ids)) > 0; + } } diff --git a/ruoyi-modules/rouyi-scale/src/main/resources/mapper/scale/SysWarnRecordMapper.xml b/ruoyi-modules/rouyi-scale/src/main/resources/mapper/scale/SysWarnRecordMapper.xml index 1a17561..df51f36 100644 --- a/ruoyi-modules/rouyi-scale/src/main/resources/mapper/scale/SysWarnRecordMapper.xml +++ b/ruoyi-modules/rouyi-scale/src/main/resources/mapper/scale/SysWarnRecordMapper.xml @@ -21,5 +21,11 @@ where wr.warn_id = #{warnId} - + + update sys_warn_config + set status = 0; + update sys_warn_config + set status=1 + where find_in_set(id, #{ids}) +