diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/ArchivesController.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/ArchiveController.java similarity index 51% rename from ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/ArchivesController.java rename to ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/ArchiveController.java index d6e2c5a..66c722f 100644 --- a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/ArchivesController.java +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/ArchiveController.java @@ -4,9 +4,9 @@ import cn.dev33.satoken.annotation.SaCheckPermission; import lombok.RequiredArgsConstructor; import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; -import org.dromara.system.domain.bo.SysUserBo; -import org.dromara.system.domain.vo.SysUserVo; -import org.dromara.system.service.ISysUserService; +import org.dromara.scale.domain.vo.ArchiveStatisticVo; +import org.dromara.scale.domain.vo.ArchiveVo; +import org.dromara.scale.service.IArchiveService; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @@ -22,16 +22,25 @@ import org.springframework.web.bind.annotation.RestController; @RequiredArgsConstructor @RestController @RequestMapping("/scale/archives") -public class ArchivesController { +public class ArchiveController { - private final ISysUserService userService; + private final IArchiveService archiveService; + /** + * 获取用户档案列表 + */ + @SaCheckPermission("scale:archives:list") + @GetMapping("/pageList") + public TableDataInfo pageList(ArchiveVo vo, PageQuery pageQuery) { + return archiveService.queryPageList(vo, pageQuery); + } /** * 获取用户列表 */ @SaCheckPermission("scale:archives:list") - @GetMapping("/pageList") - public TableDataInfo list(SysUserBo user, PageQuery pageQuery) { - return userService.selectPageUserList(user, pageQuery); + @GetMapping("/statistic/pageList") + public TableDataInfo statisticPageList(Long userId, PageQuery pageQuery) { + return archiveService.queryStatisticPageList(userId, pageQuery); } + } diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/ScalePublishController.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/ScalePublishController.java index b225e45..87d0ce9 100644 --- a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/ScalePublishController.java +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/ScalePublishController.java @@ -1,7 +1,6 @@ package org.dromara.scale.controller; import cn.dev33.satoken.annotation.SaCheckPermission; -import jakarta.validation.constraints.NotEmpty; import jakarta.validation.constraints.NotNull; import lombok.RequiredArgsConstructor; import org.dromara.common.core.domain.R; @@ -21,8 +20,6 @@ import org.dromara.scale.service.ISysScalePublishService; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; -import java.util.List; - /** * 量表发布 * @@ -102,17 +99,17 @@ public class ScalePublishController extends BaseController { return toAjax(sysScalePublishService.end(bo)); } - /** - * 删除量表发布 - * - * @param batchNos 主键串 - */ - @SaCheckPermission("scale:publish:remove") - @Log(title = "删除量表发布", businessType = BusinessType.DELETE) - @DeleteMapping("/{batchNo}") - public R remove(@NotEmpty(message = "主键不能为空") @PathVariable Long batchNos) { - return toAjax(sysScalePublishService.deleteWithValidByIds(List.of(batchNos), true)); - } +// /** +// * 删除量表发布 +// * +// * @param batchNos 主键串 +// */ +// @SaCheckPermission("scale:publish:remove") +// @Log(title = "删除量表发布", businessType = BusinessType.DELETE) +// @DeleteMapping("/{batchNo}") +// public R remove(@NotEmpty(message = "主键不能为空") @PathVariable Long batchNos) { +// return toAjax(sysScalePublishService.deleteWithValidByIds(List.of(batchNos), true)); +// } } diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/ArchiveStatisticVo.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/ArchiveStatisticVo.java new file mode 100644 index 0000000..dfa491b --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/ArchiveStatisticVo.java @@ -0,0 +1,32 @@ +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/28 14:06 + */ +@Data +public class ArchiveStatisticVo implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + private Long batchNo; + + private String sessionName; + + private Long scaleId; + + private String scaleName; + + private Integer situation; + + private String createTime; +} diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/ArchivesVo.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/ArchiveVo.java similarity index 81% rename from ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/ArchivesVo.java rename to ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/ArchiveVo.java index 54698f3..c574ee0 100644 --- a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/ArchivesVo.java +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/ArchiveVo.java @@ -1,5 +1,7 @@ package org.dromara.scale.domain.vo; +import lombok.Data; + import java.io.Serial; import java.io.Serializable; @@ -10,7 +12,8 @@ import java.io.Serializable; * @version V1.0.0 * @date 2024/4/26 15:51 */ -public class ArchivesVo implements Serializable { +@Data +public class ArchiveVo implements Serializable { @Serial private static final long serialVersionUID = 1L; @@ -42,7 +45,10 @@ public class ArchivesVo implements Serializable { */ private String phonenumber; - private String remark; + /** + * 家庭住址 + */ + private String address; } diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/mapper/ArchiveMapper.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/mapper/ArchiveMapper.java new file mode 100644 index 0000000..8ca4fcf --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/mapper/ArchiveMapper.java @@ -0,0 +1,18 @@ +package org.dromara.scale.mapper; + +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.toolkit.Constants; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.dromara.scale.domain.vo.ArchiveStatisticVo; +import org.dromara.scale.domain.vo.ArchiveVo; + +@Mapper +public interface ArchiveMapper { + Page selectArchiveVoPage(@Param("page") Page page, @Param(Constants.WRAPPER) Wrapper queryWrapper); + + Page selectStatisticVoPage(@Param("page") Page page, @Param("userId") Long userId); + + +} diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/mapper/ArchivesMapper.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/mapper/ArchivesMapper.java deleted file mode 100644 index 764d78b..0000000 --- a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/mapper/ArchivesMapper.java +++ /dev/null @@ -1,8 +0,0 @@ -package org.dromara.scale.mapper; - -import org.apache.ibatis.annotations.Mapper; - -@Mapper -public interface ArchivesMapper { - -} diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/IArchiveService.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/IArchiveService.java new file mode 100644 index 0000000..2c23402 --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/IArchiveService.java @@ -0,0 +1,12 @@ +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.vo.ArchiveStatisticVo; +import org.dromara.scale.domain.vo.ArchiveVo; + +public interface IArchiveService { + + TableDataInfo queryPageList(ArchiveVo vo, PageQuery pageQuery); + TableDataInfo queryStatisticPageList(Long usetId, PageQuery pageQuery); +} diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/IArchivesService.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/IArchivesService.java deleted file mode 100644 index 2e6db44..0000000 --- a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/IArchivesService.java +++ /dev/null @@ -1,4 +0,0 @@ -package org.dromara.scale.service; - -public interface IArchivesService { -} diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/ArchiveServiceImpl.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/ArchiveServiceImpl.java new file mode 100644 index 0000000..6aa2e37 --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/ArchiveServiceImpl.java @@ -0,0 +1,41 @@ +package org.dromara.scale.service.impl; + +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.mybatis.core.page.PageQuery; +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.scale.domain.vo.ArchiveStatisticVo; +import org.dromara.scale.domain.vo.ArchiveVo; +import org.dromara.scale.mapper.ArchiveMapper; +import org.dromara.scale.service.IArchiveService; +import org.springframework.stereotype.Service; + +/** + *

TODO

+ * + * @author cjw + * @version V1.0.0 + * @date 2024/4/26 15:46 + */ +@RequiredArgsConstructor +@Service +public class ArchiveServiceImpl implements IArchiveService { + + private final ArchiveMapper archiveMapper; + + @Override + public TableDataInfo queryPageList(ArchiveVo vo, PageQuery pageQuery) { + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.like(vo.getNickName() != null, ArchiveVo::getNickName, vo.getNickName()); + Page result = archiveMapper.selectArchiveVoPage(pageQuery.build(), lqw); + return TableDataInfo.build(result); + } + + @Override + public TableDataInfo queryStatisticPageList(Long userId, PageQuery pageQuery) { + Page result = archiveMapper.selectStatisticVoPage(pageQuery.build(), userId); + return TableDataInfo.build(result); + } +} diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/ArchivesServiceImpl.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/ArchivesServiceImpl.java deleted file mode 100644 index dc2a4e9..0000000 --- a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/ArchivesServiceImpl.java +++ /dev/null @@ -1,13 +0,0 @@ -package org.dromara.scale.service.impl; - -import org.dromara.scale.service.IArchivesService; - -/** - *

TODO

- * - * @author cjw - * @version V1.0.0 - * @date 2024/4/26 15:46 - */ -public class ArchivesServiceImpl implements IArchivesService { -} 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 30e9535..5287bc9 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 @@ -119,11 +119,10 @@ public class WebServiceImpl implements IWebService { if (evaluationRecord.getStatus() == 1) { throw new ServiceException("此量表已经答题完毕,请勿重复提交"); } - SysEvaluationRecord update = new SysEvaluationRecord(); update.setRecordId(recordId); + //以开始时间判断记录是否开始答题 update.setCreateTime(new Date()); - update.setStatus(StatusEnum.IN_USE.getValue()); return recordMapper.updateById(update) > 0; } @@ -135,17 +134,18 @@ public class WebServiceImpl implements IWebService { if (!UserType.STUDENT.getName().equals(userType)) { throw new ServiceException("只有学生账户才能测评"); } - List answerList = bo.getAnswerList(); Long recordId = answerList.get(0).getRecordId(); SysEvaluationRecord sysEvaluationRecord = recordMapper.selectById(recordId); if (ObjectUtil.isEmpty(sysEvaluationRecord)) { - throw new ServiceException("未能查到测量记录,请确认后再提交"); + throw new ServiceException("未查询到需要测试的记录,请联系管理员"); } - if (sysEvaluationRecord.getStatus() == 0) { + if (sysEvaluationRecord.getCreateTime() == null) { throw new ServiceException("此量表暂未开始作答,请确认后再提交"); } - + if (sysEvaluationRecord.getStatus() == 1) { + throw new ServiceException("此量表已经答题完毕,请勿重复提交"); + } boolean allowQueryResult = true; Long scaleId = bo.getScaleId(); Map> answerMapByQuestion = scaleAnswerService.getScaleAnswerMap(scaleId); @@ -157,7 +157,6 @@ public class WebServiceImpl implements IWebService { if (keySize != answerSize) { throw new ServiceException("有题目未作选择,请检查后提交"); } - SysScalePublishVo scalePublishVo = recordMapper.selectPublishByUseRecord(recordId); //查询考核结果 if (scalePublishVo.getAllowQueryResult() == 0) { @@ -169,6 +168,11 @@ public class WebServiceImpl implements IWebService { List list = calculateEvaluationResult(scaleId, answerList); List conclusionAdd = MapstructUtils.convert(list, SysEvaluationConclusion.class); evaluationConclusionMapper.insertBatch(conclusionAdd); + //更新记录表完成 + SysEvaluationRecord update = new SysEvaluationRecord(); + update.setRecordId(recordId); + update.setStatus(StatusEnum.IN_USE.getValue()); + recordMapper.updateById(update); Integer riskLevel = -1; //选择风险等级最高 diff --git a/ruoyi-modules/rouyi-scale/src/main/resources/mapper/scale/ArchiveMapper.xml b/ruoyi-modules/rouyi-scale/src/main/resources/mapper/scale/ArchiveMapper.xml new file mode 100644 index 0000000..ce08c69 --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/resources/mapper/scale/ArchiveMapper.xml @@ -0,0 +1,36 @@ + + + + + + + + diff --git a/ruoyi-modules/rouyi-scale/src/main/resources/mapper/scale/SysInterveneRecordMapper.xml b/ruoyi-modules/rouyi-scale/src/main/resources/mapper/scale/SysInterveneRecordMapper.xml index 81e4f2d..066c297 100644 --- a/ruoyi-modules/rouyi-scale/src/main/resources/mapper/scale/SysInterveneRecordMapper.xml +++ b/ruoyi-modules/rouyi-scale/src/main/resources/mapper/scale/SysInterveneRecordMapper.xml @@ -4,11 +4,12 @@ "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysOssController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysOssController.java index 73ada3b..fc5b4be 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysOssController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysOssController.java @@ -66,7 +66,7 @@ public class SysOssController extends BaseController { * * @param file 文件 */ - @SaCheckPermission("system:oss:upload") + //@SaCheckPermission("system:oss:upload") @Log(title = "OSS对象存储", businessType = BusinessType.INSERT) @PostMapping(value = "/upload", consumes = MediaType.MULTIPART_FORM_DATA_VALUE) public R upload(@RequestPart("file") MultipartFile file) { @@ -86,7 +86,7 @@ public class SysOssController extends BaseController { * * @param ossId OSS对象ID */ - @SaCheckPermission("system:oss:download") + //@SaCheckPermission("system:oss:download") @GetMapping("/download/{ossId}") public void download(@PathVariable Long ossId, HttpServletResponse response) throws IOException { ossService.download(ossId, response); diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysUserController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysUserController.java index 73f0ce4..a9c3504 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysUserController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysUserController.java @@ -260,7 +260,7 @@ public class SysUserController extends BaseController { /** * 获取部门树列表 */ - @SaCheckPermission("system:user:list") + //@SaCheckPermission("system:user:list") @GetMapping("/deptTree") public R>> deptTree(SysDeptBo dept) { return R.ok(deptService.selectDeptTreeList(dept)); diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysUser.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysUser.java index eaad336..cfdf25a 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysUser.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysUser.java @@ -52,6 +52,11 @@ public class SysUser extends BaseEntity { */ private String email; + /** + * 家庭住址 + */ + private String address; + /** * 手机号码 */ diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysUserBo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysUserBo.java index 011254e..8f6d83e 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysUserBo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysUserBo.java @@ -62,6 +62,11 @@ public class SysUserBo extends BaseEntity { @Size(min = 0, max = 50, message = "邮箱长度不能超过{max}个字符") private String email; + /** + * 家庭住址 + */ + private String address; + /** * 手机号码 */ diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysUserVo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysUserVo.java index 58d83c4..afdcc53 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysUserVo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysUserVo.java @@ -59,6 +59,11 @@ public class SysUserVo implements Serializable { @Sensitive(strategy = SensitiveStrategy.EMAIL) private String email; + /** + * 家庭住址 + */ + private String address; + /** * 手机号码 */