diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/wx/WxEvaluationController.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/wx/WxEvaluationController.java index 85229d6..9fc2b48 100644 --- a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/wx/WxEvaluationController.java +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/wx/WxEvaluationController.java @@ -7,9 +7,12 @@ import org.dromara.common.core.validate.AddGroup; 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.SubmitAnswerBo; import org.dromara.scale.domain.vo.QuestionAnswerVo; +import org.dromara.scale.domain.vo.SysEvaluationRecordVo; import org.dromara.scale.domain.vo.SysScaleVo; import org.dromara.scale.service.IEvaluationService; import org.springframework.validation.annotation.Validated; @@ -41,6 +44,7 @@ public class WxEvaluationController extends BaseController { return R.ok(evaluationService.queryPublishScale()); } + /** * 查询量表答案选项 */ @@ -50,9 +54,17 @@ public class WxEvaluationController extends BaseController { } /** - * 新增量测记录 + * 查询量测记录 */ - @Log(title = "新增量测记录", businessType = BusinessType.INSERT) + @GetMapping("/record") + public TableDataInfo queryRecord(Integer status, PageQuery pageQuery) { + return evaluationService.queryEvaluationRecord(status, pageQuery); + } + + /** + * 量测开始记录 + */ + @Log(title = "量测开始记录", businessType = BusinessType.INSERT) @RepeatSubmit() @PostMapping("/record/{id}") public R addRecord(@NotNull(message = "主键不能为空") @PathVariable Long id) { diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/SysEvaluationRecord.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/SysEvaluationRecord.java index 075d2f0..5826805 100644 --- a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/SysEvaluationRecord.java +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/SysEvaluationRecord.java @@ -54,5 +54,9 @@ public class SysEvaluationRecord extends TenantEntity { * 记录状态-1初始化,0准备测试,1完成测试 */ private Integer status; + /** + * 发布标识,0个人,1发布 + */ + private Integer publishFlag; } diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/IEvaluationService.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/IEvaluationService.java index 3015a58..90f7b3b 100644 --- a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/IEvaluationService.java +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/IEvaluationService.java @@ -1,7 +1,10 @@ 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.SubmitAnswerBo; import org.dromara.scale.domain.vo.QuestionAnswerVo; +import org.dromara.scale.domain.vo.SysEvaluationRecordVo; import org.dromara.scale.domain.vo.SysScaleVo; import java.util.List; @@ -13,6 +16,8 @@ public interface IEvaluationService { List queryQuestionAnswerListByScaleId(Long scaleId); + TableDataInfo queryEvaluationRecord(Integer status, PageQuery pageQuery); + Boolean newRecord(Long recordId); Map submitAnswer(SubmitAnswerBo bo); diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/EvaluationServiceImpl.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/EvaluationServiceImpl.java index 37ee89d..e7abece 100644 --- a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/EvaluationServiceImpl.java +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/EvaluationServiceImpl.java @@ -9,16 +9,18 @@ import org.dromara.common.core.domain.model.LoginUser; import org.dromara.common.core.exception.ServiceException; import org.dromara.common.core.utils.MapstructUtils; 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.*; import org.dromara.scale.domain.*; import org.dromara.scale.domain.bo.SubmitAnswerBo; import org.dromara.scale.domain.bo.SysEvaluationAnswerBo; import org.dromara.scale.domain.vo.*; import org.dromara.scale.mapper.*; +import org.dromara.scale.service.IEvaluationService; import org.dromara.scale.service.ISysScaleAnswerService; import org.dromara.scale.service.ISysScaleFactorService; import org.dromara.scale.service.ISysWarnRecordService; -import org.dromara.scale.service.IEvaluationService; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -96,6 +98,11 @@ public class EvaluationServiceImpl implements IEvaluationService { return scaleAnswerService.queryQuestionAnswerListByScaleId(scaleId); } + @Override + public TableDataInfo queryEvaluationRecord(Integer status, PageQuery pageQuery) { + return null; + } + @Override public Boolean newRecord(Long recordId) { LoginUser loginUser = getLoginUser(); diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/SysScaleServiceImpl.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/SysScaleServiceImpl.java index dc1d414..1422f18 100644 --- a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/SysScaleServiceImpl.java +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/SysScaleServiceImpl.java @@ -11,12 +11,15 @@ import org.dromara.common.core.utils.MapstructUtils; 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.satoken.utils.LoginHelper; import org.dromara.scale.constant.StatusEnum; import org.dromara.scale.domain.ScoreRecord; +import org.dromara.scale.domain.SysEvaluationRecord; import org.dromara.scale.domain.SysScale; import org.dromara.scale.domain.bo.SysScaleBo; import org.dromara.scale.domain.vo.SysScaleVo; import org.dromara.scale.mapper.ScoreRecordMapper; +import org.dromara.scale.mapper.SysEvaluationRecordMapper; import org.dromara.scale.mapper.SysScaleMapper; import org.dromara.scale.service.ISysScaleService; import org.springframework.stereotype.Service; @@ -36,13 +39,14 @@ public class SysScaleServiceImpl implements ISysScaleService { private final SysScaleMapper baseMapper; private final DictService dictService; private final ScoreRecordMapper scoreMapper; + private final SysEvaluationRecordMapper recordMapper; /** * 查询心理测评量 */ @Override public SysScaleVo queryById(Long scaleId) { - + Long userId = LoginHelper.getUserId(); SysScaleVo sysScaleVo = baseMapper.selectVoById(scaleId); String scaleTypeName = dictService.getDictLabel("scale_type", StrUtil.join(StrUtil.COMMA, sysScaleVo.getScaleType())); sysScaleVo.setScaleTypeName(StrUtil.split(scaleTypeName, StrUtil.COMMA)); @@ -59,6 +63,12 @@ public class SysScaleServiceImpl implements ISysScaleService { } else { sysScaleVo.setScore(BigDecimal.ZERO); } + SysEvaluationRecord sysEvaluationRecord = recordMapper.selectOne(new LambdaQueryWrapper() + .eq(SysEvaluationRecord::getUserId, userId) + .eq(SysEvaluationRecord::getScaleId, scaleId) + .eq(SysEvaluationRecord::getPublishFlag, 0) + .lt(SysEvaluationRecord::getStatus, 1)); + sysScaleVo.setRecordId(sysEvaluationRecord != null ? sysEvaluationRecord.getRecordId() : null); return sysScaleVo; } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysDictDataMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysDictDataMapper.java index da01658..9327ce9 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysDictDataMapper.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysDictDataMapper.java @@ -21,5 +21,4 @@ public interface SysDictDataMapper extends BaseMapperPlus selectDictDataByTypeAndDictValue(String dictType, String dictValue); } diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysDictDataMapper.xml b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysDictDataMapper.xml index 2e3664a..9a8816e 100644 --- a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysDictDataMapper.xml +++ b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysDictDataMapper.xml @@ -4,10 +4,5 @@ "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> -