Skip to content

Commit 98c41c1

Browse files
committed
feat : 게임 ui 생성 완료
1 parent 50364d5 commit 98c41c1

File tree

11 files changed

+1130
-17
lines changed

11 files changed

+1130
-17
lines changed

src/main/java/org/ezcode/codetest/application/game/dto/response/encounter/EncounterResponse.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
@Schema(description = "인카운터 조회 요청에 대한 응답")
88
public record EncounterResponse(
99

10-
@Schema(description = "인카운터 ID")
10+
@Schema(description = "인카운터 ID(jwt token)")
1111
Long encounterId,
1212

1313
@Schema(description = "인카운터 카테고리")

src/main/java/org/ezcode/codetest/application/game/dto/response/encounter/MatchingEncounterResponse.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
public record MatchingEncounterResponse(
1212

1313
@Schema(description = "인카운터 ID(jwt 토큰)")
14-
String id,
14+
String encounterId,
1515

1616
@Schema(description = "인카운터 카테고리")
1717
EncounterCategory encounterCategory,
@@ -33,7 +33,7 @@ public static MatchingEncounterResponse from(RandomEncounter encounter, String e
3333

3434
return MatchingEncounterResponse.builder()
3535
.encounterCategory(encounter.getEncounterCategory())
36-
.id(encounterIdToken)
36+
.encounterId(encounterIdToken)
3737
.name(encounter.getName())
3838
.encounterText(encounter.getEncounterText())
3939
.choice1Text(encounter.getChoice1Text())

src/main/java/org/ezcode/codetest/common/security/util/JwtUtil.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ public String createGameToken(Long eventId) {
7171

7272
return Jwts.builder()
7373
.setSubject(String.valueOf(eventId))
74-
.setExpiration(new Date(date.getTime() + GAME_TOKEN_EXPIRATION_TIME * 1000L))
74+
.setExpiration(new Date(date.getTime() + GAME_TOKEN_EXPIRATION_TIME * 2000L))
7575
.setIssuedAt(date)
7676
.signWith(key, signatureAlgorithm)
7777
.compact();

src/main/java/org/ezcode/codetest/common/security/util/SecurityPath.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ public class SecurityPath {
2424
"/webjars/**",
2525
"/searching",
2626
"/css/**", //html 화면 구성 접근
27-
"/images/**"
27+
"/images/**",
28+
"/gaming"
2829
};
2930
}

src/main/java/org/ezcode/codetest/presentation/game/play/GamePlayController.java

Lines changed: 11 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@
2525
import org.springframework.security.core.annotation.AuthenticationPrincipal;
2626
import org.springframework.web.bind.annotation.GetMapping;
2727
import org.springframework.web.bind.annotation.PatchMapping;
28-
import org.springframework.web.bind.annotation.PathVariable;
2928
import org.springframework.web.bind.annotation.PostMapping;
3029
import org.springframework.web.bind.annotation.RequestBody;
3130
import org.springframework.web.bind.annotation.RequestMapping;
@@ -83,7 +82,7 @@ public ResponseEntity<CharacterStatusResponse> CharacterStatusOpen(
8382
}
8483
)
8584
@ResponseMessage("정상적으로 캐릭터 보유 스킬이 조회되었습니다.")
86-
@GetMapping("/skills/unequipped")
85+
@GetMapping("/characters/skills/unequipped")
8786
public ResponseEntity<List<SkillResponse>> CharacterSkillsOpen(
8887
@AuthenticationPrincipal AuthUser authUser
8988
) {
@@ -98,7 +97,7 @@ public ResponseEntity<List<SkillResponse>> CharacterSkillsOpen(
9897
}
9998
)
10099
@ResponseMessage("정상적으로 아이템 뽑기에 성공하였습니다.")
101-
@PostMapping("/items/gambling")
100+
@PostMapping("/characters/items/gamble")
102101
public ResponseEntity<ItemGamblingResponse> gamblingForItem(
103102
@AuthenticationPrincipal AuthUser authUser,
104103
@RequestBody @Valid ItemGamblingRequest request
@@ -115,7 +114,7 @@ public ResponseEntity<ItemGamblingResponse> gamblingForItem(
115114
}
116115
)
117116
@ResponseMessage("정상적으로 스킬 뽑기에 성공하였습니다.")
118-
@PostMapping("/skills/gambling")
117+
@PostMapping("/characters/skills/gambling")
119118
public ResponseEntity<SkillGamblingResponse> gamblingForSkill(
120119
@AuthenticationPrincipal AuthUser authUser
121120
) {
@@ -131,7 +130,7 @@ public ResponseEntity<SkillGamblingResponse> gamblingForSkill(
131130
}
132131
)
133132
@ResponseMessage("정상적으로 인벤토리가 조회되었습니다.")
134-
@GetMapping("/inventories")
133+
@GetMapping("/characters/inventories")
135134
public ResponseEntity<List<ItemResponse>> inventoryOpen(
136135
@AuthenticationPrincipal AuthUser authUser
137136
) {
@@ -147,7 +146,7 @@ public ResponseEntity<List<ItemResponse>> inventoryOpen(
147146
}
148147
)
149148
@ResponseMessage("정상적으로 아이템이 장착되었습니다.")
150-
@PatchMapping("/items/equip")
149+
@PatchMapping("/characters/items/equip")
151150
public ResponseEntity<Void> equipItem(
152151
@AuthenticationPrincipal AuthUser authUser,
153152
@RequestBody @Valid ItemEquipRequest request
@@ -165,7 +164,7 @@ public ResponseEntity<Void> equipItem(
165164
}
166165
)
167166
@ResponseMessage("정상적으로 스킬이 장착되었습니다.")
168-
@PatchMapping("/skills/equip")
167+
@PatchMapping("/characters/skills/equip")
169168
public ResponseEntity<Void> equipSkill(
170169
@AuthenticationPrincipal AuthUser authUser,
171170
@RequestBody @Valid SkillEquipRequest request
@@ -183,7 +182,7 @@ public ResponseEntity<Void> equipSkill(
183182
}
184183
)
185184
@ResponseMessage("정상적으로 스킬 장착이 해제되었습니다.")
186-
@PatchMapping("/skills/unequip")
185+
@PatchMapping("/characters/skills/unequip")
187186
public ResponseEntity<Void> unEquipSkill(
188187
@AuthenticationPrincipal AuthUser authUser,
189188
@RequestBody @Valid SkillUnEquipRequest request
@@ -201,7 +200,7 @@ public ResponseEntity<Void> unEquipSkill(
201200
}
202201
)
203202
@ResponseMessage("정상적으로 배틀이 완료되었습니다.")
204-
@PostMapping("/battles")
203+
@PostMapping("/characters/battles")
205204
public ResponseEntity<BattleHistoryResponse> battle(
206205
@AuthenticationPrincipal AuthUser authUser,
207206
@RequestBody @Valid BattleRequest request
@@ -218,7 +217,7 @@ public ResponseEntity<BattleHistoryResponse> battle(
218217
}
219218
)
220219
@ResponseMessage("정상적으로 배틀 매칭에 성공하였습니다.")
221-
@GetMapping("/battles/matching")
220+
@GetMapping("/characters/battles/matching")
222221
public ResponseEntity<MatchingBattleResponse> randomBattleMatching(
223222
@AuthenticationPrincipal AuthUser authUser
224223
) {
@@ -234,7 +233,7 @@ public ResponseEntity<MatchingBattleResponse> randomBattleMatching(
234233
}
235234
)
236235
@ResponseMessage("정상적으로 인카운터 매칭에 성공하였습니다.")
237-
@GetMapping("/encounters/matching")
236+
@GetMapping("/characters/encounters/matching")
238237
public ResponseEntity<MatchingEncounterResponse> randomEncounterMatching(
239238
@AuthenticationPrincipal AuthUser authUser
240239
) {
@@ -250,7 +249,7 @@ public ResponseEntity<MatchingEncounterResponse> randomEncounterMatching(
250249
}
251250
)
252251
@ResponseMessage("정상적으로 인카운터 선택지가 결정되었습니다.")
253-
@PostMapping("/encounters/choice")
252+
@PostMapping("/characters/encounters/choice")
254253
public ResponseEntity<EncounterResultResponse> encounterChoice(
255254
@AuthenticationPrincipal AuthUser authUser,
256255
@RequestBody @Valid EncounterChoiceRequest request
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
package org.ezcode.codetest.presentation.game.play;
2+
3+
import org.ezcode.codetest.domain.game.service.CharacterStatusDomainService;
4+
import org.ezcode.codetest.domain.problem.model.enums.Category;
5+
import org.ezcode.codetest.domain.user.model.entity.AuthUser;
6+
import org.springframework.http.HttpStatus;
7+
import org.springframework.http.ResponseEntity;
8+
import org.springframework.security.core.annotation.AuthenticationPrincipal;
9+
import org.springframework.transaction.annotation.Transactional;
10+
import org.springframework.web.bind.annotation.GetMapping;
11+
import org.springframework.web.bind.annotation.RequestMapping;
12+
import org.springframework.web.bind.annotation.RestController;
13+
14+
import lombok.RequiredArgsConstructor;
15+
16+
@RestController
17+
@RequiredArgsConstructor
18+
@RequestMapping("/api/games/levels")
19+
public class TestGamePlayController {
20+
21+
private final CharacterStatusDomainService statusDomainService;
22+
23+
@GetMapping("/characters")
24+
@Transactional
25+
public ResponseEntity<Void> CharacterLevelUpTest(
26+
@AuthenticationPrincipal AuthUser authUser
27+
) {
28+
29+
Category randomCat = Category.values()[java.util.concurrent.ThreadLocalRandom.current().nextInt(Category.values().length)];
30+
31+
statusDomainService.gameCharacterLevelUp(authUser.getId(), true, randomCat.getDescription());
32+
33+
System.out.println(randomCat.getDescription() + "레벨업");
34+
35+
return ResponseEntity.status(HttpStatus.OK).build();
36+
}
37+
}
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
package org.ezcode.codetest.presentation.game.view;
2+
3+
import org.springframework.stereotype.Controller;
4+
import org.springframework.web.bind.annotation.GetMapping;
5+
6+
import lombok.RequiredArgsConstructor;
7+
8+
@RequiredArgsConstructor
9+
@Controller
10+
public class GameViewController {
11+
12+
@GetMapping("/gaming")
13+
public String getChattingPage() {
14+
15+
return "game-page";
16+
}
17+
}
611 KB
Loading
142 KB
Loading
122 KB
Loading

0 commit comments

Comments
 (0)