Bläddra i källkod

fix: 成绩收集支持理论成绩+图像成绩双字段导入

- LedgerExamScore: score字段拆分为theoryScore/imageScore
- LedgerExamScoreMapper: resultMap和selectVo更新对应列
- LedgerCombinedImportServiceImpl: doExamScore读取col3(理论)和col4(图像)
- LedgerSyncServiceImpl: 同步getScore()改为getTheoryScore()

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
simonlll 1 månad sedan
förälder
incheckning
f6f1346835

+ 10 - 4
airport-ledger/src/main/java/com/sundot/airport/ledger/domain/LedgerExamScore.java

@@ -42,8 +42,11 @@ public class LedgerExamScore extends BaseEntity {
42 42
     @Excel(name = "期数")
43 43
     private String examPeriod;
44 44
 
45
-    @Excel(name = "成绩")
46
-    private BigDecimal score;
45
+    @Excel(name = "理论成绩")
46
+    private BigDecimal theoryScore;
47
+
48
+    @Excel(name = "图像成绩")
49
+    private BigDecimal imageScore;
47 50
 
48 51
     @Excel(name = "备注")
49 52
     private String remark;
@@ -77,8 +80,11 @@ public class LedgerExamScore extends BaseEntity {
77 80
     public String getExamPeriod() { return examPeriod; }
78 81
     public void setExamPeriod(String examPeriod) { this.examPeriod = examPeriod; }
79 82
 
80
-    public BigDecimal getScore() { return score; }
81
-    public void setScore(BigDecimal score) { this.score = score; }
83
+    public BigDecimal getTheoryScore() { return theoryScore; }
84
+    public void setTheoryScore(BigDecimal theoryScore) { this.theoryScore = theoryScore; }
85
+
86
+    public BigDecimal getImageScore() { return imageScore; }
87
+    public void setImageScore(BigDecimal imageScore) { this.imageScore = imageScore; }
82 88
 
83 89
     public String getRemark() { return remark; }
84 90
     public void setRemark(String remark) { this.remark = remark; }

+ 2 - 1
airport-ledger/src/main/java/com/sundot/airport/ledger/service/impl/LedgerCombinedImportServiceImpl.java

@@ -444,7 +444,8 @@ public class LedgerCombinedImportServiceImpl implements ILedgerCombinedImportSer
444 444
             o.setExamCategory(str(c, 0));
445 445
             o.setExamPeriod(str(c, 1));
446 446
             o.setPersonName(str(c, 2));
447
-            o.setScore(decimal(c, 3));
447
+            o.setTheoryScore(decimal(c, 3));
448
+            o.setImageScore(decimal(c, 4));
448 449
             o.setTeamName(str(c, 5));
449 450
             o.setRemark(str(c, 7));
450 451
             o.setImportBatch(batchNo);

+ 2 - 2
airport-ledger/src/main/java/com/sundot/airport/ledger/service/impl/LedgerSyncServiceImpl.java

@@ -399,8 +399,8 @@ public class LedgerSyncServiceImpl implements ILedgerSyncService {
399 399
             String src = "exam_score:" + row.getId();
400 400
             if (existsBySrc(src)) { skip++; continue; }
401 401
             if (!hasName(row.getPersonName())) { skip++; continue; }
402
-            if (row.getScore() == null) { skip++; continue; }
403
-            double score = row.getScore().doubleValue();
402
+            if (row.getTheoryScore() == null) { skip++; continue; }
403
+            double score = row.getTheoryScore().doubleValue();
404 404
             // 仅≥98分加分;补考扣分规则暂无台账,不处理
405 405
             if (score < 98) { skip++; continue; }
406 406
             // 按科目区分L3(图像成绩→开机员能力,其余→理论)

+ 3 - 2
airport-ledger/src/main/resources/mapper/ledger/LedgerExamScoreMapper.xml

@@ -11,7 +11,8 @@
11 11
         <result property="personName" column="person_name" />
12 12
         <result property="examCategory" column="exam_category" />
13 13
         <result property="examPeriod" column="exam_period" />
14
-        <result property="score" column="score" />
14
+        <result property="theoryScore" column="theory_score" />
15
+        <result property="imageScore"  column="image_score"  />
15 16
         <result property="remark" column="remark" />
16 17
         <result property="importBatch" column="import_batch" />
17 18
         <result property="sourceType" column="source_type" />        <result property="createBy"   column="create_by"   />
@@ -21,7 +22,7 @@
21 22
     </resultMap>
22 23
 
23 24
     <sql id="selectVo">
24
-        SELECT id, exam_date,dept_name,team_name,group_name,person_name,exam_category,exam_period,score,remark,import_batch,source_type, create_by, create_time, update_by, update_time
25
+        SELECT id, exam_date, dept_name, team_name, group_name, person_name, exam_category, exam_period, theory_score, image_score, remark, import_batch, source_type, create_by, create_time, update_by, update_time
25 26
         FROM ledger_exam_score
26 27
         WHERE del_flag = '0'
27 28
     </sql>