Browse Source

规则列表添加一二级科室

zhaohan 5 months ago
parent
commit
70f87c9f1b

+ 15 - 1
ruoyi-modules-api/ruoyi-knowledge-api/src/main/java/org/ruoyi/domain/RuleFinal.java

@@ -1,10 +1,13 @@
 package org.ruoyi.domain;
 
 import com.baomidou.mybatisplus.annotation.*;
+import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
 import lombok.Data;
+import org.apache.ibatis.type.JdbcType;
 
 import java.io.Serial;
 import java.io.Serializable;
+import java.util.List;
 
 /**
  * 中联质控规则对象 think_quality_control_rule_sz
@@ -13,7 +16,7 @@ import java.io.Serializable;
  * @date 2025-11-03
  */
 @Data
-@TableName("think_quality_control_rule_sz")
+@TableName(value = "think_quality_control_rule_sz", autoResultMap = true)
 public class RuleFinal implements Serializable {
 
     @Serial
@@ -75,5 +78,16 @@ public class RuleFinal implements Serializable {
      */
     private Boolean isEnabled;
 
+    /**
+     * 主要部门
+     */
+    private String primaryDepartment;
+
+    /**
+     * 次要部门列表
+     */
+    @TableField(value = "secondary_department_list", typeHandler = JacksonTypeHandler.class)
+    private List<String> secondaryDepartmentList;
+
 }
 

+ 11 - 0
ruoyi-modules-api/ruoyi-knowledge-api/src/main/java/org/ruoyi/domain/bo/RuleFinalBo.java

@@ -12,6 +12,7 @@ import org.ruoyi.domain.RuleFinal;
 
 import java.io.Serial;
 import java.io.Serializable;
+import java.util.List;
 
 /**
  * 终末质控规则业务对象 think_rulefinal
@@ -84,5 +85,15 @@ public class RuleFinalBo implements Serializable {
      * 是否启用:0-禁用,1-启用
      */
     private Boolean isEnabled;
+
+    /**
+     * 主要部门
+     */
+    private String primaryDepartment;
+
+    /**
+     * 次要部门列表
+     */
+    private List<String> secondaryDepartmentList;
 }
 

+ 14 - 0
ruoyi-modules-api/ruoyi-knowledge-api/src/main/java/org/ruoyi/domain/vo/RuleFinalVo.java

@@ -8,6 +8,7 @@ import org.ruoyi.domain.RuleFinal;
 
 import java.io.Serial;
 import java.io.Serializable;
+import java.util.List;
 
 /**
  * 终末质控规则视图对象 think_rulefinal
@@ -88,6 +89,19 @@ public class RuleFinalVo implements Serializable {
      */
     @ExcelProperty(value = "是否启用")
     private Boolean isEnabled;
+
+    /**
+     * 主要部门
+     */
+    @ExcelProperty(value = "主要部门")
+    private String primaryDepartment;
+
+    /**
+     * 次要部门列表
+     */
+    @ExcelProperty(value = "次要部门列表")
+    private List<String> secondaryDepartmentList;
+
 }
 
 

+ 20 - 1
ruoyi-modules-api/ruoyi-knowledge-api/src/main/java/org/ruoyi/service/impl/RuleFinalServiceImpl.java

@@ -62,7 +62,10 @@ public class RuleFinalServiceImpl implements IRuleFinalService {
      */
     @Override
     public RuleFinalVo queryById(Integer id) {
-        return baseMapper.selectVoById(id);
+        log.info("查询 RuleFinalVo id={}", id);
+        RuleFinalVo vo = baseMapper.selectVoById(id);
+        log.info("查询结果 secondaryDepartmentList={}", vo.getSecondaryDepartmentList());
+        return vo;
     }
 
     /**
@@ -83,6 +86,20 @@ public class RuleFinalServiceImpl implements IRuleFinalService {
                 .eq(StringUtils.isNotBlank(bo.getHideDescription()), RuleFinal::getHideDescription, bo.getHideDescription())
                 .eq(bo.getIsEnabled() != null, RuleFinal::getIsEnabled, bo.getIsEnabled());
         IPage<RuleFinalVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
+
+        // 由于配置了 autoResultMap = true,JacksonTypeHandler 应该能正常工作
+        // 如果仍有问题,可以取消下面的注释启用手动修复
+        /*
+        result.getRecords().forEach(vo -> {
+            if (vo.getSecondaryDepartmentList() == null) {
+                RuleFinal entity = baseMapper.selectById(vo.getId());
+                if (entity != null) {
+                    vo.setSecondaryDepartmentList(entity.getSecondaryDepartmentList());
+                }
+            }
+        });
+        */
+
         return TableDataInfo.build(result);
     }
 
@@ -116,7 +133,9 @@ public class RuleFinalServiceImpl implements IRuleFinalService {
      */
     @Override
     public Boolean insertByBo(RuleFinalBo bo) {
+        log.info("保存 RuleFinalBo: secondaryDepartmentList={}", bo.getSecondaryDepartmentList());
         RuleFinal add = MapstructUtils.convert(bo, RuleFinal.class);
+        log.info("转换后 RuleFinal: secondaryDepartmentList={}", add.getSecondaryDepartmentList());
         // 设置默认值
         if (add.getIsEnabled() == null) {
             add.setIsEnabled(true);