Selaa lähdekoodia

导入去空格

lenovodn 2 vuotta sitten
vanhempi
säilyke
ba037d2b51

+ 1 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/common/ExcelImportUtilService.java

@@ -105,6 +105,7 @@ public class ExcelImportUtilService<T extends Serializable, R extends Comparable
                 requiredCheck.apply(list);
                 if (fileDuplication) {
                     // 倒序去重
+
                     List<T> collect = list.stream().map(item -> item).collect(Collectors.toList());
                     Collections.reverse(collect);
                     list = collect.stream().collect(

+ 2 - 2
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/controller/MedicalInsRuleInfoController.java

@@ -237,7 +237,7 @@ public class MedicalInsRuleInfoController extends JeecgController<MedicalInsRule
         }
 
         MedicalInsRuleProject medicalInsRuleProject = new MedicalInsRuleProject();
-        medicalInsRuleProject.setMedicalInsRuleInfoId(id);
+//        medicalInsRuleProject.setMedicalInsRuleInfoId(id);
         if (StringUtils.hasText(projectName)) {
             medicalInsRuleProject.setProjectName(projectName.trim());
         }
@@ -250,8 +250,8 @@ public class MedicalInsRuleInfoController extends JeecgController<MedicalInsRule
         if (StringUtils.hasText(state)) {
             medicalInsRuleProject.setState(state);
         }
-
         QueryWrapper<MedicalInsRuleProject> queryWrapper = QueryGenerator.initQueryWrapper(medicalInsRuleProject, req.getParameterMap());
+        queryWrapper.eq("medical_ins_rule_info_id",id);
         Page<MedicalInsRuleProject> page = new Page<MedicalInsRuleProject>(pageNo, pageSize);
         IPage<MedicalInsRuleProject> pageList = projectService.page(page, queryWrapper);
 //        pageList = (IPage<MedicalInsRuleProject>) this.parseDictText(pageList);

+ 4 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/service/impl/MedicalInsRuleProjectServiceImpl.java

@@ -298,6 +298,10 @@ public class MedicalInsRuleProjectServiceImpl extends ServiceImpl<MedicalInsRule
                     log.error("导入文件没有数据,请检查");
                     return Result.ok("上传的文件没有数据,请检查");
                 }
+                //去空格
+                list.forEach(it->{
+                    DefaultExcelImportUtil.objectToTrim(it);
+                });
                 totalNumber = list.size();
                 //update-begin-author:taoyan date:20190528 for:批量插入数据
 

+ 59 - 1
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/utils/DefaultExcelImportUtil.java

@@ -2,9 +2,10 @@ package org.jeecg.modules.utils;
 
 import org.jeecgframework.poi.excel.entity.ImportParams;
 import org.jeecgframework.poi.excel.imports.ExcelImportServer;
+import java.lang.reflect.Field;
 
 import java.io.InputStream;
-import java.util.List;
+import java.util.*;
 
 /**
  * @author soft01
@@ -26,4 +27,61 @@ public class DefaultExcelImportUtil {
     public static <T> List<T> importExcel(InputStream inputstream, Class<?> pojoClass, ImportParams params) throws Exception {
         return new DefaultExcelImportServer().importExcelByIs(inputstream, pojoClass, params).getList();
     }
+
+    public static void objectToTrim(Object object) {
+        Map<String,String> map = new HashMap<>();
+        Field[] fields = getAllFields(object);
+        for (Field field : fields){
+            String type = field.getType().getCanonicalName();
+            if ("java.lang.String".equals(type)){
+                field.setAccessible(true);
+                Object getObject = null;
+
+                try {
+                    getObject = field.get(object);
+                } catch (IllegalAccessException e) {
+                    e.printStackTrace();
+                }
+
+                if (getObject != null) {
+                    String trim = getObject.toString().replace(" ","");
+                    map.put(field.getName(), trim);
+                }
+            }
+        }
+
+        for (Field field : fields) {
+            if (map.get(field.getName()) != null){
+                String s = map.get(field.getName());
+                field.setAccessible(true);
+                try {
+                    field.set(object, s);
+                } catch (IllegalAccessException e) {
+                    e.printStackTrace();
+                }
+            }
+        }
+    }
+
+    /**
+     * 获取子类和父类所有字段信息
+     */
+    private static Field[] getAllFields(Object object) {
+        Class clazz = object.getClass();
+
+        List<Field[]> fieldsList = new ArrayList<>();  // 保存属性对象数组到列表
+        while (clazz != null) {  // 遍历所有父类字节码对象
+            Field[] declaredFields = clazz.getDeclaredFields();  // 获取字节码对象的属性对象数组
+            fieldsList.add(declaredFields);
+
+            clazz = clazz.getSuperclass();  // 获得父类的字节码对象
+        }
+
+        List<Field> allFields = new ArrayList<>();
+        for (Field[] fields : fieldsList) {
+            allFields.addAll(Arrays.asList(fields));
+        }
+
+        return allFields.toArray(new Field[0]);
+    }
 }