diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/SysScaleFactorRangeController.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/SysScaleFactorRangeController.java index 1586d46..8cd3d09 100644 --- a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/SysScaleFactorRangeController.java +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/SysScaleFactorRangeController.java @@ -2,14 +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; import org.dromara.common.log.enums.BusinessType; import org.dromara.common.web.core.BaseController; @@ -35,14 +31,6 @@ public class SysScaleFactorRangeController extends BaseController { private final ISysScaleFactorRangeService sysScaleFactorRangeService; - /** - * 查询因子分段列表 - */ -// @SaCheckPermission("scale:scaleFactorRange:pageList") -// @GetMapping("/pageList") -// public TableDataInfo list(SysScaleFactorRangeBo bo, PageQuery pageQuery) { -// return sysScaleFactorRangeService.queryPageList(bo, pageQuery); -// } /** * 导出因子分段列表 @@ -67,38 +55,6 @@ public class SysScaleFactorRangeController extends BaseController { return R.ok(sysScaleFactorRangeService.queryById(rangeId)); } - /** - * 新增因子分段 - */ - @SaCheckPermission("scale:scaleFactorRange:add") - @Log(title = "因子分段", businessType = BusinessType.INSERT) - @RepeatSubmit() - @PostMapping() - public R add(@Validated(AddGroup.class) @RequestBody SysScaleFactorRangeBo bo) { - return toAjax(sysScaleFactorRangeService.insertByBo(bo)); - } - /** - * 修改因子分段 - */ - @SaCheckPermission("scale:scaleFactorRange:edit") - @Log(title = "因子分段", businessType = BusinessType.UPDATE) - @RepeatSubmit() - @PutMapping() - public R edit(@Validated(EditGroup.class) @RequestBody SysScaleFactorRangeBo bo) { - return toAjax(sysScaleFactorRangeService.updateByBo(bo)); - } - /** - * 删除因子分段 - * - * @param rangeIds 主键串 - */ - @SaCheckPermission("scale:scaleFactorRange:remove") - @Log(title = "因子分段", businessType = BusinessType.DELETE) - @DeleteMapping("/{rangeIds}") - public R remove(@NotEmpty(message = "主键不能为空") - @PathVariable Long[] rangeIds) { - return toAjax(sysScaleFactorRangeService.deleteWithValidByIds(List.of(rangeIds), true)); - } } diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/SysScaleFormulaController.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/SysScaleFormulaController.java deleted file mode 100644 index d7cde63..0000000 --- a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/SysScaleFormulaController.java +++ /dev/null @@ -1,106 +0,0 @@ -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; -import org.dromara.common.log.enums.BusinessType; -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.SysScaleFormulaBo; -import org.dromara.scale.domain.vo.SysScaleFormulaVo; -import org.dromara.scale.service.ISysScaleFormulaService; -import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.*; - -import java.util.List; - -/** - * 测评量公式 - * - * @author jiangzhe - * @date 2024-03-29 - */ -@Validated -@RequiredArgsConstructor -@RestController -@RequestMapping("/scale/formula") -public class SysScaleFormulaController extends BaseController { - - private final ISysScaleFormulaService sysScaleFormulaService; - - /** - * 查询测评量公式列表 - */ - @SaCheckPermission("scale:formula:pageList") - @GetMapping("/pageList") - public TableDataInfo list(SysScaleFormulaBo bo, PageQuery pageQuery) { - return sysScaleFormulaService.queryPageList(bo, pageQuery); - } - - /** - * 导出测评量公式列表 - */ - @SaCheckPermission("scale:formula:export") - @Log(title = "测评量公式", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(SysScaleFormulaBo bo, HttpServletResponse response) { - List list = sysScaleFormulaService.queryList(bo); - ExcelUtil.exportExcel(list, "测评量公式", SysScaleFormulaVo.class, response); - } - - /** - * 获取测评量公式详细信息 - * - * @param formulaId 主键 - */ - @SaCheckPermission("scale:formula:query") - @GetMapping("/{formulaId}") - public R getInfo(@NotNull(message = "主键不能为空") - @PathVariable Long formulaId) { - return R.ok(sysScaleFormulaService.queryById(formulaId)); - } - - /** - * 新增测评量公式 - */ - @SaCheckPermission("scale:formula:add") - @Log(title = "测评量公式", businessType = BusinessType.INSERT) - @RepeatSubmit() - @PostMapping() - public R add(@Validated(AddGroup.class) @RequestBody SysScaleFormulaBo bo) { - return toAjax(sysScaleFormulaService.insertByBo(bo)); - } - - /** - * 修改测评量公式 - */ - @SaCheckPermission("scale:formula:edit") - @Log(title = "测评量公式", businessType = BusinessType.UPDATE) - @RepeatSubmit() - @PutMapping() - public R edit(@Validated(EditGroup.class) @RequestBody SysScaleFormulaBo bo) { - return toAjax(sysScaleFormulaService.updateByBo(bo)); - } - - /** - * 删除测评量公式 - * - * @param formulaIds 主键串 - */ - @SaCheckPermission("scale:formula:remove") - @Log(title = "测评量公式", businessType = BusinessType.DELETE) - @DeleteMapping("/{formulaIds}") - public R remove(@NotEmpty(message = "主键不能为空") - @PathVariable Long[] formulaIds) { - return toAjax(sysScaleFormulaService.deleteWithValidByIds(List.of(formulaIds), true)); - } -} diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/SysScaleFormula.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/SysScaleFormula.java deleted file mode 100644 index 20b4972..0000000 --- a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/SysScaleFormula.java +++ /dev/null @@ -1,47 +0,0 @@ -package org.dromara.scale.domain; - -import org.dromara.common.mybatis.core.domain.BaseEntity; -import com.baomidou.mybatisplus.annotation.*; -import lombok.Data; -import lombok.EqualsAndHashCode; -import java.math.BigDecimal; - -import java.io.Serial; - -/** - * 测评量公式对象 sys_scale_formula - * - * @author jiangzhe - * @date 2024-03-29 - */ -@Data -@EqualsAndHashCode(callSuper = true) -@TableName("sys_scale_formula") -public class SysScaleFormula extends BaseEntity { - - @Serial - private static final long serialVersionUID = 1L; - - /** - * 公式id - */ - @TableId(value = "formula_id") - private Long formulaId; - - /** - * 公式名称 - */ - private String formulaName; - - /** - * 公式常量 - */ - private BigDecimal formulaConstant; - - /** - * 公式系数 - */ - private BigDecimal formulaCoefficient; - - -} diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/SysScalePublish.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/SysScalePublish.java index eb4b6e3..cc51671 100644 --- a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/SysScalePublish.java +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/SysScalePublish.java @@ -52,12 +52,8 @@ public class SysScalePublish { /** * 部门分组id */ - private Long deptId; - - /** - * 应参评人数 - */ - private Long partNum; + @AutoMapping(target = "deptIds", expression = "java(cn.hutool.core.util.StrUtil.split(source.getDeptIds(), \",\"))") + private String deptIds; /** * 截止日期 diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/bo/SysScaleFormulaBo.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/bo/SysScaleFormulaBo.java deleted file mode 100644 index b5a7d9b..0000000 --- a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/bo/SysScaleFormulaBo.java +++ /dev/null @@ -1,49 +0,0 @@ -package org.dromara.scale.domain.bo; - -import org.dromara.scale.domain.SysScaleFormula; -import org.dromara.common.mybatis.core.domain.BaseEntity; -import org.dromara.common.core.validate.AddGroup; -import org.dromara.common.core.validate.EditGroup; -import io.github.linpeilie.annotations.AutoMapper; -import lombok.Data; -import lombok.EqualsAndHashCode; -import jakarta.validation.constraints.*; -import java.math.BigDecimal; - -/** - * 测评量公式业务对象 sys_scale_formula - * - * @author jiangzhe - * @date 2024-03-29 - */ -@Data -@EqualsAndHashCode(callSuper = true) -@AutoMapper(target = SysScaleFormula.class, reverseConvertGenerate = false) -public class SysScaleFormulaBo extends BaseEntity { - - /** - * 公式id - */ - @NotNull(message = "公式id不能为空", groups = { EditGroup.class }) - private Long formulaId; - - /** - * 公式名称 - */ - @NotBlank(message = "公式名称不能为空", groups = { AddGroup.class, EditGroup.class }) - private String formulaName; - - /** - * 公式常量 - */ - @NotNull(message = "公式常量不能为空", groups = { AddGroup.class, EditGroup.class }) - private BigDecimal formulaConstant; - - /** - * 公式系数 - */ - @NotNull(message = "公式系数不能为空", groups = { AddGroup.class, EditGroup.class }) - private BigDecimal formulaCoefficient; - - -} diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/bo/SysScalePublishBo.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/bo/SysScalePublishBo.java index b4916ba..49dba62 100644 --- a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/bo/SysScalePublishBo.java +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/bo/SysScalePublishBo.java @@ -48,17 +48,9 @@ public class SysScalePublishBo { @NotBlank(message = "场次名称不能为空", groups = { AddGroup.class, EditGroup.class }) private String sessionName; - /** - * 部门分组id - */ - @NotNull(message = "年级分组id不能为空", groups = { AddGroup.class, EditGroup.class }) - private Long deptId; - - /** - * 应参评人数 - */ -// @NotNull(message = "应参评人数不能为空", groups = { AddGroup.class, EditGroup.class }) - private Long partNum; + @NotEmpty(message = "分组id,以逗号隔开不能为空", groups = { AddGroup.class, EditGroup.class }) + @AutoMapping(target = "deptIds", expression = "java(java.lang.String.join(\",\", source.getDeptIds()))") + private List deptIds; /** * 截止日期 diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/StatisticNumVo.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/StatisticNumVo.java index 66c7fba..629df6b 100644 --- a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/StatisticNumVo.java +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/StatisticNumVo.java @@ -1,5 +1,6 @@ package org.dromara.scale.domain.vo; +import com.fasterxml.jackson.annotation.JsonIgnore; import lombok.Data; import java.io.Serial; @@ -23,5 +24,13 @@ public class StatisticNumVo implements Serializable { private int value; private int spareValue; + @JsonIgnore + private Long deptId; + @JsonIgnore + private String deptName; + @JsonIgnore + private Long parentId; + @JsonIgnore + private String parentName; } 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 index bfe61f4..3f8fcb1 100644 --- 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 @@ -1,5 +1,6 @@ package org.dromara.scale.domain.vo; +import com.fasterxml.jackson.annotation.JsonIgnore; import lombok.Data; import java.io.Serial; @@ -18,11 +19,19 @@ public class StatisticWarnVo implements Serializable { @Serial private static final long serialVersionUID = 1L; - private String deptName; - + private String name; private Integer noneNum; private Integer lowNum; private Integer middleNum; private Integer highNum; private Integer majorNum; + + @JsonIgnore + private Long deptId; + @JsonIgnore + private String deptName; + @JsonIgnore + private Long parentId; + @JsonIgnore + private String parentName; } diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/SysScaleFormulaVo.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/SysScaleFormulaVo.java deleted file mode 100644 index 72e75c4..0000000 --- a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/SysScaleFormulaVo.java +++ /dev/null @@ -1,57 +0,0 @@ -package org.dromara.scale.domain.vo; - -import java.math.BigDecimal; -import org.dromara.scale.domain.SysScaleFormula; -import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; -import com.alibaba.excel.annotation.ExcelProperty; -import org.dromara.common.excel.annotation.ExcelDictFormat; -import org.dromara.common.excel.convert.ExcelDictConvert; -import io.github.linpeilie.annotations.AutoMapper; -import lombok.Data; - -import java.io.Serial; -import java.io.Serializable; -import java.util.Date; - - - -/** - * 测评量公式视图对象 sys_scale_formula - * - * @author jiangzhe - * @date 2024-03-29 - */ -@Data -@ExcelIgnoreUnannotated -@AutoMapper(target = SysScaleFormula.class) -public class SysScaleFormulaVo implements Serializable { - - @Serial - private static final long serialVersionUID = 1L; - - /** - * 公式id - */ - @ExcelProperty(value = "公式id") - private Long formulaId; - - /** - * 公式名称 - */ - @ExcelProperty(value = "公式名称") - private String formulaName; - - /** - * 公式常量 - */ - @ExcelProperty(value = "公式常量") - private BigDecimal formulaConstant; - - /** - * 公式系数 - */ - @ExcelProperty(value = "公式系数") - private BigDecimal formulaCoefficient; - - -} diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/SysScalePublishVo.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/SysScalePublishVo.java index 59c6764..df99eb4 100644 --- a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/SysScalePublishVo.java +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/SysScalePublishVo.java @@ -48,16 +48,10 @@ public class SysScalePublishVo implements Serializable { private String sessionName; /** - * 部门分组id + * 分组id,以逗号隔开 */ @ExcelProperty(value = "部门分组id") - private Long deptId; - - /** - * 应参评人数 - */ - @ExcelProperty(value = "应参评人数") - private Long partNum; + private List deptIds; /** * 截止日期 diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/mapper/SysScaleFormulaMapper.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/mapper/SysScaleFormulaMapper.java deleted file mode 100644 index 188264d..0000000 --- a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/mapper/SysScaleFormulaMapper.java +++ /dev/null @@ -1,17 +0,0 @@ -package org.dromara.scale.mapper; - -import org.apache.ibatis.annotations.Mapper; -import org.dromara.scale.domain.SysScaleFormula; -import org.dromara.scale.domain.vo.SysScaleFormulaVo; -import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; - -/** - * 测评量公式Mapper接口 - * - * @author jiangzhe - * @date 2024-03-29 - */ -@Mapper -public interface SysScaleFormulaMapper extends BaseMapperPlus { - -} 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 8e359ac..0dbe669 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 @@ -20,6 +20,8 @@ public interface SysScalePublishMapper extends BaseMapperPlus selectEvaluationVoList(@Param("batchNo") Long batchNo, @Param("scaleId") Long scaleId, @Param("deptId") Long deptId); - String selectDeptNameByBatchNo(Long batchNo); + List selectDeptIdsInUse(); + + SysScalePublishVo selectUsePublishVoByDeptId(Long deptId); } diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/ISysEvaluationRecordService.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/ISysEvaluationRecordService.java index dbfde4c..ced23ff 100644 --- a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/ISysEvaluationRecordService.java +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/ISysEvaluationRecordService.java @@ -2,8 +2,8 @@ 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.SysScalePublish; import org.dromara.scale.domain.bo.SysEvaluationRecordBo; -import org.dromara.scale.domain.bo.SysScalePublishBo; import org.dromara.scale.domain.vo.SysEvaluationRecordVo; import java.util.List; @@ -32,7 +32,7 @@ public interface ISysEvaluationRecordService { List queryList(SysEvaluationRecordBo bo); - void insertBathByPublish(SysScalePublishBo bo); + void insertBathByPublish(SysScalePublish add); diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/ISysScaleFactorRangeService.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/ISysScaleFactorRangeService.java index 0cd6001..3c01158 100644 --- a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/ISysScaleFactorRangeService.java +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/ISysScaleFactorRangeService.java @@ -1,12 +1,8 @@ package org.dromara.scale.service; -import org.dromara.scale.domain.SysScaleFactorRange; -import org.dromara.scale.domain.vo.SysScaleFactorRangeVo; import org.dromara.scale.domain.bo.SysScaleFactorRangeBo; -import org.dromara.common.mybatis.core.page.TableDataInfo; -import org.dromara.common.mybatis.core.page.PageQuery; +import org.dromara.scale.domain.vo.SysScaleFactorRangeVo; -import java.util.Collection; import java.util.List; /** @@ -22,28 +18,10 @@ public interface ISysScaleFactorRangeService { */ SysScaleFactorRangeVo queryById(Long rangeId); - /** - * 查询因子分段列表 - */ - TableDataInfo queryPageList(SysScaleFactorRangeBo bo, PageQuery pageQuery); /** * 查询因子分段列表 */ List queryList(SysScaleFactorRangeBo bo); - /** - * 新增因子分段 - */ - Boolean insertByBo(SysScaleFactorRangeBo bo); - - /** - * 修改因子分段 - */ - Boolean updateByBo(SysScaleFactorRangeBo bo); - - /** - * 校验并批量删除因子分段信息 - */ - Boolean deleteWithValidByIds(Collection ids, Boolean isValid); } diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/ISysScaleFormulaService.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/ISysScaleFormulaService.java deleted file mode 100644 index e0f61ad..0000000 --- a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/ISysScaleFormulaService.java +++ /dev/null @@ -1,49 +0,0 @@ -package org.dromara.scale.service; - -import org.dromara.scale.domain.SysScaleFormula; -import org.dromara.scale.domain.vo.SysScaleFormulaVo; -import org.dromara.scale.domain.bo.SysScaleFormulaBo; -import org.dromara.common.mybatis.core.page.TableDataInfo; -import org.dromara.common.mybatis.core.page.PageQuery; - -import java.util.Collection; -import java.util.List; - -/** - * 测评量公式Service接口 - * - * @author jiangzhe - * @date 2024-03-29 - */ -public interface ISysScaleFormulaService { - - /** - * 查询测评量公式 - */ - SysScaleFormulaVo queryById(Long formulaId); - - /** - * 查询测评量公式列表 - */ - TableDataInfo queryPageList(SysScaleFormulaBo bo, PageQuery pageQuery); - - /** - * 查询测评量公式列表 - */ - List queryList(SysScaleFormulaBo bo); - - /** - * 新增测评量公式 - */ - Boolean insertByBo(SysScaleFormulaBo bo); - - /** - * 修改测评量公式 - */ - Boolean updateByBo(SysScaleFormulaBo bo); - - /** - * 校验并批量删除测评量公式信息 - */ - Boolean deleteWithValidByIds(Collection ids, Boolean isValid); -} 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/StatisticServiceImpl.java similarity index 88% rename from ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/StatisticService.java rename to ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/StatisticServiceImpl.java index acac05b..5666572 100644 --- 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/StatisticServiceImpl.java @@ -5,7 +5,6 @@ import org.dromara.scale.domain.bo.BaseQueryBo; import org.dromara.scale.domain.vo.StatisticNumVo; import org.dromara.scale.domain.vo.StatisticWarnVo; import org.dromara.scale.mapper.StatisticMapper; -import org.dromara.scale.mapper.SysScalePublishMapper; import org.dromara.scale.service.IStatisticService; import org.springframework.stereotype.Service; @@ -21,13 +20,10 @@ import java.util.List; @RequiredArgsConstructor @Service -public class StatisticService implements IStatisticService { +public class StatisticServiceImpl implements IStatisticService { private final StatisticMapper statisticMapper; - private final SysScalePublishMapper publishMapper; - - @Override public StatisticNumVo getComplete4All(BaseQueryBo query) { Long batchNo = query.getBatchNo(); @@ -35,9 +31,9 @@ public class StatisticService implements IStatisticService { List list = statisticMapper.selectCompleteAvaluation(batchNo, scaleId); int complete = list.stream().mapToInt(StatisticNumVo::getValue).sum(); int uncompleted = list.stream().mapToInt(StatisticNumVo::getSpareValue).sum(); - String deptName = publishMapper.selectDeptNameByBatchNo(batchNo); + StatisticNumVo data = new StatisticNumVo(); - data.setName(deptName); + //data.setName(deptName); data.setValue(complete); data.setSpareValue(uncompleted); return data; @@ -60,9 +56,9 @@ public class StatisticService implements IStatisticService { int middleNum = list.stream().mapToInt(StatisticWarnVo::getMiddleNum).sum(); int highNum = list.stream().mapToInt(StatisticWarnVo::getHighNum).sum(); int majorNum = list.stream().mapToInt(StatisticWarnVo::getMajorNum).sum(); - String deptName = publishMapper.selectDeptNameByBatchNo(batchNo); + StatisticWarnVo data = new StatisticWarnVo(); - data.setDeptName(deptName); + //data.setDeptName(deptName); data.setNoneNum(noneNum); data.setLowNum(lowNum); data.setMiddleNum(middleNum); diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/SysEvaluationRecordServiceImpl.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/SysEvaluationRecordServiceImpl.java index 30671ff..9f427ab 100644 --- a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/SysEvaluationRecordServiceImpl.java +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/SysEvaluationRecordServiceImpl.java @@ -4,18 +4,18 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import lombok.RequiredArgsConstructor; +import org.dromara.common.core.utils.StringUtils; import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.scale.constant.StatusEnum; import org.dromara.scale.domain.SysEvaluationRecord; +import org.dromara.scale.domain.SysScalePublish; import org.dromara.scale.domain.bo.SysEvaluationRecordBo; -import org.dromara.scale.domain.bo.SysScalePublishBo; import org.dromara.scale.domain.vo.SysEvaluationRecordVo; import org.dromara.scale.mapper.SysEvaluationRecordMapper; import org.dromara.scale.service.ISysEvaluationRecordService; import org.dromara.system.domain.SysUser; import org.dromara.system.mapper.SysUserMapper; -import org.dromara.system.service.ISysDeptService; import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; @@ -34,8 +34,6 @@ public class SysEvaluationRecordServiceImpl implements ISysEvaluationRecordServi private final SysEvaluationRecordMapper baseMapper; - private final ISysDeptService deptService; - private final SysUserMapper userMapper; /** @@ -76,15 +74,15 @@ public class SysEvaluationRecordServiceImpl implements ISysEvaluationRecordServi @Async @Override - public void insertBathByPublish(SysScalePublishBo bo) { - Long deptId = bo.getDeptId(); - Long batchNo = bo.getBatchNo(); - List scaleIds = bo.getScaleIds(); - //判断人数 - boolean parent = deptService.isParent(deptId); - List sysUsers = userMapper.selectStudentListByDeptId(deptId, parent); + public void insertBathByPublish(SysScalePublish add) { + String deptIds = add.getDeptIds(); + Long batchNo = add.getBatchNo(); + String scaleIds = add.getScaleIds(); + List scaleList = StringUtils.splitList(scaleIds); + List sysUsers = userMapper.selectStudentListByDeptIds(deptIds); + List recordList = new ArrayList<>(); - for (String scaleId : scaleIds) { + for (String scaleId : scaleList) { for (SysUser user : sysUsers) { SysEvaluationRecord record = new SysEvaluationRecord(); record.setUserId(user.getUserId()); diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/SysScaleFactorRangeServiceImpl.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/SysScaleFactorRangeServiceImpl.java index a505b82..666ff3d 100644 --- a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/SysScaleFactorRangeServiceImpl.java +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/SysScaleFactorRangeServiceImpl.java @@ -1,23 +1,18 @@ package org.dromara.scale.service.impl; -import org.dromara.common.core.utils.MapstructUtils; -import org.dromara.common.core.utils.StringUtils; -import org.dromara.common.mybatis.core.page.TableDataInfo; -import org.dromara.common.mybatis.core.page.PageQuery; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import lombok.RequiredArgsConstructor; -import org.springframework.stereotype.Service; +import org.dromara.common.core.utils.StringUtils; +import org.dromara.scale.domain.SysScaleFactorRange; import org.dromara.scale.domain.bo.SysScaleFactorRangeBo; import org.dromara.scale.domain.vo.SysScaleFactorRangeVo; -import org.dromara.scale.domain.SysScaleFactorRange; import org.dromara.scale.mapper.SysScaleFactorRangeMapper; import org.dromara.scale.service.ISysScaleFactorRangeService; +import org.springframework.stereotype.Service; import java.util.List; import java.util.Map; -import java.util.Collection; /** * 因子分段Service业务层处理 @@ -39,15 +34,6 @@ public class SysScaleFactorRangeServiceImpl implements ISysScaleFactorRangeServi return baseMapper.selectVoById(rangeId); } - /** - * 查询因子分段列表 - */ - @Override - public TableDataInfo queryPageList(SysScaleFactorRangeBo bo, PageQuery pageQuery) { - LambdaQueryWrapper lqw = buildQueryWrapper(bo); - Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); - return TableDataInfo.build(result); - } /** * 查询因子分段列表 @@ -71,45 +57,8 @@ public class SysScaleFactorRangeServiceImpl implements ISysScaleFactorRangeServi return lqw; } - /** - * 新增因子分段 - */ - @Override - public Boolean insertByBo(SysScaleFactorRangeBo bo) { - SysScaleFactorRange add = MapstructUtils.convert(bo, SysScaleFactorRange.class); - validEntityBeforeSave(add); - boolean flag = baseMapper.insert(add) > 0; - if (flag) { - bo.setRangeId(add.getRangeId()); - } - return flag; - } - /** - * 修改因子分段 - */ - @Override - public Boolean updateByBo(SysScaleFactorRangeBo bo) { - SysScaleFactorRange update = MapstructUtils.convert(bo, SysScaleFactorRange.class); - validEntityBeforeSave(update); - return baseMapper.updateById(update) > 0; - } - /** - * 保存前的数据校验 - */ - private void validEntityBeforeSave(SysScaleFactorRange entity){ - //TODO 做一些数据校验,如唯一约束 - } - /** - * 批量删除因子分段 - */ - @Override - public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { - if(isValid){ - //TODO 做一些业务上的校验,判断是否需要校验 - } - return baseMapper.deleteBatchIds(ids) > 0; - } + } diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/SysScaleFormulaServiceImpl.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/SysScaleFormulaServiceImpl.java deleted file mode 100644 index 757636a..0000000 --- a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/SysScaleFormulaServiceImpl.java +++ /dev/null @@ -1,111 +0,0 @@ -package org.dromara.scale.service.impl; - -import org.dromara.common.core.utils.MapstructUtils; -import org.dromara.common.core.utils.StringUtils; -import org.dromara.common.mybatis.core.page.TableDataInfo; -import org.dromara.common.mybatis.core.page.PageQuery; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.toolkit.Wrappers; -import lombok.RequiredArgsConstructor; -import org.springframework.stereotype.Service; -import org.dromara.scale.domain.bo.SysScaleFormulaBo; -import org.dromara.scale.domain.vo.SysScaleFormulaVo; -import org.dromara.scale.domain.SysScaleFormula; -import org.dromara.scale.mapper.SysScaleFormulaMapper; -import org.dromara.scale.service.ISysScaleFormulaService; - -import java.util.List; -import java.util.Map; -import java.util.Collection; - -/** - * 测评量公式Service业务层处理 - * - * @author jiangzhe - * @date 2024-03-29 - */ -@RequiredArgsConstructor -@Service -public class SysScaleFormulaServiceImpl implements ISysScaleFormulaService { - - private final SysScaleFormulaMapper baseMapper; - - /** - * 查询测评量公式 - */ - @Override - public SysScaleFormulaVo queryById(Long formulaId){ - return baseMapper.selectVoById(formulaId); - } - - /** - * 查询测评量公式列表 - */ - @Override - public TableDataInfo queryPageList(SysScaleFormulaBo bo, PageQuery pageQuery) { - LambdaQueryWrapper lqw = buildQueryWrapper(bo); - Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); - return TableDataInfo.build(result); - } - - /** - * 查询测评量公式列表 - */ - @Override - public List queryList(SysScaleFormulaBo bo) { - LambdaQueryWrapper lqw = buildQueryWrapper(bo); - return baseMapper.selectVoList(lqw); - } - - private LambdaQueryWrapper buildQueryWrapper(SysScaleFormulaBo bo) { - Map params = bo.getParams(); - LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); - lqw.like(StringUtils.isNotBlank(bo.getFormulaName()), SysScaleFormula::getFormulaName, bo.getFormulaName()); - lqw.eq(bo.getFormulaConstant() != null, SysScaleFormula::getFormulaConstant, bo.getFormulaConstant()); - lqw.eq(bo.getFormulaCoefficient() != null, SysScaleFormula::getFormulaCoefficient, bo.getFormulaCoefficient()); - return lqw; - } - - /** - * 新增测评量公式 - */ - @Override - public Boolean insertByBo(SysScaleFormulaBo bo) { - SysScaleFormula add = MapstructUtils.convert(bo, SysScaleFormula.class); - validEntityBeforeSave(add); - boolean flag = baseMapper.insert(add) > 0; - if (flag) { - bo.setFormulaId(add.getFormulaId()); - } - return flag; - } - - /** - * 修改测评量公式 - */ - @Override - public Boolean updateByBo(SysScaleFormulaBo bo) { - SysScaleFormula update = MapstructUtils.convert(bo, SysScaleFormula.class); - validEntityBeforeSave(update); - return baseMapper.updateById(update) > 0; - } - - /** - * 保存前的数据校验 - */ - private void validEntityBeforeSave(SysScaleFormula entity){ - //TODO 做一些数据校验,如唯一约束 - } - - /** - * 批量删除测评量公式 - */ - @Override - public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { - if(isValid){ - //TODO 做一些业务上的校验,判断是否需要校验 - } - return baseMapper.deleteBatchIds(ids) > 0; - } -} 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 34cf0f9..65c557e 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 @@ -15,7 +15,6 @@ import org.dromara.common.core.utils.StringUtils; import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; 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.BaseQueryBo; import org.dromara.scale.domain.bo.SysScalePublishBo; @@ -26,7 +25,6 @@ import org.dromara.scale.mapper.SysScaleMapper; import org.dromara.scale.mapper.SysScalePublishMapper; import org.dromara.scale.service.ISysEvaluationRecordService; import org.dromara.scale.service.ISysScalePublishService; -import org.dromara.system.service.ISysDeptService; import org.springframework.stereotype.Service; import java.util.Collection; @@ -51,8 +49,6 @@ public class SysScalePublishServiceImpl implements ISysScalePublishService { private final SysScaleMapper scaleMapper; - private final ISysDeptService deptService; - private final ISysEvaluationRecordService evaluationRecordService; /** @@ -88,8 +84,6 @@ public class SysScalePublishServiceImpl implements ISysScalePublishService { // lqw.eq(StringUtils.isNotBlank(bo.getScaleIds()), SysScalePublish::getScaleIds, bo.getScaleIds()); // lqw.eq(StringUtils.isNotBlank(bo.getScaleNames()), SysScalePublish::getScaleNames, bo.getScaleNames()); lqw.like(StringUtils.isNotBlank(bo.getSessionName()), SysScalePublish::getSessionName, bo.getSessionName()); - lqw.eq(bo.getDeptId() != null, SysScalePublish::getDeptId, bo.getDeptId()); - lqw.eq(bo.getPartNum() != null, SysScalePublish::getPartNum, bo.getPartNum()); lqw.eq(bo.getExpireTime() != null, SysScalePublish::getExpireTime, bo.getExpireTime()); lqw.eq(bo.getStatus() != null, SysScalePublish::getStatus, bo.getStatus()); lqw.eq(bo.getAllowQueryResult() != null, SysScalePublish::getAllowQueryResult, bo.getAllowQueryResult()); @@ -132,7 +126,7 @@ public class SysScalePublishServiceImpl implements ISysScalePublishService { //加入延迟队列 QueueUtils.addDelayedQueueObject("scalePublish-delay-queue", add.getBatchNo(), l, TimeUnit.MILLISECONDS); //预处理量测记录,方便后续统计与查询 - evaluationRecordService.insertBathByPublish(bo); + evaluationRecordService.insertBathByPublish(add); return flag; } @@ -151,12 +145,16 @@ public class SysScalePublishServiceImpl implements ISysScalePublishService { */ private void validEntityBeforeSave(SysScalePublish entity) { //TODO 做一些数据校验,如唯一约束 - Long deptId = entity.getDeptId(); - List sysScalePublishVos = baseMapper.selectVoList(new LambdaQueryWrapper() - .eq(SysScalePublish::getDeptId, deptId) - .eq(SysScalePublish::getStatus, StatusEnum.IN_USE.getValue())); - if (!ObjectUtil.isEmpty(sysScalePublishVos)) { - throw new ServiceException("此年级下已有发布"); + String deptIds = entity.getDeptIds(); + List deptIdList = StringUtils.splitList(deptIds); + List publishDeptIdList = baseMapper.selectDeptIdsInUse(); + if (ObjectUtil.isNotEmpty(publishDeptIdList)) { + for (String publishDeptIds : publishDeptIdList) { + List useList = StringUtils.splitList(publishDeptIds); + if (useList.stream().anyMatch(deptIdList::contains)) { + throw new ServiceException("所选年级下已有发布"); + } + } } } diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/WebServiceImpl.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/WebServiceImpl.java index f409278..f9de454 100644 --- a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/WebServiceImpl.java +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/WebServiceImpl.java @@ -3,8 +3,6 @@ package org.dromara.scale.service.impl; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.toolkit.Wrappers; import lombok.RequiredArgsConstructor; import org.dromara.common.core.domain.model.LoginUser; import org.dromara.common.core.enums.UserType; @@ -24,7 +22,6 @@ import org.dromara.scale.service.ISysScaleFactorService; import org.dromara.scale.service.ISysWarnRecordService; import org.dromara.scale.service.IWebService; import org.dromara.system.domain.SysOss; -import org.dromara.system.domain.vo.SysDeptVo; import org.dromara.system.mapper.SysDeptMapper; import org.dromara.system.mapper.SysOssMapper; import org.springframework.stereotype.Service; @@ -82,32 +79,8 @@ public class WebServiceImpl implements IWebService { if (!UserType.STUDENT.getName().equals(userType)) { throw new ServiceException("只有学生账户才能测评"); } - SysScalePublishVo sysScalePublishVo = null; - if (deptId != null) { - //先查询直接用户组的发布 - LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); - lqw.eq(SysScalePublish::getDeptId, deptId); - lqw.eq(SysScalePublish::getStatus, StatusEnum.IN_USE.getValue()); - sysScalePublishVo = publishMapper.selectVoOne(lqw); - //没有则查询上级用户组的发布 - if (sysScalePublishVo == null) { - SysDeptVo sysDept = deptMapper.selectDeptById(deptId); - LambdaQueryWrapper parentLqw = Wrappers.lambdaQuery(); - parentLqw.eq(SysScalePublish::getDeptId, sysDept.getParentId()); - parentLqw.eq(SysScalePublish::getStatus, StatusEnum.IN_USE.getValue()); - sysScalePublishVo = publishMapper.selectVoOne(lqw); - } - } - //都没有则查针对全部的发布 暂时不考虑 -// if (sysScalePublishVo == null) { -// LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); -// lqw.eq(SysScalePublish::getDeptId, null); -// lqw.eq(SysScalePublish::getStatus, StatusEnum.IN_USE.getValue()); -// sysScalePublishVo = publishMapper.selectVoOne(lqw); -// } - if (sysScalePublishVo == null) { - return new SysScalePublishVo(); - } + SysScalePublishVo sysScalePublishVo = publishMapper.selectUsePublishVoByDeptId(deptId); + Long batchNo = sysScalePublishVo.getBatchNo(); List scaleIds = sysScalePublishVo.getScaleIds(); //todo @@ -140,7 +113,6 @@ public class WebServiceImpl implements IWebService { if (!UserType.STUDENT.getName().equals(userType)) { throw new ServiceException("只有学生账户才能测评"); } - //LoginUser loginUser = getLoginUser(); SysEvaluationRecord evaluationRecord = recordMapper.selectById(recordId); if (evaluationRecord == null) { throw new ServiceException("未查询到需要测试的记录,请联系管理员"); @@ -148,6 +120,7 @@ public class WebServiceImpl implements IWebService { if (evaluationRecord.getStatus() == 1) { throw new ServiceException("此量表已经答题完毕,请勿重复提交"); } + SysEvaluationRecord update = new SysEvaluationRecord(); update.setRecordId(recordId); update.setCreateTime(new Date()); @@ -163,20 +136,9 @@ public class WebServiceImpl implements IWebService { if (!UserType.STUDENT.getName().equals(userType)) { throw new ServiceException("只有学生账户才能测评"); } - boolean allowQueryResult = true; - Long scaleId = bo.getScaleId(); - Map> answerMapByQuestion = scaleAnswerService.getScaleAnswerMap(scaleId); - int keySize = answerMapByQuestion.keySet().size(); - List answerList = bo.getAnswerList(); - if (ObjectUtil.isEmpty(answerList)) { - throw new ServiceException("请先填写答案,再提交"); - } - int answerSize = answerList.size(); - if (keySize != answerSize) { - throw new ServiceException("有题目未作选择,请检查后提交"); - } - Long recordId = answerList.get(0).getRecordId(); + List answerList = bo.getAnswerList(); + Long recordId = answerList.get(0).getRecordId(); SysEvaluationRecord sysEvaluationRecord = recordMapper.selectById(recordId); if (ObjectUtil.isEmpty(sysEvaluationRecord)) { throw new ServiceException("未能查到测量记录,请确认后再提交"); @@ -184,6 +146,19 @@ public class WebServiceImpl implements IWebService { if (sysEvaluationRecord.getStatus() == 0) { throw new ServiceException("此量表暂未开始作答,请确认后再提交"); } + + boolean allowQueryResult = true; + Long scaleId = bo.getScaleId(); + Map> answerMapByQuestion = scaleAnswerService.getScaleAnswerMap(scaleId); + int keySize = answerMapByQuestion.keySet().size(); + if (ObjectUtil.isEmpty(answerList)) { + throw new ServiceException("请先填写答案,再提交"); + } + int answerSize = answerList.size(); + if (keySize != answerSize) { + throw new ServiceException("有题目未作选择,请检查后提交"); + } + SysScalePublishVo scalePublishVo = recordMapper.selectPublishByUseRecord(recordId); //查询考核结果 if (scalePublishVo.getAllowQueryResult() == 0) { @@ -191,7 +166,7 @@ public class WebServiceImpl implements IWebService { } List answerAdd = MapstructUtils.convert(answerList, SysEvaluationAnswer.class); evaluationAnswerMapper.insertBatch(answerAdd); - + //计算 List list = calculateEvaluationResult(scaleId, answerList); List conclusionAdd = MapstructUtils.convert(list, SysEvaluationConclusion.class); evaluationConclusionMapper.insertBatch(conclusionAdd); @@ -203,7 +178,6 @@ public class WebServiceImpl implements IWebService { riskLevel = ec.getSituation(); } } - //判断风险等级是否为"高风险、重大风险",若是,则形成预警记录 if (riskLevel.equals(SituationEnum.HIGH.getValue()) || riskLevel.equals(SituationEnum.MAJOR.getValue())) { SysWarnRecord wre = new SysWarnRecord(); wre.setBatchNo(scalePublishVo.getBatchNo()); diff --git a/ruoyi-modules/rouyi-scale/src/main/resources/mapper/scale/StatisticMapper.xml b/ruoyi-modules/rouyi-scale/src/main/resources/mapper/scale/StatisticMapper.xml index 20280da..51d237a 100644 --- a/ruoyi-modules/rouyi-scale/src/main/resources/mapper/scale/StatisticMapper.xml +++ b/ruoyi-modules/rouyi-scale/src/main/resources/mapper/scale/StatisticMapper.xml @@ -5,25 +5,33 @@ - + select dept_ids + from sys_scale_publish + where status = 1 + + + diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysUserMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysUserMapper.java index ced0748..9560725 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysUserMapper.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysUserMapper.java @@ -119,6 +119,6 @@ public interface SysUserMapper extends BaseMapperPlus { int updatePasswordBatchById(List list); - List selectStudentListByDeptId(@Param("deptId") Long deptId,@Param("isParent") boolean isParent); + List selectStudentListByDeptIds(String deptIds); } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysDeptService.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysDeptService.java index be639ad..cc3f6d3 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysDeptService.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysDeptService.java @@ -115,5 +115,4 @@ public interface ISysDeptService { */ int deleteDeptById(Long deptId); - boolean isParent(Long deptId); } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java index 975b166..609f9ac 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java @@ -4,10 +4,10 @@ import cn.hutool.core.collection.CollUtil; import cn.hutool.core.convert.Convert; import cn.hutool.core.lang.tree.Tree; import cn.hutool.core.util.ObjectUtil; -import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import lombok.RequiredArgsConstructor; import org.dromara.common.core.constant.CacheNames; import org.dromara.common.core.constant.UserConstants; import org.dromara.common.core.exception.ServiceException; @@ -28,7 +28,6 @@ import org.dromara.system.mapper.SysDeptMapper; import org.dromara.system.mapper.SysRoleMapper; import org.dromara.system.mapper.SysUserMapper; import org.dromara.system.service.ISysDeptService; -import lombok.RequiredArgsConstructor; import org.springframework.cache.annotation.CacheEvict; import org.springframework.cache.annotation.Cacheable; import org.springframework.stereotype.Service; @@ -326,14 +325,5 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService { return baseMapper.deleteById(deptId); } - @Override - public boolean isParent(Long deptId) { - String ancestors = baseMapper.selectAncestorsById(deptId); - List split = StrUtil.split(ancestors, StringUtils.SEPARATOR); - if (split.size() <= 2) { - return true; - } else { - return false; - } - } + } diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml index ab201ca..343a380 100644 --- a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml +++ b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml @@ -183,24 +183,11 @@ - select u.* from sys_dept d left join sys_user u on u.dept_id = d.dept_id - - u.user_type = 'student' - - - and d.parent_id = #{deptId} - - - and d.dept_id = #{deptId} - - - - and d.dept_id is null - - - + where u.user_type = 'student' + and find_in_set(d.dept_id, #{deptIds})