xiongzhu 3 лет назад
Родитель
Сommit
8e0640da41
1 измененных файлов с 8 добавлено и 1 удалено
  1. 8 1
      src/main/java/com/izouma/yags/service/RoomService.java

+ 8 - 1
src/main/java/com/izouma/yags/service/RoomService.java

@@ -28,6 +28,7 @@ import javax.imageio.ImageIO;
 import javax.persistence.criteria.Predicate;
 import java.io.ByteArrayOutputStream;
 import java.io.IOException;
+import java.math.BigDecimal;
 import java.net.URL;
 import java.time.LocalDateTime;
 import java.util.*;
@@ -452,6 +453,7 @@ public class RoomService {
             } else {
                 j.setStatus(JoinRoomStatus.LOSE);
             }
+            joinRoomRepo.save(j);
         }
         room.setWinTeam(team);
         room.setStatus(RoomStatus.FINISH);
@@ -478,10 +480,15 @@ public class RoomService {
             if (j.getTeam().equals(team)) {
                 j.setStatus(JoinRoomStatus.WIN);
                 userBalanceService.modifyBalance(j.getUserId(), room.getBonus(), Constants.BalanceDesc.BONUS);
+                userBalanceService.modifyBalance(j.getUserId(), room.getBonus().multiply(new BigDecimal("0.5")),
+                        Constants.BalanceDesc.BONUS);
             } else {
                 j.setStatus(JoinRoomStatus.LOSE);
-                userBalanceService.modifyBalance(j.getUserId(), room.getBonus(), Constants.BalanceDesc.BONUS);
+                userBalanceService.modifyBalance(j.getUserId(), room.getBonus().negate(), Constants.BalanceDesc.BONUS);
+                userBalanceService.modifyBalance(j.getUserId(), room.getBonus().multiply(new BigDecimal("0.5")).negate(),
+                        Constants.BalanceDesc.BONUS);
             }
+            joinRoomRepo.save(j);
         }
         room.setStatus(RoomStatus.FINISH);
         room.setFinishAt(LocalDateTime.now());