ソースを参照

fix:
修复导出时若字典不存在空指针的错误

18339543638 2 年 前
コミット
5cb7196fd5

+ 4 - 1
tr-modules-api/tr-module-export-api/src/main/java/cn/tr/module/export/converter/DictSelectConverter.java

@@ -5,6 +5,8 @@ import cn.hutool.core.lang.Pair;
 import cn.hutool.extra.spring.SpringUtil;
 import cn.tr.module.export.handler.AbstractSelectConverter;
 import cn.tr.module.api.sys.dict.SysDictApi;
+
+import java.util.ArrayList;
 import java.util.Collection;
 import java.util.List;
 
@@ -25,7 +27,8 @@ public class DictSelectConverter extends AbstractSelectConverter<String> {
     @Override
     public List<Pair<String, String>> doComboList(Collection<String> params) {
         String dictCode = CollectionUtil.getFirst(params);
-        return dictApi.findAllChildrenDictsByCode(dictCode);
+        List<Pair<String, String>> result = dictApi.findAllChildrenDictsByCode(dictCode);
+        return CollectionUtil.isNotEmpty(result)?result:new ArrayList<>();
     }
 
     @Override

+ 2 - 1
tr-modules-api/tr-module-export-api/src/main/java/cn/tr/module/export/handler/NoneSelectConverter.java

@@ -2,6 +2,7 @@ package cn.tr.module.export.handler;
 
 import cn.hutool.core.lang.Pair;
 
+import java.util.ArrayList;
 import java.util.Collection;
 import java.util.List;
 
@@ -16,7 +17,7 @@ public class NoneSelectConverter extends AbstractSelectConverter<Void> {
 
     @Override
     public List<Pair<Void, String>> doComboList(Collection<String> params) {
-        return null;
+        return new ArrayList<>();
     }
 
     @Override

+ 1 - 1
tr-modules/tr-module-system/src/main/java/cn/tr/module/sys/log/dto/SysLoginLogExcelDTO.java

@@ -34,7 +34,7 @@ public class SysLoginLogExcelDTO {
     private String javaMethod;
 
     @ExcelProperty(value = "操作日志类型",converter = DictSelectConverter.class)
-    @ExcelPropertySupport(select = @ExcelSelect(param = "SysOperationLogExcelDTO"))
+    @ExcelPropertySupport(select = @ExcelSelect(param = "sys_login_log_type"))
     private String type;
 
     @ExcelProperty(value = "操作时间")