diff --git a/ruoyi-admin/src/main/resources/application.yml b/ruoyi-admin/src/main/resources/application.yml index 0c1d129..67bfd55 100644 --- a/ruoyi-admin/src/main/resources/application.yml +++ b/ruoyi-admin/src/main/resources/application.yml @@ -134,7 +134,7 @@ tenant: - sys_user_role - sys_client - sys_oss_config - - scale_info + - sys_scale # MyBatisPlus配置 # https://baomidou.com/config/ diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/InjectionMetaObjectHandler.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/InjectionMetaObjectHandler.java index 63653de..e5833aa 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/InjectionMetaObjectHandler.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/handler/InjectionMetaObjectHandler.java @@ -37,8 +37,8 @@ public class InjectionMetaObjectHandler implements MetaObjectHandler { baseEntity.setCreateBy(userId); // 当前已登录 且 更新人为空 则填充 baseEntity.setUpdateBy(userId); - baseEntity.setCreateDept(ObjectUtil.isNotNull(baseEntity.getCreateDept()) - ? baseEntity.getCreateDept() : loginUser.getDeptId()); +// baseEntity.setCreateDept(ObjectUtil.isNotNull(baseEntity.getCreateDept()) +// ? baseEntity.getCreateDept() : loginUser.getDeptId()); } } } catch (Exception e) { 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 new file mode 100644 index 0000000..3e661cf --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/SysScaleAnswerController.java @@ -0,0 +1,105 @@ +package org.dromara.scale.controller; + +import java.util.List; + +import lombok.RequiredArgsConstructor; +import jakarta.servlet.http.HttpServletResponse; +import jakarta.validation.constraints.*; +import cn.dev33.satoken.annotation.SaCheckPermission; +import org.springframework.web.bind.annotation.*; +import org.springframework.validation.annotation.Validated; +import org.dromara.common.idempotent.annotation.RepeatSubmit; +import org.dromara.common.log.annotation.Log; +import org.dromara.common.web.core.BaseController; +import org.dromara.common.mybatis.core.page.PageQuery; +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.log.enums.BusinessType; +import org.dromara.common.excel.utils.ExcelUtil; +import org.dromara.scale.domain.vo.SysScaleAnswerVo; +import org.dromara.scale.domain.bo.SysScaleAnswerBo; +import org.dromara.scale.service.ISysScaleAnswerService; +import org.dromara.common.mybatis.core.page.TableDataInfo; + +/** + * 选项信息 + * + * @author jiangzhe + * @date 2024-03-29 + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/scale/SysScaleAnswer") +public class SysScaleAnswerController extends BaseController { + + private final ISysScaleAnswerService sysScaleAnswerService; + + /** + * 查询选项信息列表 + */ + @SaCheckPermission("scale:SysScaleAnswer:list") + @GetMapping("/list") + public TableDataInfo list(SysScaleAnswerBo bo, PageQuery pageQuery) { + return sysScaleAnswerService.queryPageList(bo, pageQuery); + } + + /** + * 导出选项信息列表 + */ + @SaCheckPermission("scale:SysScaleAnswer: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:SysScaleAnswer:query") + @GetMapping("/{answerId}") + public R getInfo(@NotNull(message = "主键不能为空") + @PathVariable Long answerId) { + return R.ok(sysScaleAnswerService.queryById(answerId)); + } + + /** + * 新增选项信息 + */ + @SaCheckPermission("scale:SysScaleAnswer:add") + @Log(title = "选项信息", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public R add(@Validated(AddGroup.class) @RequestBody SysScaleAnswerBo bo) { + return toAjax(sysScaleAnswerService.insertByBo(bo)); + } + + /** + * 修改选项信息 + */ + @SaCheckPermission("scale:SysScaleAnswer:edit") + @Log(title = "选项信息", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public R edit(@Validated(EditGroup.class) @RequestBody SysScaleAnswerBo bo) { + return toAjax(sysScaleAnswerService.updateByBo(bo)); + } + + /** + * 删除选项信息 + * + * @param answerIds 主键串 + */ + @SaCheckPermission("scale:SysScaleAnswer:remove") + @Log(title = "选项信息", businessType = BusinessType.DELETE) + @DeleteMapping("/{answerIds}") + public R remove(@NotEmpty(message = "主键不能为空") + @PathVariable Long[] answerIds) { + return toAjax(sysScaleAnswerService.deleteWithValidByIds(List.of(answerIds), true)); + } +} diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/SysScaleController.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/SysScaleController.java new file mode 100644 index 0000000..ce3d5e7 --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/SysScaleController.java @@ -0,0 +1,105 @@ +package org.dromara.scale.controller; + +import java.util.List; + +import lombok.RequiredArgsConstructor; +import jakarta.servlet.http.HttpServletResponse; +import jakarta.validation.constraints.*; +import cn.dev33.satoken.annotation.SaCheckPermission; +import org.springframework.web.bind.annotation.*; +import org.springframework.validation.annotation.Validated; +import org.dromara.common.idempotent.annotation.RepeatSubmit; +import org.dromara.common.log.annotation.Log; +import org.dromara.common.web.core.BaseController; +import org.dromara.common.mybatis.core.page.PageQuery; +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.log.enums.BusinessType; +import org.dromara.common.excel.utils.ExcelUtil; +import org.dromara.scale.domain.vo.SysScaleVo; +import org.dromara.scale.domain.bo.SysScaleBo; +import org.dromara.scale.service.ISysScaleService; +import org.dromara.common.mybatis.core.page.TableDataInfo; + +/** + * 心理测评量 + * + * @author jiangzhe + * @date 2024-03-29 + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/scale/SysScale") +public class SysScaleController extends BaseController { + + private final ISysScaleService sysScaleService; + + /** + * 查询心理测评量列表 + */ + @SaCheckPermission("scale:SysScale:list") + @GetMapping("/list") + public TableDataInfo list(SysScaleBo bo, PageQuery pageQuery) { + return sysScaleService.queryPageList(bo, pageQuery); + } + + /** + * 导出心理测评量列表 + */ + @SaCheckPermission("scale:SysScale:export") + @Log(title = "心理测评量", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(SysScaleBo bo, HttpServletResponse response) { + List list = sysScaleService.queryList(bo); + ExcelUtil.exportExcel(list, "心理测评量", SysScaleVo.class, response); + } + + /** + * 获取心理测评量详细信息 + * + * @param scaleId 主键 + */ + @SaCheckPermission("scale:SysScale:query") + @GetMapping("/{scaleId}") + public R getInfo(@NotNull(message = "主键不能为空") + @PathVariable Long scaleId) { + return R.ok(sysScaleService.queryById(scaleId)); + } + + /** + * 新增心理测评量 + */ + @SaCheckPermission("scale:SysScale:add") + @Log(title = "心理测评量", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public R add(@Validated(AddGroup.class) @RequestBody SysScaleBo bo) { + return toAjax(sysScaleService.insertByBo(bo)); + } + + /** + * 修改心理测评量 + */ + @SaCheckPermission("scale:SysScale:edit") + @Log(title = "心理测评量", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public R edit(@Validated(EditGroup.class) @RequestBody SysScaleBo bo) { + return toAjax(sysScaleService.updateByBo(bo)); + } + + /** + * 删除心理测评量 + * + * @param scaleIds 主键串 + */ + @SaCheckPermission("scale:SysScale:remove") + @Log(title = "心理测评量", businessType = BusinessType.DELETE) + @DeleteMapping("/{scaleIds}") + public R remove(@NotEmpty(message = "主键不能为空") + @PathVariable Long[] scaleIds) { + return toAjax(sysScaleService.deleteWithValidByIds(List.of(scaleIds), true)); + } +} 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 new file mode 100644 index 0000000..2713601 --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/SysScaleFactorController.java @@ -0,0 +1,105 @@ +package org.dromara.scale.controller; + +import java.util.List; + +import lombok.RequiredArgsConstructor; +import jakarta.servlet.http.HttpServletResponse; +import jakarta.validation.constraints.*; +import cn.dev33.satoken.annotation.SaCheckPermission; +import org.springframework.web.bind.annotation.*; +import org.springframework.validation.annotation.Validated; +import org.dromara.common.idempotent.annotation.RepeatSubmit; +import org.dromara.common.log.annotation.Log; +import org.dromara.common.web.core.BaseController; +import org.dromara.common.mybatis.core.page.PageQuery; +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.log.enums.BusinessType; +import org.dromara.common.excel.utils.ExcelUtil; +import org.dromara.scale.domain.vo.SysScaleFactorVo; +import org.dromara.scale.domain.bo.SysScaleFactorBo; +import org.dromara.scale.service.ISysScaleFactorService; +import org.dromara.common.mybatis.core.page.TableDataInfo; + +/** + * 测评因子 + * + * @author jiangzhe + * @date 2024-03-29 + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/scale/SysScaleFactor") +public class SysScaleFactorController extends BaseController { + + private final ISysScaleFactorService sysScaleFactorService; + + /** + * 查询测评因子列表 + */ + @SaCheckPermission("scale:SysScaleFactor:list") + @GetMapping("/list") + public TableDataInfo list(SysScaleFactorBo bo, PageQuery pageQuery) { + return sysScaleFactorService.queryPageList(bo, pageQuery); + } + + /** + * 导出测评因子列表 + */ + @SaCheckPermission("scale:SysScaleFactor:export") + @Log(title = "测评因子", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(SysScaleFactorBo bo, HttpServletResponse response) { + List list = sysScaleFactorService.queryList(bo); + ExcelUtil.exportExcel(list, "测评因子", SysScaleFactorVo.class, response); + } + + /** + * 获取测评因子详细信息 + * + * @param factorId 主键 + */ + @SaCheckPermission("scale:SysScaleFactor:query") + @GetMapping("/{factorId}") + public R getInfo(@NotNull(message = "主键不能为空") + @PathVariable Long factorId) { + return R.ok(sysScaleFactorService.queryById(factorId)); + } + + /** + * 新增测评因子 + */ + @SaCheckPermission("scale:SysScaleFactor:add") + @Log(title = "测评因子", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public R add(@Validated(AddGroup.class) @RequestBody SysScaleFactorBo bo) { + return toAjax(sysScaleFactorService.insertByBo(bo)); + } + + /** + * 修改测评因子 + */ + @SaCheckPermission("scale:SysScaleFactor:edit") + @Log(title = "测评因子", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public R edit(@Validated(EditGroup.class) @RequestBody SysScaleFactorBo bo) { + return toAjax(sysScaleFactorService.updateByBo(bo)); + } + + /** + * 删除测评因子 + * + * @param factorIds 主键串 + */ + @SaCheckPermission("scale:SysScaleFactor:remove") + @Log(title = "测评因子", businessType = BusinessType.DELETE) + @DeleteMapping("/{factorIds}") + public R remove(@NotEmpty(message = "主键不能为空") + @PathVariable Long[] factorIds) { + return toAjax(sysScaleFactorService.deleteWithValidByIds(List.of(factorIds), 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 new file mode 100644 index 0000000..e4c0321 --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/SysScaleFormulaController.java @@ -0,0 +1,105 @@ +package org.dromara.scale.controller; + +import java.util.List; + +import lombok.RequiredArgsConstructor; +import jakarta.servlet.http.HttpServletResponse; +import jakarta.validation.constraints.*; +import cn.dev33.satoken.annotation.SaCheckPermission; +import org.springframework.web.bind.annotation.*; +import org.springframework.validation.annotation.Validated; +import org.dromara.common.idempotent.annotation.RepeatSubmit; +import org.dromara.common.log.annotation.Log; +import org.dromara.common.web.core.BaseController; +import org.dromara.common.mybatis.core.page.PageQuery; +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.log.enums.BusinessType; +import org.dromara.common.excel.utils.ExcelUtil; +import org.dromara.scale.domain.vo.SysScaleFormulaVo; +import org.dromara.scale.domain.bo.SysScaleFormulaBo; +import org.dromara.scale.service.ISysScaleFormulaService; +import org.dromara.common.mybatis.core.page.TableDataInfo; + +/** + * 测评量公式 + * + * @author jiangzhe + * @date 2024-03-29 + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/scale/SysScaleFormula") +public class SysScaleFormulaController extends BaseController { + + private final ISysScaleFormulaService sysScaleFormulaService; + + /** + * 查询测评量公式列表 + */ + @SaCheckPermission("scale:SysScaleFormula:list") + @GetMapping("/list") + public TableDataInfo list(SysScaleFormulaBo bo, PageQuery pageQuery) { + return sysScaleFormulaService.queryPageList(bo, pageQuery); + } + + /** + * 导出测评量公式列表 + */ + @SaCheckPermission("scale:SysScaleFormula: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:SysScaleFormula:query") + @GetMapping("/{formulaId}") + public R getInfo(@NotNull(message = "主键不能为空") + @PathVariable Long formulaId) { + return R.ok(sysScaleFormulaService.queryById(formulaId)); + } + + /** + * 新增测评量公式 + */ + @SaCheckPermission("scale:SysScaleFormula:add") + @Log(title = "测评量公式", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public R add(@Validated(AddGroup.class) @RequestBody SysScaleFormulaBo bo) { + return toAjax(sysScaleFormulaService.insertByBo(bo)); + } + + /** + * 修改测评量公式 + */ + @SaCheckPermission("scale:SysScaleFormula: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:SysScaleFormula: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/controller/SysScaleQuestionAnswerController.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/SysScaleQuestionAnswerController.java new file mode 100644 index 0000000..325f6ce --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/SysScaleQuestionAnswerController.java @@ -0,0 +1,105 @@ +package org.dromara.scale.controller; + +import java.util.List; + +import lombok.RequiredArgsConstructor; +import jakarta.servlet.http.HttpServletResponse; +import jakarta.validation.constraints.*; +import cn.dev33.satoken.annotation.SaCheckPermission; +import org.springframework.web.bind.annotation.*; +import org.springframework.validation.annotation.Validated; +import org.dromara.common.idempotent.annotation.RepeatSubmit; +import org.dromara.common.log.annotation.Log; +import org.dromara.common.web.core.BaseController; +import org.dromara.common.mybatis.core.page.PageQuery; +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.log.enums.BusinessType; +import org.dromara.common.excel.utils.ExcelUtil; +import org.dromara.scale.domain.vo.SysScaleQuestionAnswerVo; +import org.dromara.scale.domain.bo.SysScaleQuestionAnswerBo; +import org.dromara.scale.service.ISysScaleQuestionAnswerService; +import org.dromara.common.mybatis.core.page.TableDataInfo; + +/** + * 量问题选项 + * + * @author jiangzhe + * @date 2024-03-29 + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/scale/SysScaleQuestionAnswer") +public class SysScaleQuestionAnswerController extends BaseController { + + private final ISysScaleQuestionAnswerService sysScaleQuestionAnswerService; + + /** + * 查询量问题选项列表 + */ + @SaCheckPermission("scale:SysScaleQuestionAnswer:list") + @GetMapping("/list") + public TableDataInfo list(SysScaleQuestionAnswerBo bo, PageQuery pageQuery) { + return sysScaleQuestionAnswerService.queryPageList(bo, pageQuery); + } + + /** + * 导出量问题选项列表 + */ + @SaCheckPermission("scale:SysScaleQuestionAnswer:export") + @Log(title = "量问题选项", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(SysScaleQuestionAnswerBo bo, HttpServletResponse response) { + List list = sysScaleQuestionAnswerService.queryList(bo); + ExcelUtil.exportExcel(list, "量问题选项", SysScaleQuestionAnswerVo.class, response); + } + + /** + * 获取量问题选项详细信息 + * + * @param questionId 主键 + */ + @SaCheckPermission("scale:SysScaleQuestionAnswer:query") + @GetMapping("/{questionId}") + public R getInfo(@NotNull(message = "主键不能为空") + @PathVariable Long questionId) { + return R.ok(sysScaleQuestionAnswerService.queryById(questionId)); + } + + /** + * 新增量问题选项 + */ + @SaCheckPermission("scale:SysScaleQuestionAnswer:add") + @Log(title = "量问题选项", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public R add(@Validated(AddGroup.class) @RequestBody SysScaleQuestionAnswerBo bo) { + return toAjax(sysScaleQuestionAnswerService.insertByBo(bo)); + } + + /** + * 修改量问题选项 + */ + @SaCheckPermission("scale:SysScaleQuestionAnswer:edit") + @Log(title = "量问题选项", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public R edit(@Validated(EditGroup.class) @RequestBody SysScaleQuestionAnswerBo bo) { + return toAjax(sysScaleQuestionAnswerService.updateByBo(bo)); + } + + /** + * 删除量问题选项 + * + * @param questionIds 主键串 + */ + @SaCheckPermission("scale:SysScaleQuestionAnswer:remove") + @Log(title = "量问题选项", businessType = BusinessType.DELETE) + @DeleteMapping("/{questionIds}") + public R remove(@NotEmpty(message = "主键不能为空") + @PathVariable Long[] questionIds) { + return toAjax(sysScaleQuestionAnswerService.deleteWithValidByIds(List.of(questionIds), true)); + } +} diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/SysScaleQuestionController.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/SysScaleQuestionController.java new file mode 100644 index 0000000..ac5717b --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/controller/SysScaleQuestionController.java @@ -0,0 +1,105 @@ +package org.dromara.scale.controller; + +import java.util.List; + +import lombok.RequiredArgsConstructor; +import jakarta.servlet.http.HttpServletResponse; +import jakarta.validation.constraints.*; +import cn.dev33.satoken.annotation.SaCheckPermission; +import org.springframework.web.bind.annotation.*; +import org.springframework.validation.annotation.Validated; +import org.dromara.common.idempotent.annotation.RepeatSubmit; +import org.dromara.common.log.annotation.Log; +import org.dromara.common.web.core.BaseController; +import org.dromara.common.mybatis.core.page.PageQuery; +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.log.enums.BusinessType; +import org.dromara.common.excel.utils.ExcelUtil; +import org.dromara.scale.domain.vo.SysScaleQuestionVo; +import org.dromara.scale.domain.bo.SysScaleQuestionBo; +import org.dromara.scale.service.ISysScaleQuestionService; +import org.dromara.common.mybatis.core.page.TableDataInfo; + +/** + * 量问题内容 + * + * @author jiangzhe + * @date 2024-03-29 + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/scale/SysScaleQuestion") +public class SysScaleQuestionController extends BaseController { + + private final ISysScaleQuestionService sysScaleQuestionService; + + /** + * 查询量问题内容列表 + */ + @SaCheckPermission("scale:SysScaleQuestion:list") + @GetMapping("/list") + public TableDataInfo list(SysScaleQuestionBo bo, PageQuery pageQuery) { + return sysScaleQuestionService.queryPageList(bo, pageQuery); + } + + /** + * 导出量问题内容列表 + */ + @SaCheckPermission("scale:SysScaleQuestion:export") + @Log(title = "量问题内容", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(SysScaleQuestionBo bo, HttpServletResponse response) { + List list = sysScaleQuestionService.queryList(bo); + ExcelUtil.exportExcel(list, "量问题内容", SysScaleQuestionVo.class, response); + } + + /** + * 获取量问题内容详细信息 + * + * @param questionId 主键 + */ + @SaCheckPermission("scale:SysScaleQuestion:query") + @GetMapping("/{questionId}") + public R getInfo(@NotNull(message = "主键不能为空") + @PathVariable Long questionId) { + return R.ok(sysScaleQuestionService.queryById(questionId)); + } + + /** + * 新增量问题内容 + */ + @SaCheckPermission("scale:SysScaleQuestion:add") + @Log(title = "量问题内容", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public R add(@Validated(AddGroup.class) @RequestBody SysScaleQuestionBo bo) { + return toAjax(sysScaleQuestionService.insertByBo(bo)); + } + + /** + * 修改量问题内容 + */ + @SaCheckPermission("scale:SysScaleQuestion:edit") + @Log(title = "量问题内容", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public R edit(@Validated(EditGroup.class) @RequestBody SysScaleQuestionBo bo) { + return toAjax(sysScaleQuestionService.updateByBo(bo)); + } + + /** + * 删除量问题内容 + * + * @param questionIds 主键串 + */ + @SaCheckPermission("scale:SysScaleQuestion:remove") + @Log(title = "量问题内容", businessType = BusinessType.DELETE) + @DeleteMapping("/{questionIds}") + public R remove(@NotEmpty(message = "主键不能为空") + @PathVariable Long[] questionIds) { + return toAjax(sysScaleQuestionService.deleteWithValidByIds(List.of(questionIds), true)); + } +} diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/SysScale.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/SysScale.java new file mode 100644 index 0000000..fa372c2 --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/SysScale.java @@ -0,0 +1,78 @@ +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.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; + +import java.io.Serial; + +/** + * 心理测评量对象 sys_scale + * + * @author jiangzhe + * @date 2024-03-29 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("sys_scale") +public class SysScale extends BaseEntity { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 测评id + */ + @TableId(value = "scale_id") + private Long scaleId; + + /** + * 测评标题 + */ + private String scaleTitle; + + /** + * 测评详情 + */ + private String scaleDetails; + + /** + * 状态(0正常 1停用) + */ + private String status; + + /** + * 量表的总分计分公式 + */ + private Long formulaId; + + /** + * 类型 + */ + private String scaleType; + + /** + * 预警分数 + */ + private Long earlyWarningScore; + + /** + * 测评开始时间 + */ + private Date startTime; + + /** + * 测评时间 + */ + private String scaleTime; + + /** + * 测评结束时间 + */ + private Date endTime; + + +} diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/SysScaleAnswer.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/SysScaleAnswer.java new file mode 100644 index 0000000..7d0d91b --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/SysScaleAnswer.java @@ -0,0 +1,62 @@ +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_answer + * + * @author jiangzhe + * @date 2024-03-29 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("sys_scale_answer") +public class SysScaleAnswer extends BaseEntity { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 测评答案id + */ + @TableId(value = "answer_id") + private Long answerId; + + /** + * 测评问题id + */ + private Long questionId; + + /** + * 问题题目 + */ + private String questionContent; + + /** + * 因子id + */ + private Long factorId; + + /** + * 测评量表id + */ + private Long scaleId; + + /** + * 选项 + */ + private String answerOption; + + /** + * 得分 + */ + private BigDecimal score; + + +} diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/SysScaleFactor.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/SysScaleFactor.java new file mode 100644 index 0000000..b5d0987 --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/SysScaleFactor.java @@ -0,0 +1,56 @@ +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.io.Serial; + +/** + * 测评因子对象 sys_scale_factor + * + * @author jiangzhe + * @date 2024-03-29 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("sys_scale_factor") +public class SysScaleFactor extends BaseEntity { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 因子id + */ + @TableId(value = "factor_id") + private Long factorId; + + /** + * 因子名称 + */ + private String factorName; + + /** + * 因子所属量表id + */ + private Long scaleId; + + /** + * 测评量表标题 + */ + private String scaleTitle; + + /** + * 分数范围及结果提示 + */ + private String factorResult; + + /** + * 因子分计算公式 + */ + private Long formulaId; + + +} 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 new file mode 100644 index 0000000..20b4972 --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/SysScaleFormula.java @@ -0,0 +1,47 @@ +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/SysScaleQuestion.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/SysScaleQuestion.java new file mode 100644 index 0000000..dc7b70b --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/SysScaleQuestion.java @@ -0,0 +1,61 @@ +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.io.Serial; + +/** + * 量问题内容对象 sys_scale_question + * + * @author jiangzhe + * @date 2024-03-29 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("sys_scale_question") +public class SysScaleQuestion extends BaseEntity { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 测评问题id + */ + @TableId(value = "question_id") + private Long questionId; + + /** + * 所属测评量表id + */ + private Long scaleId; + + /** + * 测评量表标题 + */ + private String scaleTitle; + + /** + * 问题序号 + */ + private Long questionOrder; + + /** + * 问题内容 + */ + private String questionContent; + + /** + * 所属因子维度 + */ + private Long factorId; + + /** + * 因子名称 + */ + private String factorName; + + +} diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/SysScaleQuestionAnswer.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/SysScaleQuestionAnswer.java new file mode 100644 index 0000000..89d4fd9 --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/SysScaleQuestionAnswer.java @@ -0,0 +1,101 @@ +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.io.Serial; + +/** + * 量问题选项对象 sys_scale_question_answer + * + * @author jiangzhe + * @date 2024-03-29 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("sys_scale_question_answer") +public class SysScaleQuestionAnswer extends BaseEntity { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 测评问题id + */ + @TableId(value = "question_id") + private Long questionId; + + /** + * 所属测评量表id + */ + private Long scaleId; + + /** + * 问题内容 + */ + private String questionContent; + + /** + * 问题序号 + */ + private Long questionOrder; + + /** + * 问题A + */ + private String questionA; + + /** + * 问题B + */ + private String questionB; + + /** + * 问题C + */ + private String questionC; + + /** + * 问题D + */ + private String questionD; + + /** + * 问题E + */ + private String questionE; + + /** + * 分数A + */ + private Long scoreA; + + /** + * 分数B + */ + private Long scoreB; + + /** + * 分数C + */ + private Long scoreC; + + /** + * 分数D + */ + private Long scoreD; + + /** + * 分数E + */ + private Long scoreE; + + /** + * 所属因子维度 + */ + private Long factorId; + + +} diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/bo/SysScaleAnswerBo.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/bo/SysScaleAnswerBo.java new file mode 100644 index 0000000..c3d111b --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/bo/SysScaleAnswerBo.java @@ -0,0 +1,67 @@ +package org.dromara.scale.domain.bo; + +import org.dromara.scale.domain.SysScaleAnswer; +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_answer + * + * @author jiangzhe + * @date 2024-03-29 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@AutoMapper(target = SysScaleAnswer.class, reverseConvertGenerate = false) +public class SysScaleAnswerBo extends BaseEntity { + + /** + * 测评答案id + */ + @NotNull(message = "测评答案id不能为空", groups = { EditGroup.class }) + private Long answerId; + + /** + * 测评问题id + */ + @NotNull(message = "测评问题id不能为空", groups = { AddGroup.class, EditGroup.class }) + private Long questionId; + + /** + * 问题题目 + */ + @NotBlank(message = "问题题目不能为空", groups = { AddGroup.class, EditGroup.class }) + private String questionContent; + + /** + * 因子id + */ + @NotNull(message = "因子id不能为空", groups = { AddGroup.class, EditGroup.class }) + private Long factorId; + + /** + * 测评量表id + */ + @NotNull(message = "测评量表id不能为空", groups = { AddGroup.class, EditGroup.class }) + private Long scaleId; + + /** + * 选项 + */ + @NotBlank(message = "选项不能为空", groups = { AddGroup.class, EditGroup.class }) + private String answerOption; + + /** + * 得分 + */ + @NotNull(message = "得分不能为空", groups = { AddGroup.class, EditGroup.class }) + private BigDecimal score; + + +} diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/bo/SysScaleBo.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/bo/SysScaleBo.java new file mode 100644 index 0000000..6aa15aa --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/bo/SysScaleBo.java @@ -0,0 +1,86 @@ +package org.dromara.scale.domain.bo; + +import org.dromara.scale.domain.SysScale; +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.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; + +/** + * 心理测评量业务对象 sys_scale + * + * @author jiangzhe + * @date 2024-03-29 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@AutoMapper(target = SysScale.class, reverseConvertGenerate = false) +public class SysScaleBo extends BaseEntity { + + /** + * 测评id + */ + @NotNull(message = "测评id不能为空", groups = { EditGroup.class }) + private Long scaleId; + + /** + * 测评标题 + */ + @NotBlank(message = "测评标题不能为空", groups = { AddGroup.class, EditGroup.class }) + private String scaleTitle; + + /** + * 测评详情 + */ + @NotBlank(message = "测评详情不能为空", groups = { AddGroup.class, EditGroup.class }) + private String scaleDetails; + + /** + * 状态(0正常 1停用) + */ + @NotBlank(message = "状态(0正常 1停用)不能为空", groups = { AddGroup.class, EditGroup.class }) + private String status; + + /** + * 量表的总分计分公式 + */ + @NotNull(message = "量表的总分计分公式不能为空", groups = { AddGroup.class, EditGroup.class }) + private Long formulaId; + + /** + * 类型 + */ + @NotBlank(message = "类型不能为空", groups = { AddGroup.class, EditGroup.class }) + private String scaleType; + + /** + * 预警分数 + */ + @NotNull(message = "预警分数不能为空", groups = { AddGroup.class, EditGroup.class }) + private Long earlyWarningScore; + + /** + * 测评开始时间 + */ + @NotNull(message = "测评开始时间不能为空", groups = { AddGroup.class, EditGroup.class }) + private Date startTime; + + /** + * 测评时间 + */ + @NotBlank(message = "测评时间不能为空", groups = { AddGroup.class, EditGroup.class }) + private String scaleTime; + + /** + * 测评结束时间 + */ + @NotNull(message = "测评结束时间不能为空", groups = { AddGroup.class, EditGroup.class }) + private Date endTime; + + +} diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/bo/SysScaleFactorBo.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/bo/SysScaleFactorBo.java new file mode 100644 index 0000000..54871af --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/bo/SysScaleFactorBo.java @@ -0,0 +1,60 @@ +package org.dromara.scale.domain.bo; + +import org.dromara.scale.domain.SysScaleFactor; +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.*; + +/** + * 测评因子业务对象 sys_scale_factor + * + * @author jiangzhe + * @date 2024-03-29 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@AutoMapper(target = SysScaleFactor.class, reverseConvertGenerate = false) +public class SysScaleFactorBo extends BaseEntity { + + /** + * 因子id + */ + @NotNull(message = "因子id不能为空", groups = { EditGroup.class }) + private Long factorId; + + /** + * 因子名称 + */ + @NotBlank(message = "因子名称不能为空", groups = { AddGroup.class, EditGroup.class }) + private String factorName; + + /** + * 因子所属量表id + */ + @NotNull(message = "因子所属量表id不能为空", groups = { AddGroup.class, EditGroup.class }) + private Long scaleId; + + /** + * 测评量表标题 + */ + @NotBlank(message = "测评量表标题不能为空", groups = { AddGroup.class, EditGroup.class }) + private String scaleTitle; + + /** + * 分数范围及结果提示 + */ + @NotBlank(message = "分数范围及结果提示不能为空", groups = { AddGroup.class, EditGroup.class }) + private String factorResult; + + /** + * 因子分计算公式 + */ + @NotNull(message = "因子分计算公式不能为空", groups = { AddGroup.class, EditGroup.class }) + private Long formulaId; + + +} 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 new file mode 100644 index 0000000..b5a7d9b --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/bo/SysScaleFormulaBo.java @@ -0,0 +1,49 @@ +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/SysScaleQuestionAnswerBo.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/bo/SysScaleQuestionAnswerBo.java new file mode 100644 index 0000000..51a8edf --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/bo/SysScaleQuestionAnswerBo.java @@ -0,0 +1,114 @@ +package org.dromara.scale.domain.bo; + +import org.dromara.scale.domain.SysScaleQuestionAnswer; +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.*; + +/** + * 量问题选项业务对象 sys_scale_question_answer + * + * @author jiangzhe + * @date 2024-03-29 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@AutoMapper(target = SysScaleQuestionAnswer.class, reverseConvertGenerate = false) +public class SysScaleQuestionAnswerBo extends BaseEntity { + + /** + * 测评问题id + */ + @NotNull(message = "测评问题id不能为空", groups = { EditGroup.class }) + private Long questionId; + + /** + * 所属测评量表id + */ + @NotNull(message = "所属测评量表id不能为空", groups = { AddGroup.class, EditGroup.class }) + private Long scaleId; + + /** + * 问题内容 + */ + @NotBlank(message = "问题内容不能为空", groups = { AddGroup.class, EditGroup.class }) + private String questionContent; + + /** + * 问题序号 + */ + @NotNull(message = "问题序号不能为空", groups = { AddGroup.class, EditGroup.class }) + private Long questionOrder; + + /** + * 问题A + */ + @NotBlank(message = "问题A不能为空", groups = { AddGroup.class, EditGroup.class }) + private String questionA; + + /** + * 问题B + */ + @NotBlank(message = "问题B不能为空", groups = { AddGroup.class, EditGroup.class }) + private String questionB; + + /** + * 问题C + */ + @NotBlank(message = "问题C不能为空", groups = { AddGroup.class, EditGroup.class }) + private String questionC; + + /** + * 问题D + */ + @NotBlank(message = "问题D不能为空", groups = { AddGroup.class, EditGroup.class }) + private String questionD; + + /** + * 问题E + */ + @NotBlank(message = "问题E不能为空", groups = { AddGroup.class, EditGroup.class }) + private String questionE; + + /** + * 分数A + */ + @NotNull(message = "分数A不能为空", groups = { AddGroup.class, EditGroup.class }) + private Long scoreA; + + /** + * 分数B + */ + @NotNull(message = "分数B不能为空", groups = { AddGroup.class, EditGroup.class }) + private Long scoreB; + + /** + * 分数C + */ + @NotNull(message = "分数C不能为空", groups = { AddGroup.class, EditGroup.class }) + private Long scoreC; + + /** + * 分数D + */ + @NotNull(message = "分数D不能为空", groups = { AddGroup.class, EditGroup.class }) + private Long scoreD; + + /** + * 分数E + */ + @NotNull(message = "分数E不能为空", groups = { AddGroup.class, EditGroup.class }) + private Long scoreE; + + /** + * 所属因子维度 + */ + @NotNull(message = "所属因子维度不能为空", groups = { AddGroup.class, EditGroup.class }) + private Long factorId; + + +} diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/bo/SysScaleQuestionBo.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/bo/SysScaleQuestionBo.java new file mode 100644 index 0000000..c105b5f --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/bo/SysScaleQuestionBo.java @@ -0,0 +1,66 @@ +package org.dromara.scale.domain.bo; + +import org.dromara.scale.domain.SysScaleQuestion; +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.*; + +/** + * 量问题内容业务对象 sys_scale_question + * + * @author jiangzhe + * @date 2024-03-29 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@AutoMapper(target = SysScaleQuestion.class, reverseConvertGenerate = false) +public class SysScaleQuestionBo extends BaseEntity { + + /** + * 测评问题id + */ + @NotNull(message = "测评问题id不能为空", groups = { EditGroup.class }) + private Long questionId; + + /** + * 所属测评量表id + */ + @NotNull(message = "所属测评量表id不能为空", groups = { AddGroup.class, EditGroup.class }) + private Long scaleId; + + /** + * 测评量表标题 + */ + @NotBlank(message = "测评量表标题不能为空", groups = { AddGroup.class, EditGroup.class }) + private String scaleTitle; + + /** + * 问题序号 + */ + @NotNull(message = "问题序号不能为空", groups = { AddGroup.class, EditGroup.class }) + private Long questionOrder; + + /** + * 问题内容 + */ + @NotBlank(message = "问题内容不能为空", groups = { AddGroup.class, EditGroup.class }) + private String questionContent; + + /** + * 所属因子维度 + */ + @NotNull(message = "所属因子维度不能为空", groups = { AddGroup.class, EditGroup.class }) + private Long factorId; + + /** + * 因子名称 + */ + @NotBlank(message = "因子名称不能为空", groups = { AddGroup.class, EditGroup.class }) + private String factorName; + + +} diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/SysScaleAnswerVo.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/SysScaleAnswerVo.java new file mode 100644 index 0000000..629770e --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/SysScaleAnswerVo.java @@ -0,0 +1,75 @@ +package org.dromara.scale.domain.vo; + +import java.math.BigDecimal; +import org.dromara.scale.domain.SysScaleAnswer; +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_answer + * + * @author jiangzhe + * @date 2024-03-29 + */ +@Data +@ExcelIgnoreUnannotated +@AutoMapper(target = SysScaleAnswer.class) +public class SysScaleAnswerVo implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 测评答案id + */ + @ExcelProperty(value = "测评答案id") + private Long answerId; + + /** + * 测评问题id + */ + @ExcelProperty(value = "测评问题id") + private Long questionId; + + /** + * 问题题目 + */ + @ExcelProperty(value = "问题题目") + private String questionContent; + + /** + * 因子id + */ + @ExcelProperty(value = "因子id") + private Long factorId; + + /** + * 测评量表id + */ + @ExcelProperty(value = "测评量表id") + private Long scaleId; + + /** + * 选项 + */ + @ExcelProperty(value = "选项") + private String answerOption; + + /** + * 得分 + */ + @ExcelProperty(value = "得分") + private BigDecimal score; + + +} diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/SysScaleFactorVo.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/SysScaleFactorVo.java new file mode 100644 index 0000000..6987437 --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/SysScaleFactorVo.java @@ -0,0 +1,68 @@ +package org.dromara.scale.domain.vo; + +import org.dromara.scale.domain.SysScaleFactor; +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_factor + * + * @author jiangzhe + * @date 2024-03-29 + */ +@Data +@ExcelIgnoreUnannotated +@AutoMapper(target = SysScaleFactor.class) +public class SysScaleFactorVo implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 因子id + */ + @ExcelProperty(value = "因子id") + private Long factorId; + + /** + * 因子名称 + */ + @ExcelProperty(value = "因子名称") + private String factorName; + + /** + * 因子所属量表id + */ + @ExcelProperty(value = "因子所属量表id") + private Long scaleId; + + /** + * 测评量表标题 + */ + @ExcelProperty(value = "测评量表标题") + private String scaleTitle; + + /** + * 分数范围及结果提示 + */ + @ExcelProperty(value = "分数范围及结果提示") + private String factorResult; + + /** + * 因子分计算公式 + */ + @ExcelProperty(value = "因子分计算公式") + private Long formulaId; + + +} 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 new file mode 100644 index 0000000..72e75c4 --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/SysScaleFormulaVo.java @@ -0,0 +1,57 @@ +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/SysScaleQuestionAnswerVo.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/SysScaleQuestionAnswerVo.java new file mode 100644 index 0000000..9a79693 --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/SysScaleQuestionAnswerVo.java @@ -0,0 +1,122 @@ +package org.dromara.scale.domain.vo; + +import org.dromara.scale.domain.SysScaleQuestionAnswer; +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_question_answer + * + * @author jiangzhe + * @date 2024-03-29 + */ +@Data +@ExcelIgnoreUnannotated +@AutoMapper(target = SysScaleQuestionAnswer.class) +public class SysScaleQuestionAnswerVo implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 测评问题id + */ + @ExcelProperty(value = "测评问题id") + private Long questionId; + + /** + * 所属测评量表id + */ + @ExcelProperty(value = "所属测评量表id") + private Long scaleId; + + /** + * 问题内容 + */ + @ExcelProperty(value = "问题内容") + private String questionContent; + + /** + * 问题序号 + */ + @ExcelProperty(value = "问题序号") + private Long questionOrder; + + /** + * 问题A + */ + @ExcelProperty(value = "问题A") + private String questionA; + + /** + * 问题B + */ + @ExcelProperty(value = "问题B") + private String questionB; + + /** + * 问题C + */ + @ExcelProperty(value = "问题C") + private String questionC; + + /** + * 问题D + */ + @ExcelProperty(value = "问题D") + private String questionD; + + /** + * 问题E + */ + @ExcelProperty(value = "问题E") + private String questionE; + + /** + * 分数A + */ + @ExcelProperty(value = "分数A") + private Long scoreA; + + /** + * 分数B + */ + @ExcelProperty(value = "分数B") + private Long scoreB; + + /** + * 分数C + */ + @ExcelProperty(value = "分数C") + private Long scoreC; + + /** + * 分数D + */ + @ExcelProperty(value = "分数D") + private Long scoreD; + + /** + * 分数E + */ + @ExcelProperty(value = "分数E") + private Long scoreE; + + /** + * 所属因子维度 + */ + @ExcelProperty(value = "所属因子维度") + private Long factorId; + + +} diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/SysScaleQuestionVo.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/SysScaleQuestionVo.java new file mode 100644 index 0000000..7da598e --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/SysScaleQuestionVo.java @@ -0,0 +1,74 @@ +package org.dromara.scale.domain.vo; + +import org.dromara.scale.domain.SysScaleQuestion; +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_question + * + * @author jiangzhe + * @date 2024-03-29 + */ +@Data +@ExcelIgnoreUnannotated +@AutoMapper(target = SysScaleQuestion.class) +public class SysScaleQuestionVo implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 测评问题id + */ + @ExcelProperty(value = "测评问题id") + private Long questionId; + + /** + * 所属测评量表id + */ + @ExcelProperty(value = "所属测评量表id") + private Long scaleId; + + /** + * 测评量表标题 + */ + @ExcelProperty(value = "测评量表标题") + private String scaleTitle; + + /** + * 问题序号 + */ + @ExcelProperty(value = "问题序号") + private Long questionOrder; + + /** + * 问题内容 + */ + @ExcelProperty(value = "问题内容") + private String questionContent; + + /** + * 所属因子维度 + */ + @ExcelProperty(value = "所属因子维度") + private Long factorId; + + /** + * 因子名称 + */ + @ExcelProperty(value = "因子名称") + private String factorName; + + +} diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/SysScaleVo.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/SysScaleVo.java new file mode 100644 index 0000000..b07fc07 --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/domain/vo/SysScaleVo.java @@ -0,0 +1,95 @@ +package org.dromara.scale.domain.vo; + +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.dromara.scale.domain.SysScale; +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 + * + * @author jiangzhe + * @date 2024-03-29 + */ +@Data +@ExcelIgnoreUnannotated +@AutoMapper(target = SysScale.class) +public class SysScaleVo implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 测评id + */ + @ExcelProperty(value = "测评id") + private Long scaleId; + + /** + * 测评标题 + */ + @ExcelProperty(value = "测评标题") + private String scaleTitle; + + /** + * 测评详情 + */ + @ExcelProperty(value = "测评详情") + private String scaleDetails; + + /** + * 状态(0正常 1停用) + */ + @ExcelProperty(value = "状态", converter = ExcelDictConvert.class) + @ExcelDictFormat(readConverterExp = "0=正常,1=停用") + private String status; + + /** + * 量表的总分计分公式 + */ + @ExcelProperty(value = "量表的总分计分公式") + private Long formulaId; + + /** + * 类型 + */ + @ExcelProperty(value = "类型") + private String scaleType; + + /** + * 预警分数 + */ + @ExcelProperty(value = "预警分数") + private Long earlyWarningScore; + + /** + * 测评开始时间 + */ + @ExcelProperty(value = "测评开始时间") + private Date startTime; + + /** + * 测评时间 + */ + @ExcelProperty(value = "测评时间") + private String scaleTime; + + /** + * 测评结束时间 + */ + @ExcelProperty(value = "测评结束时间") + private Date endTime; + + +} diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/mapper/SysScaleAnswerMapper.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/mapper/SysScaleAnswerMapper.java new file mode 100644 index 0000000..8f3f64a --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/mapper/SysScaleAnswerMapper.java @@ -0,0 +1,15 @@ +package org.dromara.scale.mapper; + +import org.dromara.scale.domain.SysScaleAnswer; +import org.dromara.scale.domain.vo.SysScaleAnswerVo; +import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; + +/** + * 选项信息Mapper接口 + * + * @author jiangzhe + * @date 2024-03-29 + */ +public interface SysScaleAnswerMapper extends BaseMapperPlus { + +} diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/mapper/SysScaleFactorMapper.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/mapper/SysScaleFactorMapper.java new file mode 100644 index 0000000..a2dce76 --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/mapper/SysScaleFactorMapper.java @@ -0,0 +1,15 @@ +package org.dromara.scale.mapper; + +import org.dromara.scale.domain.SysScaleFactor; +import org.dromara.scale.domain.vo.SysScaleFactorVo; +import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; + +/** + * 测评因子Mapper接口 + * + * @author jiangzhe + * @date 2024-03-29 + */ +public interface SysScaleFactorMapper extends BaseMapperPlus { + +} 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 new file mode 100644 index 0000000..7566c10 --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/mapper/SysScaleFormulaMapper.java @@ -0,0 +1,15 @@ +package org.dromara.scale.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 + */ +public interface SysScaleFormulaMapper extends BaseMapperPlus { + +} diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/mapper/SysScaleMapper.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/mapper/SysScaleMapper.java new file mode 100644 index 0000000..1ccd937 --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/mapper/SysScaleMapper.java @@ -0,0 +1,15 @@ +package org.dromara.scale.mapper; + +import org.dromara.scale.domain.SysScale; +import org.dromara.scale.domain.vo.SysScaleVo; +import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; + +/** + * 心理测评量Mapper接口 + * + * @author jiangzhe + * @date 2024-03-29 + */ +public interface SysScaleMapper extends BaseMapperPlus { + +} diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/mapper/SysScaleQuestionAnswerMapper.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/mapper/SysScaleQuestionAnswerMapper.java new file mode 100644 index 0000000..9077e9a --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/mapper/SysScaleQuestionAnswerMapper.java @@ -0,0 +1,15 @@ +package org.dromara.scale.mapper; + +import org.dromara.scale.domain.SysScaleQuestionAnswer; +import org.dromara.scale.domain.vo.SysScaleQuestionAnswerVo; +import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; + +/** + * 量问题选项Mapper接口 + * + * @author jiangzhe + * @date 2024-03-29 + */ +public interface SysScaleQuestionAnswerMapper extends BaseMapperPlus { + +} diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/mapper/SysScaleQuestionMapper.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/mapper/SysScaleQuestionMapper.java new file mode 100644 index 0000000..6a2f22c --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/mapper/SysScaleQuestionMapper.java @@ -0,0 +1,15 @@ +package org.dromara.scale.mapper; + +import org.dromara.scale.domain.SysScaleQuestion; +import org.dromara.scale.domain.vo.SysScaleQuestionVo; +import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; + +/** + * 量问题内容Mapper接口 + * + * @author jiangzhe + * @date 2024-03-29 + */ +public interface SysScaleQuestionMapper extends BaseMapperPlus { + +} diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/ISysScaleAnswerService.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/ISysScaleAnswerService.java new file mode 100644 index 0000000..74979f0 --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/ISysScaleAnswerService.java @@ -0,0 +1,49 @@ +package org.dromara.scale.service; + +import org.dromara.scale.domain.SysScaleAnswer; +import org.dromara.scale.domain.vo.SysScaleAnswerVo; +import org.dromara.scale.domain.bo.SysScaleAnswerBo; +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 ISysScaleAnswerService { + + /** + * 查询选项信息 + */ + SysScaleAnswerVo queryById(Long answerId); + + /** + * 查询选项信息列表 + */ + TableDataInfo queryPageList(SysScaleAnswerBo bo, PageQuery pageQuery); + + /** + * 查询选项信息列表 + */ + List queryList(SysScaleAnswerBo bo); + + /** + * 新增选项信息 + */ + Boolean insertByBo(SysScaleAnswerBo bo); + + /** + * 修改选项信息 + */ + Boolean updateByBo(SysScaleAnswerBo bo); + + /** + * 校验并批量删除选项信息信息 + */ + Boolean deleteWithValidByIds(Collection ids, Boolean isValid); +} diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/ISysScaleFactorService.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/ISysScaleFactorService.java new file mode 100644 index 0000000..17f4463 --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/ISysScaleFactorService.java @@ -0,0 +1,49 @@ +package org.dromara.scale.service; + +import org.dromara.scale.domain.SysScaleFactor; +import org.dromara.scale.domain.vo.SysScaleFactorVo; +import org.dromara.scale.domain.bo.SysScaleFactorBo; +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 ISysScaleFactorService { + + /** + * 查询测评因子 + */ + SysScaleFactorVo queryById(Long factorId); + + /** + * 查询测评因子列表 + */ + TableDataInfo queryPageList(SysScaleFactorBo bo, PageQuery pageQuery); + + /** + * 查询测评因子列表 + */ + List queryList(SysScaleFactorBo bo); + + /** + * 新增测评因子 + */ + Boolean insertByBo(SysScaleFactorBo bo); + + /** + * 修改测评因子 + */ + Boolean updateByBo(SysScaleFactorBo 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 new file mode 100644 index 0000000..e0f61ad --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/ISysScaleFormulaService.java @@ -0,0 +1,49 @@ +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/ISysScaleQuestionAnswerService.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/ISysScaleQuestionAnswerService.java new file mode 100644 index 0000000..758c609 --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/ISysScaleQuestionAnswerService.java @@ -0,0 +1,49 @@ +package org.dromara.scale.service; + +import org.dromara.scale.domain.SysScaleQuestionAnswer; +import org.dromara.scale.domain.vo.SysScaleQuestionAnswerVo; +import org.dromara.scale.domain.bo.SysScaleQuestionAnswerBo; +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 ISysScaleQuestionAnswerService { + + /** + * 查询量问题选项 + */ + SysScaleQuestionAnswerVo queryById(Long questionId); + + /** + * 查询量问题选项列表 + */ + TableDataInfo queryPageList(SysScaleQuestionAnswerBo bo, PageQuery pageQuery); + + /** + * 查询量问题选项列表 + */ + List queryList(SysScaleQuestionAnswerBo bo); + + /** + * 新增量问题选项 + */ + Boolean insertByBo(SysScaleQuestionAnswerBo bo); + + /** + * 修改量问题选项 + */ + Boolean updateByBo(SysScaleQuestionAnswerBo bo); + + /** + * 校验并批量删除量问题选项信息 + */ + Boolean deleteWithValidByIds(Collection ids, Boolean isValid); +} diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/ISysScaleQuestionService.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/ISysScaleQuestionService.java new file mode 100644 index 0000000..ef8ab15 --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/ISysScaleQuestionService.java @@ -0,0 +1,49 @@ +package org.dromara.scale.service; + +import org.dromara.scale.domain.SysScaleQuestion; +import org.dromara.scale.domain.vo.SysScaleQuestionVo; +import org.dromara.scale.domain.bo.SysScaleQuestionBo; +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 ISysScaleQuestionService { + + /** + * 查询量问题内容 + */ + SysScaleQuestionVo queryById(Long questionId); + + /** + * 查询量问题内容列表 + */ + TableDataInfo queryPageList(SysScaleQuestionBo bo, PageQuery pageQuery); + + /** + * 查询量问题内容列表 + */ + List queryList(SysScaleQuestionBo bo); + + /** + * 新增量问题内容 + */ + Boolean insertByBo(SysScaleQuestionBo bo); + + /** + * 修改量问题内容 + */ + Boolean updateByBo(SysScaleQuestionBo bo); + + /** + * 校验并批量删除量问题内容信息 + */ + Boolean deleteWithValidByIds(Collection ids, Boolean isValid); +} diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/ISysScaleService.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/ISysScaleService.java new file mode 100644 index 0000000..4d9fcce --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/ISysScaleService.java @@ -0,0 +1,49 @@ +package org.dromara.scale.service; + +import org.dromara.scale.domain.SysScale; +import org.dromara.scale.domain.vo.SysScaleVo; +import org.dromara.scale.domain.bo.SysScaleBo; +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 ISysScaleService { + + /** + * 查询心理测评量 + */ + SysScaleVo queryById(Long scaleId); + + /** + * 查询心理测评量列表 + */ + TableDataInfo queryPageList(SysScaleBo bo, PageQuery pageQuery); + + /** + * 查询心理测评量列表 + */ + List queryList(SysScaleBo bo); + + /** + * 新增心理测评量 + */ + Boolean insertByBo(SysScaleBo bo); + + /** + * 修改心理测评量 + */ + Boolean updateByBo(SysScaleBo bo); + + /** + * 校验并批量删除心理测评量信息 + */ + Boolean deleteWithValidByIds(Collection ids, Boolean isValid); +} diff --git a/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/SysScaleAnswerServiceImpl.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/SysScaleAnswerServiceImpl.java new file mode 100644 index 0000000..381d1b9 --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/SysScaleAnswerServiceImpl.java @@ -0,0 +1,114 @@ +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.SysScaleAnswerBo; +import org.dromara.scale.domain.vo.SysScaleAnswerVo; +import org.dromara.scale.domain.SysScaleAnswer; +import org.dromara.scale.mapper.SysScaleAnswerMapper; +import org.dromara.scale.service.ISysScaleAnswerService; + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 选项信息Service业务层处理 + * + * @author jiangzhe + * @date 2024-03-29 + */ +@RequiredArgsConstructor +@Service +public class SysScaleAnswerServiceImpl implements ISysScaleAnswerService { + + private final SysScaleAnswerMapper baseMapper; + + /** + * 查询选项信息 + */ + @Override + public SysScaleAnswerVo queryById(Long answerId){ + return baseMapper.selectVoById(answerId); + } + + /** + * 查询选项信息列表 + */ + @Override + public TableDataInfo queryPageList(SysScaleAnswerBo bo, PageQuery pageQuery) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); + return TableDataInfo.build(result); + } + + /** + * 查询选项信息列表 + */ + @Override + public List queryList(SysScaleAnswerBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(SysScaleAnswerBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.eq(bo.getQuestionId() != null, SysScaleAnswer::getQuestionId, bo.getQuestionId()); + lqw.eq(StringUtils.isNotBlank(bo.getQuestionContent()), SysScaleAnswer::getQuestionContent, bo.getQuestionContent()); + lqw.eq(bo.getFactorId() != null, SysScaleAnswer::getFactorId, bo.getFactorId()); + lqw.eq(bo.getScaleId() != null, SysScaleAnswer::getScaleId, bo.getScaleId()); + lqw.eq(StringUtils.isNotBlank(bo.getAnswerOption()), SysScaleAnswer::getAnswerOption, bo.getAnswerOption()); + lqw.eq(bo.getScore() != null, SysScaleAnswer::getScore, bo.getScore()); + return lqw; + } + + /** + * 新增选项信息 + */ + @Override + public Boolean insertByBo(SysScaleAnswerBo bo) { + SysScaleAnswer add = MapstructUtils.convert(bo, SysScaleAnswer.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setAnswerId(add.getAnswerId()); + } + return flag; + } + + /** + * 修改选项信息 + */ + @Override + public Boolean updateByBo(SysScaleAnswerBo bo) { + SysScaleAnswer update = MapstructUtils.convert(bo, SysScaleAnswer.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(SysScaleAnswer 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/SysScaleFactorServiceImpl.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/SysScaleFactorServiceImpl.java new file mode 100644 index 0000000..2ca45d9 --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/SysScaleFactorServiceImpl.java @@ -0,0 +1,113 @@ +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.SysScaleFactorBo; +import org.dromara.scale.domain.vo.SysScaleFactorVo; +import org.dromara.scale.domain.SysScaleFactor; +import org.dromara.scale.mapper.SysScaleFactorMapper; +import org.dromara.scale.service.ISysScaleFactorService; + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 测评因子Service业务层处理 + * + * @author jiangzhe + * @date 2024-03-29 + */ +@RequiredArgsConstructor +@Service +public class SysScaleFactorServiceImpl implements ISysScaleFactorService { + + private final SysScaleFactorMapper baseMapper; + + /** + * 查询测评因子 + */ + @Override + public SysScaleFactorVo queryById(Long factorId){ + return baseMapper.selectVoById(factorId); + } + + /** + * 查询测评因子列表 + */ + @Override + public TableDataInfo queryPageList(SysScaleFactorBo bo, PageQuery pageQuery) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); + return TableDataInfo.build(result); + } + + /** + * 查询测评因子列表 + */ + @Override + public List queryList(SysScaleFactorBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(SysScaleFactorBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.like(StringUtils.isNotBlank(bo.getFactorName()), SysScaleFactor::getFactorName, bo.getFactorName()); + lqw.eq(bo.getScaleId() != null, SysScaleFactor::getScaleId, bo.getScaleId()); + lqw.eq(StringUtils.isNotBlank(bo.getScaleTitle()), SysScaleFactor::getScaleTitle, bo.getScaleTitle()); + lqw.eq(StringUtils.isNotBlank(bo.getFactorResult()), SysScaleFactor::getFactorResult, bo.getFactorResult()); + lqw.eq(bo.getFormulaId() != null, SysScaleFactor::getFormulaId, bo.getFormulaId()); + return lqw; + } + + /** + * 新增测评因子 + */ + @Override + public Boolean insertByBo(SysScaleFactorBo bo) { + SysScaleFactor add = MapstructUtils.convert(bo, SysScaleFactor.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setFactorId(add.getFactorId()); + } + return flag; + } + + /** + * 修改测评因子 + */ + @Override + public Boolean updateByBo(SysScaleFactorBo bo) { + SysScaleFactor update = MapstructUtils.convert(bo, SysScaleFactor.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(SysScaleFactor 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 new file mode 100644 index 0000000..757636a --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/SysScaleFormulaServiceImpl.java @@ -0,0 +1,111 @@ +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/SysScaleQuestionAnswerServiceImpl.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/SysScaleQuestionAnswerServiceImpl.java new file mode 100644 index 0000000..d6bf376 --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/SysScaleQuestionAnswerServiceImpl.java @@ -0,0 +1,122 @@ +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.SysScaleQuestionAnswerBo; +import org.dromara.scale.domain.vo.SysScaleQuestionAnswerVo; +import org.dromara.scale.domain.SysScaleQuestionAnswer; +import org.dromara.scale.mapper.SysScaleQuestionAnswerMapper; +import org.dromara.scale.service.ISysScaleQuestionAnswerService; + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 量问题选项Service业务层处理 + * + * @author jiangzhe + * @date 2024-03-29 + */ +@RequiredArgsConstructor +@Service +public class SysScaleQuestionAnswerServiceImpl implements ISysScaleQuestionAnswerService { + + private final SysScaleQuestionAnswerMapper baseMapper; + + /** + * 查询量问题选项 + */ + @Override + public SysScaleQuestionAnswerVo queryById(Long questionId){ + return baseMapper.selectVoById(questionId); + } + + /** + * 查询量问题选项列表 + */ + @Override + public TableDataInfo queryPageList(SysScaleQuestionAnswerBo bo, PageQuery pageQuery) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); + return TableDataInfo.build(result); + } + + /** + * 查询量问题选项列表 + */ + @Override + public List queryList(SysScaleQuestionAnswerBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(SysScaleQuestionAnswerBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.eq(bo.getScaleId() != null, SysScaleQuestionAnswer::getScaleId, bo.getScaleId()); + lqw.eq(StringUtils.isNotBlank(bo.getQuestionContent()), SysScaleQuestionAnswer::getQuestionContent, bo.getQuestionContent()); + lqw.eq(bo.getQuestionOrder() != null, SysScaleQuestionAnswer::getQuestionOrder, bo.getQuestionOrder()); + lqw.eq(StringUtils.isNotBlank(bo.getQuestionA()), SysScaleQuestionAnswer::getQuestionA, bo.getQuestionA()); + lqw.eq(StringUtils.isNotBlank(bo.getQuestionB()), SysScaleQuestionAnswer::getQuestionB, bo.getQuestionB()); + lqw.eq(StringUtils.isNotBlank(bo.getQuestionC()), SysScaleQuestionAnswer::getQuestionC, bo.getQuestionC()); + lqw.eq(StringUtils.isNotBlank(bo.getQuestionD()), SysScaleQuestionAnswer::getQuestionD, bo.getQuestionD()); + lqw.eq(StringUtils.isNotBlank(bo.getQuestionE()), SysScaleQuestionAnswer::getQuestionE, bo.getQuestionE()); + lqw.eq(bo.getScoreA() != null, SysScaleQuestionAnswer::getScoreA, bo.getScoreA()); + lqw.eq(bo.getScoreB() != null, SysScaleQuestionAnswer::getScoreB, bo.getScoreB()); + lqw.eq(bo.getScoreC() != null, SysScaleQuestionAnswer::getScoreC, bo.getScoreC()); + lqw.eq(bo.getScoreD() != null, SysScaleQuestionAnswer::getScoreD, bo.getScoreD()); + lqw.eq(bo.getScoreE() != null, SysScaleQuestionAnswer::getScoreE, bo.getScoreE()); + lqw.eq(bo.getFactorId() != null, SysScaleQuestionAnswer::getFactorId, bo.getFactorId()); + return lqw; + } + + /** + * 新增量问题选项 + */ + @Override + public Boolean insertByBo(SysScaleQuestionAnswerBo bo) { + SysScaleQuestionAnswer add = MapstructUtils.convert(bo, SysScaleQuestionAnswer.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setQuestionId(add.getQuestionId()); + } + return flag; + } + + /** + * 修改量问题选项 + */ + @Override + public Boolean updateByBo(SysScaleQuestionAnswerBo bo) { + SysScaleQuestionAnswer update = MapstructUtils.convert(bo, SysScaleQuestionAnswer.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(SysScaleQuestionAnswer 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/SysScaleQuestionServiceImpl.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/SysScaleQuestionServiceImpl.java new file mode 100644 index 0000000..aea3219 --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/SysScaleQuestionServiceImpl.java @@ -0,0 +1,114 @@ +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.SysScaleQuestionBo; +import org.dromara.scale.domain.vo.SysScaleQuestionVo; +import org.dromara.scale.domain.SysScaleQuestion; +import org.dromara.scale.mapper.SysScaleQuestionMapper; +import org.dromara.scale.service.ISysScaleQuestionService; + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 量问题内容Service业务层处理 + * + * @author jiangzhe + * @date 2024-03-29 + */ +@RequiredArgsConstructor +@Service +public class SysScaleQuestionServiceImpl implements ISysScaleQuestionService { + + private final SysScaleQuestionMapper baseMapper; + + /** + * 查询量问题内容 + */ + @Override + public SysScaleQuestionVo queryById(Long questionId){ + return baseMapper.selectVoById(questionId); + } + + /** + * 查询量问题内容列表 + */ + @Override + public TableDataInfo queryPageList(SysScaleQuestionBo bo, PageQuery pageQuery) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); + return TableDataInfo.build(result); + } + + /** + * 查询量问题内容列表 + */ + @Override + public List queryList(SysScaleQuestionBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(SysScaleQuestionBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.eq(bo.getScaleId() != null, SysScaleQuestion::getScaleId, bo.getScaleId()); + lqw.eq(StringUtils.isNotBlank(bo.getScaleTitle()), SysScaleQuestion::getScaleTitle, bo.getScaleTitle()); + lqw.eq(bo.getQuestionOrder() != null, SysScaleQuestion::getQuestionOrder, bo.getQuestionOrder()); + lqw.eq(StringUtils.isNotBlank(bo.getQuestionContent()), SysScaleQuestion::getQuestionContent, bo.getQuestionContent()); + lqw.eq(bo.getFactorId() != null, SysScaleQuestion::getFactorId, bo.getFactorId()); + lqw.like(StringUtils.isNotBlank(bo.getFactorName()), SysScaleQuestion::getFactorName, bo.getFactorName()); + return lqw; + } + + /** + * 新增量问题内容 + */ + @Override + public Boolean insertByBo(SysScaleQuestionBo bo) { + SysScaleQuestion add = MapstructUtils.convert(bo, SysScaleQuestion.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setQuestionId(add.getQuestionId()); + } + return flag; + } + + /** + * 修改量问题内容 + */ + @Override + public Boolean updateByBo(SysScaleQuestionBo bo) { + SysScaleQuestion update = MapstructUtils.convert(bo, SysScaleQuestion.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(SysScaleQuestion 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/SysScaleServiceImpl.java b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/SysScaleServiceImpl.java new file mode 100644 index 0000000..6ee67a3 --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/java/org/dromara/scale/service/impl/SysScaleServiceImpl.java @@ -0,0 +1,117 @@ +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.SysScaleBo; +import org.dromara.scale.domain.vo.SysScaleVo; +import org.dromara.scale.domain.SysScale; +import org.dromara.scale.mapper.SysScaleMapper; +import org.dromara.scale.service.ISysScaleService; + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 心理测评量Service业务层处理 + * + * @author jiangzhe + * @date 2024-03-29 + */ +@RequiredArgsConstructor +@Service +public class SysScaleServiceImpl implements ISysScaleService { + + private final SysScaleMapper baseMapper; + + /** + * 查询心理测评量 + */ + @Override + public SysScaleVo queryById(Long scaleId){ + return baseMapper.selectVoById(scaleId); + } + + /** + * 查询心理测评量列表 + */ + @Override + public TableDataInfo queryPageList(SysScaleBo bo, PageQuery pageQuery) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); + return TableDataInfo.build(result); + } + + /** + * 查询心理测评量列表 + */ + @Override + public List queryList(SysScaleBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(SysScaleBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.eq(StringUtils.isNotBlank(bo.getScaleTitle()), SysScale::getScaleTitle, bo.getScaleTitle()); + lqw.eq(StringUtils.isNotBlank(bo.getScaleDetails()), SysScale::getScaleDetails, bo.getScaleDetails()); + lqw.eq(StringUtils.isNotBlank(bo.getStatus()), SysScale::getStatus, bo.getStatus()); + lqw.eq(bo.getFormulaId() != null, SysScale::getFormulaId, bo.getFormulaId()); + lqw.eq(StringUtils.isNotBlank(bo.getScaleType()), SysScale::getScaleType, bo.getScaleType()); + lqw.eq(bo.getEarlyWarningScore() != null, SysScale::getEarlyWarningScore, bo.getEarlyWarningScore()); + lqw.eq(bo.getStartTime() != null, SysScale::getStartTime, bo.getStartTime()); + lqw.eq(StringUtils.isNotBlank(bo.getScaleTime()), SysScale::getScaleTime, bo.getScaleTime()); + lqw.eq(bo.getEndTime() != null, SysScale::getEndTime, bo.getEndTime()); + return lqw; + } + + /** + * 新增心理测评量 + */ + @Override + public Boolean insertByBo(SysScaleBo bo) { + SysScale add = MapstructUtils.convert(bo, SysScale.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setScaleId(add.getScaleId()); + } + return flag; + } + + /** + * 修改心理测评量 + */ + @Override + public Boolean updateByBo(SysScaleBo bo) { + SysScale update = MapstructUtils.convert(bo, SysScale.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(SysScale 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/resources/mapper/scale/SysScaleAnswerMapper.xml b/ruoyi-modules/rouyi-scale/src/main/resources/mapper/scale/SysScaleAnswerMapper.xml new file mode 100644 index 0000000..1e7418d --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/resources/mapper/scale/SysScaleAnswerMapper.xml @@ -0,0 +1,7 @@ + + + + + diff --git a/ruoyi-modules/rouyi-scale/src/main/resources/mapper/scale/SysScaleFactorMapper.xml b/ruoyi-modules/rouyi-scale/src/main/resources/mapper/scale/SysScaleFactorMapper.xml new file mode 100644 index 0000000..31aa8aa --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/resources/mapper/scale/SysScaleFactorMapper.xml @@ -0,0 +1,7 @@ + + + + + diff --git a/ruoyi-modules/rouyi-scale/src/main/resources/mapper/scale/SysScaleFormulaMapper.xml b/ruoyi-modules/rouyi-scale/src/main/resources/mapper/scale/SysScaleFormulaMapper.xml new file mode 100644 index 0000000..9e6537c --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/resources/mapper/scale/SysScaleFormulaMapper.xml @@ -0,0 +1,7 @@ + + + + + diff --git a/ruoyi-modules/rouyi-scale/src/main/resources/mapper/scale/SysScaleMapper.xml b/ruoyi-modules/rouyi-scale/src/main/resources/mapper/scale/SysScaleMapper.xml new file mode 100644 index 0000000..65a76a5 --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/resources/mapper/scale/SysScaleMapper.xml @@ -0,0 +1,7 @@ + + + + + diff --git a/ruoyi-modules/rouyi-scale/src/main/resources/mapper/scale/SysScaleQuestionAnswerMapper.xml b/ruoyi-modules/rouyi-scale/src/main/resources/mapper/scale/SysScaleQuestionAnswerMapper.xml new file mode 100644 index 0000000..8f49d35 --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/resources/mapper/scale/SysScaleQuestionAnswerMapper.xml @@ -0,0 +1,7 @@ + + + + + diff --git a/ruoyi-modules/rouyi-scale/src/main/resources/mapper/scale/SysScaleQuestionMapper.xml b/ruoyi-modules/rouyi-scale/src/main/resources/mapper/scale/SysScaleQuestionMapper.xml new file mode 100644 index 0000000..56d959f --- /dev/null +++ b/ruoyi-modules/rouyi-scale/src/main/resources/mapper/scale/SysScaleQuestionMapper.xml @@ -0,0 +1,7 @@ + + + + +