Эх сурвалжийг харах

refactor(game): 优化项目中的成绩计算和数据映射逻辑

- 移除 BaseEntity 继承和相关序列化注解
- 合并 shiwuA 和 shiwuB 字段为单一的 shiwu 字段
- 更新成绩类型字段注释以提供更清晰的说明
- 在时间格式转换时增加成绩类型判断条件
- 简化客户端服务实现中的数据对象映射逻辑
zhou 1 долоо хоног өмнө
parent
commit
61ca228d24

+ 2 - 1
ruoyi-modules/ruoyi-game-event/src/main/java/org/dromara/system/domain/GameEventProject.java

@@ -96,7 +96,8 @@ public class GameEventProject extends TenantEntity {
     private String orderType;
 
     /**
-     * 计算规则
+     * 成绩类型 --参考字典game_score_type
+     * (如1-计时类;2-距离类;3-单次计数类;4-多次计数类;5-排名类;6-远度距离类;7-高度距离类)
      */
     private String scoreRule;
 

+ 2 - 11
ruoyi-modules/ruoyi-game-event/src/main/java/org/dromara/system/domain/bo/GameAppScoreDetailBo.java

@@ -2,13 +2,9 @@ package org.dromara.system.domain.bo;
 
 import jakarta.validation.constraints.NotNull;
 import lombok.Data;
-import lombok.EqualsAndHashCode;
 import org.dromara.common.core.validate.AddGroup;
 import org.dromara.common.core.validate.EditGroup;
-import org.dromara.common.mybatis.core.domain.BaseEntity;
 
-import java.io.Serial;
-import java.io.Serializable;
 import java.math.BigDecimal;
 
 /**
@@ -53,14 +49,9 @@ public class GameAppScoreDetailBo {
     private BigDecimal num;
 
     /**
-     * 单次失误次数A
+     * 单次失误次数
      */
-    private Integer shiwuA;
-
-    /**
-     * 单次失误次数B
-     */
-    private Integer shiwuB;
+    private Integer shiwu;
 
     /**
      * 是否有效(0有效 1犯规/无效)

+ 2 - 3
ruoyi-modules/ruoyi-game-event/src/main/java/org/dromara/system/service/impl/app/ToClientServiceImpl.java

@@ -663,7 +663,7 @@ public class ToClientServiceImpl implements IToClientService {
         }
 
         // 2. 处理时间格式转换
-        if (StringUtils.isNotBlank(project.getTimingFormat())) {
+        if (StringUtils.isNotBlank(project.getTimingFormat()) && project.getScoreRule().equals("1")) {
             list.forEach(item -> {
                 if (StringUtils.isNotBlank(item.getScore())) {
                     item.setScore(
@@ -707,8 +707,7 @@ public class ToClientServiceImpl implements IToClientService {
                 dbo.setDetailId(d.getDetailId());
                 dbo.setAttemptIndex(d.getAttemptIndex());
                 dbo.setPerformanceValue(d.getNum());
-                dbo.setFaultA(d.getShiwuA());
-                dbo.setFaultB(d.getShiwuB());
+                dbo.setFaultA(d.getShiwu());
                 return dbo;
             }).toList();
             scoreBo.setDetails(details);