Ver código fonte

学生成绩录入

dzx 11 meses atrás
pai
commit
99f162323b

+ 35 - 0
src/main/java/com/xjrsoft/module/veb/util/ImportExcelUtil.java

@@ -374,4 +374,39 @@ public class ImportExcelUtil {
         }
         return false; // 所有必需字段都不为空
     }
+
+
+    public static List<ImportConfig> getAllFieldCN(Class<?> clazz) {
+        List<ImportConfig> importConfigs = new ArrayList<>();
+
+        Field[] fields = clazz.getDeclaredFields();
+
+        int index = 0;
+        for (int i = 0; i < fields.length; i++) {
+            Field field = fields[i];
+            ImportConfig importConfig = new ImportConfig();
+            field.setAccessible(true); // 访问私有字段
+            if (field.isAnnotationPresent(Required.class)) {
+                Required required = field.getAnnotation(Required.class);
+                Boolean value = required.value();
+                importConfig.setRequired(value);
+            }
+
+            if (field.isAnnotationPresent(ExcelProperty.class)) {
+                ExcelProperty excelProperty = field.getAnnotation(ExcelProperty.class);
+                String[] annotationValues = excelProperty.value();
+                importConfig.setLabel(annotationValues.length > 0 ? annotationValues[0] : "");
+            }
+
+            if (field.isAnnotationPresent(ExcelIgnore.class)) {
+                continue;
+            }
+            importConfig.setFieldName(field.getName());
+            importConfig.setSortCode(index++);
+            importConfig.setWidth(0);
+            importConfigs.add(importConfig);
+        }
+
+        return importConfigs;
+    }
 }

+ 5 - 5
src/main/java/com/xjrsoft/module/xycxedu/service/impl/ExamSubjectScoreEnterServiceImpl.java

@@ -292,13 +292,13 @@ public class ExamSubjectScoreEnterServiceImpl extends MPJBaseServiceImpl<ExamSub
 
 
         Row row1 = sheet.createRow(rowNumber);
-        List<ImportConfig> importConfigs = ImportExcelUtil.allFields(clazz);
-        for(int i = 0; i < importConfigs.size(); i ++){
-            ImportConfig importConfig = importConfigs.get(i);
+        List<ImportConfig> importConfigs = ImportExcelUtil.getAllFieldCN(clazz);
+        List<ImportConfig> list = importConfigs.stream().filter(x -> x.getLabel() != null).collect(Collectors.toList());
+        for(int i = 0; i < list.size(); i ++){
+            ImportConfig importConfig = list.get(i);
             Cell rowcell = row1.createCell(i);
-            rowcell.setCellValue(importConfig.getFieldName());
+            rowcell.setCellValue(importConfig.getLabel());
             rowcell.setCellStyle(cellStyle);
-
         }
     }
 }

+ 2 - 2
src/main/java/com/xjrsoft/module/xycxedu/vo/ExamSubjectScoreEnterImportVo.java

@@ -14,7 +14,7 @@ import java.io.Serializable;
 * @Version 1.0
 */
 @Data
-public class ExamSubjectScoreEnterImportVo implements Serializable {
+public class ExamSubjectScoreEnterImportVo{
 
 
     @ApiModelProperty("主键id")
@@ -40,7 +40,7 @@ public class ExamSubjectScoreEnterImportVo implements Serializable {
     @ApiModelProperty("班级排名")
     private Integer classRanking;
 
-    @ExcelProperty("级排名")
+    @ExcelProperty("级排名")
     @ApiModelProperty("年级排名")
     private Integer gradeRanking;