diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/constant/SituationEnum.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/constant/SituationEnum.java
index b312590..a4a0f99 100644
--- a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/constant/SituationEnum.java
+++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/constant/SituationEnum.java
@@ -11,7 +11,7 @@ public enum SituationEnum {
*/
NONE(1, "未见异常"),
LOW(2, "低风险"),
- MIDDEL(3, "中风险"),
+ MIDDLE(3, "中风险"),
HIGH(4, "高风险"),
MAJOR(5, "重大风险");
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
new file mode 100644
index 0000000..711638f
--- /dev/null
+++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/StatisticController.java
@@ -0,0 +1,61 @@
+package org.dromara.scale.controller;
+
+import lombok.RequiredArgsConstructor;
+import org.dromara.common.core.domain.R;
+import org.dromara.common.web.core.BaseController;
+import org.dromara.scale.domain.vo.StatisticCompleteVo;
+import org.dromara.scale.domain.vo.StatisticWarnVo;
+import org.dromara.scale.service.IStatisticService;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.List;
+
+/**
+ *
统计
+ *
+ * @author cjw
+ * @version V1.0.0
+ * @date 2024/4/21 16:22
+ */
+@RequiredArgsConstructor
+@RestController
+@RequestMapping("/scale/statistic")
+public class StatisticController extends BaseController {
+
+ private final IStatisticService statisticService;
+
+ /**
+ * 获取完成情况统计
+ */
+ @GetMapping("/complete/all")
+ public R getComplete(Long batchNo, Long scaleId) {
+ return R.ok(statisticService.getComplete4All(batchNo, scaleId));
+ }
+
+ /**
+ * 获取完成情况统计
+ */
+ @GetMapping("/complete/class")
+ public R> getComplete4Class(Long batchNo, Long scaleId) {
+ return R.ok(statisticService.getComplete4Class(batchNo, scaleId));
+ }
+
+ /**
+ * 获取完成情况统计
+ */
+ @GetMapping("/warn/all")
+ public R getWarn(Long batchNo, Long scaleId) {
+ return R.ok(statisticService.getWarn4All(batchNo, scaleId));
+ }
+
+ /**
+ * 获取完成情况统计
+ */
+ @GetMapping("/warn/class")
+ public R> getWarn4Class(Long batchNo, Long scaleId) {
+ return R.ok(statisticService.getWarn4Class(batchNo, scaleId));
+ }
+
+}
diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/SysInterveneRecordController.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/SysInterveneRecordController.java
index d00eb22..c4041a2 100644
--- a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/SysInterveneRecordController.java
+++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/SysInterveneRecordController.java
@@ -2,12 +2,10 @@ 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;
import org.dromara.common.core.validate.AddGroup;
-import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
@@ -80,23 +78,23 @@ public class SysInterveneRecordController extends BaseController {
/**
* 修改干预记录
*/
- @SaCheckPermission("scale:intervene:edit")
- @Log(title = "干预记录", businessType = BusinessType.UPDATE)
- @RepeatSubmit()
- @PutMapping()
- public R edit(@Validated(EditGroup.class) @RequestBody SysInterveneRecordBo bo) {
- return toAjax(sysInterveneRecordService.updateByBo(bo));
- }
+// @SaCheckPermission("scale:intervene:edit")
+// @Log(title = "干预记录", businessType = BusinessType.UPDATE)
+// @RepeatSubmit()
+// @PutMapping()
+// public R edit(@Validated(EditGroup.class) @RequestBody SysInterveneRecordBo bo) {
+// return toAjax(sysInterveneRecordService.updateByBo(bo));
+// }
/**
* 删除干预记录
*
* @param interveneIds 主键串
*/
- @SaCheckPermission("scale:intervene:remove")
- @Log(title = "干预记录", businessType = BusinessType.DELETE)
- @DeleteMapping("/{interveneIds}")
- public R remove(@NotEmpty(message = "主键不能为空") @PathVariable Long[] interveneIds) {
- return toAjax(sysInterveneRecordService.deleteWithValidByIds(List.of(interveneIds), true));
- }
+// @SaCheckPermission("scale:intervene:remove")
+// @Log(title = "干预记录", businessType = BusinessType.DELETE)
+// @DeleteMapping("/{interveneIds}")
+// public R remove(@NotEmpty(message = "主键不能为空") @PathVariable Long[] interveneIds) {
+// return toAjax(sysInterveneRecordService.deleteWithValidByIds(List.of(interveneIds), true));
+// }
}
diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/SysScaleAnswerController.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/SysScaleAnswerController.java
index e90c2bd..8184644 100644
--- a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/SysScaleAnswerController.java
+++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/SysScaleAnswerController.java
@@ -1,21 +1,10 @@
package org.dromara.scale.controller;
-import cn.dev33.satoken.annotation.SaCheckPermission;
-import jakarta.servlet.http.HttpServletResponse;
-import jakarta.validation.constraints.NotNull;
import lombok.RequiredArgsConstructor;
-import org.dromara.common.core.domain.R;
-import org.dromara.common.excel.utils.ExcelUtil;
-import org.dromara.common.log.annotation.Log;
-import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.web.core.BaseController;
-import org.dromara.scale.domain.bo.SysScaleAnswerBo;
-import org.dromara.scale.domain.vo.SysScaleAnswerVo;
-import org.dromara.scale.service.ISysScaleAnswerService;
import org.springframework.validation.annotation.Validated;
-import org.springframework.web.bind.annotation.*;
-
-import java.util.List;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
/**
* 选项信息
@@ -29,7 +18,7 @@ import java.util.List;
@RequestMapping("/scale/answer")
public class SysScaleAnswerController extends BaseController {
- private final ISysScaleAnswerService sysScaleAnswerService;
+ //private final ISysScaleAnswerService sysScaleAnswerService;
/**
* 查询选项信息列表
@@ -43,23 +32,23 @@ public class SysScaleAnswerController extends BaseController {
/**
* 导出选项信息列表
*/
- @SaCheckPermission("scale:answer:export")
- @Log(title = "选项信息", businessType = BusinessType.EXPORT)
- @PostMapping("/export")
- public void export(SysScaleAnswerBo bo, HttpServletResponse response) {
- List list = sysScaleAnswerService.queryList(bo);
- ExcelUtil.exportExcel(list, "选项信息", SysScaleAnswerVo.class, response);
- }
+// @SaCheckPermission("scale:answer:export")
+// @Log(title = "选项信息", businessType = BusinessType.EXPORT)
+// @PostMapping("/export")
+// public void export(SysScaleAnswerBo bo, HttpServletResponse response) {
+// List list = sysScaleAnswerService.queryList(bo);
+// ExcelUtil.exportExcel(list, "选项信息", SysScaleAnswerVo.class, response);
+// }
/**
* 获取选项信息详细信息
*
* @param answerId 主键
*/
- @SaCheckPermission("scale:answer:query")
- @GetMapping("/{answerId}")
- public R getInfo(@NotNull(message = "主键不能为空")
- @PathVariable Long answerId) {
- return R.ok(sysScaleAnswerService.queryById(answerId));
- }
+// @SaCheckPermission("scale:answer:query")
+// @GetMapping("/{answerId}")
+// public R getInfo(@NotNull(message = "主键不能为空")
+// @PathVariable Long answerId) {
+// return R.ok(sysScaleAnswerService.queryById(answerId));
+// }
}
diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/SysScaleFactorController.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/SysScaleFactorController.java
index a174772..9188d5d 100644
--- a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/SysScaleFactorController.java
+++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/SysScaleFactorController.java
@@ -109,5 +109,4 @@ public class SysScaleFactorController extends BaseController {
return toAjax(sysScaleFactorService.deleteWithValidByIds(List.of(factorIds), true));
}
-
}
diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/SysScalePublishController.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/SysScalePublishController.java
index f695e94..dd8acfc 100644
--- a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/SysScalePublishController.java
+++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/SysScalePublishController.java
@@ -14,7 +14,7 @@ import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.web.core.BaseController;
import org.dromara.scale.domain.bo.SysScalePublishBo;
-import org.dromara.scale.domain.vo.StatisticVo;
+import org.dromara.scale.domain.vo.EvaluationVo;
import org.dromara.scale.domain.vo.SysScalePublishVo;
import org.dromara.scale.service.ISysScalePublishService;
import org.springframework.validation.annotation.Validated;
@@ -93,20 +93,11 @@ public class SysScalePublishController extends BaseController {
}
/**
- * 获取量测记录统计
+ * 获取量测进度
*/
@SaCheckPermission("evaluation:record:query")
- @GetMapping("/statistic/all")
- public R getStatistic(Long batchNo, Long scale) {
- return R.ok(sysScalePublishService.getStatistic4All(batchNo, scale));
- }
-
- /**
- * 获取量测记录统计
- */
- @SaCheckPermission("evaluation:record:query")
- @GetMapping("/statistic/class")
- public R> getStatistic4Class(Long batchNo, Long scale) {
- return R.ok(sysScalePublishService.getStatistic4Class(batchNo, scale));
+ @GetMapping("/evaluation/list")
+ public R> getEvaluationList(Long batchNo, Long scaleId) {
+ return R.ok(sysScalePublishService.getEvaluationList(batchNo, scaleId));
}
}
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/SysWarnRecordController.java
index 9e6dd26..d11d054 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/SysWarnRecordController.java
@@ -79,7 +79,13 @@ public class SysWarnRecordController extends BaseController {
return toAjax(sysWarnRecordService.updateByBo(bo));
}
- @SaCheckPermission("sacle:warn:query")
+ /**
+ * 查询预警下的量测记录
+ *
+ * @param warnId
+ * @return
+ */
+ @SaCheckPermission("scale:warn:query")
@GetMapping("/evaluation/record")
public R> getEvaluationRecordList(@NotNull(message = "主键不能为空") Long warnId) {
return R.ok(sysWarnRecordService.queryConclusionListByWarnId(warnId));
diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/EvaluationVo.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/EvaluationVo.java
new file mode 100644
index 0000000..57faf3c
--- /dev/null
+++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/EvaluationVo.java
@@ -0,0 +1,38 @@
+package org.dromara.scale.domain.vo;
+
+import lombok.Data;
+
+import java.io.Serial;
+import java.io.Serializable;
+
+/**
+ * 量测进度
+ *
+ * @author cjw
+ * @version V1.0.0
+ * @date 2024/4/21 15:44
+ */
+@Data
+public class EvaluationVo implements Serializable {
+
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+
+ private Long recordId;
+
+ private Long scaleId;
+
+ private String scaleName;
+
+ private Long userId;
+
+ private String nickName;
+
+ private Long deptId;
+
+ private String deptName;
+
+ private Boolean used;
+
+}
diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/StatisticVo.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/StatisticCompleteVo.java
similarity index 52%
rename from ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/StatisticVo.java
rename to ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/StatisticCompleteVo.java
index 1424c85..8a3bf73 100644
--- a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/StatisticVo.java
+++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/StatisticCompleteVo.java
@@ -2,15 +2,21 @@ package org.dromara.scale.domain.vo;
import lombok.Data;
+import java.io.Serial;
+import java.io.Serializable;
+
/**
- *
统计实体
+ *
统计完成
*
* @author cjw
* @version V1.0.0
* @date 2024/4/17 15:21
*/
@Data
-public class StatisticVo {
+public class StatisticCompleteVo implements Serializable {
+
+ @Serial
+ private static final long serialVersionUID = 1L;
private String name;
diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/StatisticWarnVo.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/StatisticWarnVo.java
new file mode 100644
index 0000000..bfe61f4
--- /dev/null
+++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/StatisticWarnVo.java
@@ -0,0 +1,28 @@
+package org.dromara.scale.domain.vo;
+
+import lombok.Data;
+
+import java.io.Serial;
+import java.io.Serializable;
+
+/**
+ *
统计预警
+ *
+ * @author cjw
+ * @version V1.0.0
+ * @date 2024/4/21 16:31
+ */
+@Data
+public class StatisticWarnVo implements Serializable {
+
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ private String deptName;
+
+ private Integer noneNum;
+ private Integer lowNum;
+ private Integer middleNum;
+ private Integer highNum;
+ private Integer majorNum;
+}
diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/mapper/SysScalePublishMapper.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/mapper/SysScalePublishMapper.java
index 87e4aaf..7d88da3 100644
--- a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/mapper/SysScalePublishMapper.java
+++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/mapper/SysScalePublishMapper.java
@@ -4,7 +4,9 @@ import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
import org.dromara.scale.domain.SysScalePublish;
-import org.dromara.scale.domain.vo.StatisticVo;
+import org.dromara.scale.domain.vo.EvaluationVo;
+import org.dromara.scale.domain.vo.StatisticCompleteVo;
+import org.dromara.scale.domain.vo.StatisticWarnVo;
import org.dromara.scale.domain.vo.SysScalePublishVo;
import java.util.List;
@@ -18,12 +20,20 @@ import java.util.List;
@Mapper
public interface SysScalePublishMapper extends BaseMapperPlus {
- StatisticVo selectSingleAllAvaluation(Long batchNo);
+ StatisticCompleteVo selectSingleAllAvaluation(Long batchNo);
- StatisticVo selectSingleAlreadyAvaluation(@Param("batchNo") Long batchNo, @Param("scaleId") Long scaleId);
+ StatisticCompleteVo selectSingleCompleteAvaluation(@Param("batchNo") Long batchNo, @Param("scaleId") Long scaleId);
- List selectAllAvaluation(Long batchNo);
+ List selectAllAvaluation(Long batchNo);
- List selectAlreadyAvaluation(@Param("batchNo") Long batchNo, @Param("scaleId") Long scaleId);
+ List selectCompleteAvaluation(@Param("batchNo") Long batchNo, @Param("scaleId") Long scaleId);
+
+ List selectEvaluationVoList(@Param("batchNo") Long batchNo, @Param("scaleId") Long scaleId);
+
+ List selectEvaluationVoList4Parent(@Param("batchNo") Long batchNo, @Param("scaleId") Long scaleId);
+
+ StatisticWarnVo selectStatisticWarn(@Param("batchNo") Long batchNo, @Param("scaleId") Long scaleId);
+
+ List selectStatisticWarn4Class(@Param("batchNo") Long batchNo, @Param("scaleId") Long scaleId);
}
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
new file mode 100644
index 0000000..599aa47
--- /dev/null
+++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/IStatisticService.java
@@ -0,0 +1,19 @@
+package org.dromara.scale.service;
+
+import org.dromara.scale.domain.vo.StatisticCompleteVo;
+import org.dromara.scale.domain.vo.StatisticWarnVo;
+
+import java.util.List;
+
+public interface IStatisticService {
+
+
+ StatisticCompleteVo getComplete4All(Long batchNo, Long scaleId);
+
+ List getComplete4Class(Long batchNo, Long scaleId);
+
+
+ StatisticWarnVo getWarn4All(Long batchNo, Long scaleId);
+
+ List getWarn4Class(Long batchNo, Long scaleId);
+}
diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/ISysScalePublishService.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/ISysScalePublishService.java
index 9027597..be942c2 100644
--- a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/ISysScalePublishService.java
+++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/ISysScalePublishService.java
@@ -3,7 +3,7 @@ package org.dromara.scale.service;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.scale.domain.bo.SysScalePublishBo;
-import org.dromara.scale.domain.vo.StatisticVo;
+import org.dromara.scale.domain.vo.EvaluationVo;
import org.dromara.scale.domain.vo.SysScalePublishVo;
import java.util.Collection;
@@ -47,7 +47,7 @@ public interface ISysScalePublishService {
*/
Boolean deleteWithValidByIds(Collection ids, Boolean isValid);
- StatisticVo getStatistic4All(Long batchNo,Long scale);
- List getStatistic4Class(Long batchNo,Long scale);
+ List getEvaluationList(Long batchNo,Long scaleId);
+
}
diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/StatisticService.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/StatisticService.java
new file mode 100644
index 0000000..147bc9b
--- /dev/null
+++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/StatisticService.java
@@ -0,0 +1,62 @@
+package org.dromara.scale.service.impl;
+
+import lombok.RequiredArgsConstructor;
+import org.dromara.scale.domain.vo.StatisticCompleteVo;
+import org.dromara.scale.domain.vo.StatisticWarnVo;
+import org.dromara.scale.mapper.SysScalePublishMapper;
+import org.dromara.scale.service.IStatisticService;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
+
+/**
+ * TODO
+ *
+ * @author cjw
+ * @version V1.0.0
+ * @date 2024/4/21 16:24
+ */
+
+@RequiredArgsConstructor
+@Service
+public class StatisticService implements IStatisticService {
+
+ private final SysScalePublishMapper scalePublishMapper;
+
+ @Override
+ public StatisticCompleteVo getComplete4All(Long batchNo, Long scaleId) {
+ StatisticCompleteVo all = scalePublishMapper.selectSingleAllAvaluation(batchNo);
+ int total = all.getValue();
+ StatisticCompleteVo already = scalePublishMapper.selectSingleCompleteAvaluation(batchNo, scaleId);
+ int alreadyValue = already.getValue();
+ all.setSpareValue(total - alreadyValue);
+ return all;
+ }
+
+ @Override
+ public List getComplete4Class(Long batchNo, Long scaleId) {
+ List all = scalePublishMapper.selectAllAvaluation(batchNo);
+ Map collect = all.stream().collect(Collectors.groupingBy(StatisticCompleteVo::getName,
+ Collectors.collectingAndThen(Collectors.mapping(StatisticCompleteVo::getValue, Collectors.toList()),
+ values -> values.get(0))));
+ List completeList = scalePublishMapper.selectCompleteAvaluation(batchNo, scaleId);
+ completeList.forEach(a -> {
+ String name = a.getName();
+ int total = collect.get(name);
+ a.setSpareValue(total - a.getValue());
+ });
+ return completeList;
+ }
+
+ @Override
+ public StatisticWarnVo getWarn4All(Long batchNo, Long scaleId) {
+ return scalePublishMapper.selectStatisticWarn(batchNo, scaleId);
+ }
+
+ @Override
+ public List getWarn4Class(Long batchNo, Long scaleId) {
+ return scalePublishMapper.selectStatisticWarn4Class(batchNo, scaleId);
+ }
+}
diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/SysScalePublishServiceImpl.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/SysScalePublishServiceImpl.java
index 9e1457e..a3c2abb 100644
--- a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/SysScalePublishServiceImpl.java
+++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/SysScalePublishServiceImpl.java
@@ -18,18 +18,19 @@ import org.dromara.common.redis.utils.QueueUtils;
import org.dromara.scale.constant.StatusEnum;
import org.dromara.scale.domain.SysScalePublish;
import org.dromara.scale.domain.bo.SysScalePublishBo;
-import org.dromara.scale.domain.vo.StatisticVo;
+import org.dromara.scale.domain.vo.EvaluationVo;
import org.dromara.scale.domain.vo.SysScalePublishVo;
import org.dromara.scale.domain.vo.SysScaleVo;
import org.dromara.scale.mapper.SysScaleMapper;
import org.dromara.scale.mapper.SysScalePublishMapper;
import org.dromara.scale.service.ISysScalePublishService;
+import org.dromara.system.domain.vo.SysDeptVo;
+import org.dromara.system.mapper.SysDeptMapper;
import org.springframework.stereotype.Service;
import java.util.Collection;
import java.util.Date;
import java.util.List;
-import java.util.Map;
import java.util.concurrent.TimeUnit;
import java.util.stream.Collectors;
@@ -47,7 +48,9 @@ public class SysScalePublishServiceImpl implements ISysScalePublishService {
private final SysScalePublishMapper baseMapper;
- private final SysScaleMapper sysScaleMapper;
+ private final SysScaleMapper scaleMapper;
+
+ private final SysDeptMapper deptMapper;
/**
* 查询量发布
@@ -107,12 +110,12 @@ public class SysScalePublishServiceImpl implements ISysScalePublishService {
throw new ServiceException("截止日期必须在六小时后");
}
if (CollUtil.isNotEmpty(bo.getScaleIds())) {
- List list = sysScaleMapper.findSysScaleByIds(StrUtil.join(StrUtil.COMMA, bo.getScaleIds()));
+ List list = scaleMapper.findSysScaleByIds(StrUtil.join(StrUtil.COMMA, bo.getScaleIds()));
add.setScaleNames(list.stream().map(SysScaleVo::getScaleName).collect(Collectors.joining(StrUtil.COMMA)));
//List scaleList = new ArrayList<>(bo.getScaleIds().size());
for (String scaleId : bo.getScaleIds()) {
- sysScaleMapper.updatePublishNums(Long.parseLong(scaleId));
+ scaleMapper.updatePublishNums(Long.parseLong(scaleId));
// SysScale sysScale = sysScaleMapper.selectById(scaleId);
// sysScale.setPublishNums(sysScale.getPublishNums() + 1);
// scaleList.add(sysScale);
@@ -163,35 +166,33 @@ public class SysScalePublishServiceImpl implements ISysScalePublishService {
return baseMapper.deleteBatchIds(ids) > 0;
}
- /**
- * 统计本场次
- *
- * @param batchNo
- * @return
- */
@Override
- public StatisticVo getStatistic4All(Long batchNo, Long scale) {
- //SysScalePublishVo sysScalePublishVo = baseMapper.selectVoById(batchNo);
- StatisticVo all = baseMapper.selectSingleAllAvaluation(batchNo);
- int total = all.getValue();
- StatisticVo already = baseMapper.selectSingleAlreadyAvaluation(batchNo, scale);
- int alreadyValue = already.getValue();
- all.setSpareValue(total - alreadyValue);
- return all;
+ public List getEvaluationList(Long batchNo, Long scaleId) {
+ SysScalePublishVo scalePublishVo = baseMapper.selectVoById(batchNo);
+ Long deptId = scalePublishVo.getDeptId();
+ //为父级
+ List evaluationVos;
+ if (isParent(deptId)) {
+ evaluationVos = baseMapper.selectEvaluationVoList4Parent(batchNo, scaleId);
+ } else {
+ evaluationVos = baseMapper.selectEvaluationVoList(batchNo, scaleId);
+ }
+ SysScaleVo sysScaleVo = scaleMapper.selectVoById(scaleId);
+ evaluationVos.forEach(e -> {
+ e.setScaleId(scaleId);
+ e.setScaleName(sysScaleVo.getScaleName());
+ e.setUsed(e.getRecordId() != null);
+ });
+ return evaluationVos;
}
- @Override
- public List getStatistic4Class(Long batchNo, Long scale) {
- List all = baseMapper.selectAllAvaluation(batchNo);
- Map collect = all.stream().collect(Collectors.groupingBy(StatisticVo::getName,
- Collectors.collectingAndThen(Collectors.mapping(StatisticVo::getValue, Collectors.toList()),
- values -> values.get(0))));
- List alreadyList = baseMapper.selectAlreadyAvaluation(batchNo, scale);
- alreadyList.forEach(a -> {
- String name = a.getName();
- int total = collect.get(name);
- a.setSpareValue(total - a.getValue());
- });
- return alreadyList;
+ private boolean isParent(Long deptId) {
+ SysDeptVo dept = deptMapper.selectDeptById(deptId);
+ List split = StrUtil.split(dept.getAncestors(), StringUtils.SEPARATOR);
+ if (split.size() <= 2) {
+ return true;
+ } else {
+ return false;
+ }
}
}
diff --git a/ruoyi-modules/rouyi-scale/src/main/resources/mapper/scale/SysScalePublishMapper.xml b/ruoyi-modules/rouyi-scale/src/main/resources/mapper/scale/SysScalePublishMapper.xml
index c08923f..89b3e31 100644
--- a/ruoyi-modules/rouyi-scale/src/main/resources/mapper/scale/SysScalePublishMapper.xml
+++ b/ruoyi-modules/rouyi-scale/src/main/resources/mapper/scale/SysScalePublishMapper.xml
@@ -3,41 +3,99 @@
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-