Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v1.1.4 버전 배포 #265

Merged
merged 9 commits into from
Nov 2, 2022
14 changes: 14 additions & 0 deletions src/main/java/com/ceos/bankids/controller/ChallengeController.java
Original file line number Diff line number Diff line change
Expand Up @@ -186,4 +186,18 @@ public CommonResponse<ProgressDTO> patchProgress(@AuthenticationPrincipal User a

return CommonResponse.onSuccess(progressDTO);
}

// @ApiOperation(value = "자녀 측 돈길 히스토리")
// @GetMapping(value = "/history", produces = "application/json; charset=utf-8")
// public CommonResponse<List<ChallengeDTO>> getChallengeHistory(
// @AuthenticationPrincipal User authUser, @RequestParam String status) {
//
// log.info("api = 자녀 측 돈길 히스토리 가져오기, user = {}, status = {}", authUser, status);
//
// List<ChallengeDTO> challengeHistoryDTOList = challengeMapper.readChallengeHistoryMapper(
// authUser,
// status);
//
// return CommonResponse.onSuccess(challengeHistoryDTOList);
// }
}
8 changes: 3 additions & 5 deletions src/main/java/com/ceos/bankids/domain/Challenge.java
Original file line number Diff line number Diff line change
Expand Up @@ -29,8 +29,6 @@
import org.hibernate.annotations.ColumnDefault;
import org.hibernate.annotations.DynamicInsert;
import org.hibernate.annotations.DynamicUpdate;
import org.hibernate.annotations.SQLDelete;
import org.hibernate.annotations.Where;

@Getter
@Setter
Expand All @@ -41,8 +39,8 @@
@DynamicInsert
@DynamicUpdate
@ToString(exclude = {"progressList", "challengeUserList"})
@Where(clause = "deleted_at is Null")
@SQLDelete(sql = "UPDATE challenge SET deleted_at = CURRENT_TIMESTAMP where id = ?")
//@Where(clause = "deleted_at is Null")
//@SQLDelete(sql = "UPDATE challenge SET deleted_at = CURRENT_TIMESTAMP where id = ?")
public class Challenge extends AbstractTimestamp {

@Id
Expand Down Expand Up @@ -84,7 +82,7 @@ public class Challenge extends AbstractTimestamp {

@Column()
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd hh:mm:ss", timezone = "Asia/Seoul")
private Timestamp deleted_at;
private Timestamp deletedAt;

@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "targetItemId", nullable = false)
Expand Down
6 changes: 2 additions & 4 deletions src/main/java/com/ceos/bankids/domain/ChallengeUser.java
Original file line number Diff line number Diff line change
Expand Up @@ -18,17 +18,15 @@
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import org.hibernate.annotations.SQLDelete;
import org.hibernate.annotations.Where;

@Entity
@Getter
@Setter
@Table(name = "ChallengeUser")
@NoArgsConstructor
@EqualsAndHashCode(of = "id")
@Where(clause = "deleted_at is Null")
@SQLDelete(sql = "UPDATE challenge_user SET deleted_at = CURRENT_TIMESTAMP where id = ?")
//@Where(clause = "deleted_at is Null")
//@SQLDelete(sql = "UPDATE challenge_user SET deleted_at = CURRENT_TIMESTAMP where id = ?")
public class ChallengeUser extends AbstractTimestamp {

@Id
Expand Down
6 changes: 2 additions & 4 deletions src/main/java/com/ceos/bankids/domain/Comment.java
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,6 @@
import lombok.NoArgsConstructor;
import lombok.Setter;
import org.hibernate.annotations.DynamicUpdate;
import org.hibernate.annotations.SQLDelete;
import org.hibernate.annotations.Where;

@Getter
@Setter
Expand All @@ -30,8 +28,8 @@
@NoArgsConstructor
@DynamicUpdate
@EqualsAndHashCode(of = "id")
@Where(clause = "deleted_at is Null")
@SQLDelete(sql = "UPDATE comment SET deleted_at = CURRENT_TIMESTAMP where id = ?")
//@Where(clause = "deleted_at is Null")
//@SQLDelete(sql = "UPDATE comment SET deleted_at = CURRENT_TIMESTAMP where id = ?")
public class Comment {

@Id
Expand Down
6 changes: 2 additions & 4 deletions src/main/java/com/ceos/bankids/domain/Progress.java
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,6 @@
import lombok.Setter;
import org.hibernate.annotations.ColumnDefault;
import org.hibernate.annotations.DynamicInsert;
import org.hibernate.annotations.SQLDelete;
import org.hibernate.annotations.Where;

@Entity
@Getter
Expand All @@ -29,8 +27,8 @@
@NoArgsConstructor
@DynamicInsert
@EqualsAndHashCode(of = "id")
@Where(clause = "deleted_at is Null")
@SQLDelete(sql = "UPDATE progress SET deleted_at = CURRENT_TIMESTAMP where id = ?")
//@Where(clause = "deleted_at is Null")
//@SQLDelete(sql = "UPDATE progress SET deleted_at = CURRENT_TIMESTAMP where id = ?")
public class Progress extends AbstractTimestamp {

@Id
Expand Down
8 changes: 8 additions & 0 deletions src/main/java/com/ceos/bankids/mapper/ChallengeMapper.java
Original file line number Diff line number Diff line change
Expand Up @@ -336,6 +336,14 @@ public ProgressDTO updateProgressMapper(User authUser, Long challengeId) {
return progressDTO;
}

// Todo: 자녀 측 돈길 히스토리 API Mapper
@Transactional
public List<ChallengeDTO> readChallengeHistoryMapper(User authUser, String status) {

userRoleValidation(authUser, true);
return challengeService.readChallengeHistory(status);
}

// 일요일 처리 validation
private void sundayValidation() {
LocalDateTime now = LocalDateTime.now();
Expand Down
2 changes: 1 addition & 1 deletion src/main/java/com/ceos/bankids/mapper/UserMapper.java
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ public UserDTO updateUserType(User user, UserTypeRequest userTypeRequest) {
}

// 날짜가 입력됐다면 유효한지 검사
if (userTypeRequest.getBirthday() != "") {
if (!userTypeRequest.getBirthday().equals("99999999")) {
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMdd");
dateFormat.setLenient(false);
try {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,4 +10,9 @@ public interface ChallengeRepository extends JpaRepository<Challenge, Long> {
public Optional<Challenge> findById(Long id);

public List<Challenge> findByContractUserId(Long contractUserId);

public List<Challenge> findAllByDeletedAtIsNotNullOrderByIdDesc();

public List<Challenge> findByChallengeStatusAndDeletedAtIsNotNullOrderByIdDesc(
String challengeStatus);
}
Original file line number Diff line number Diff line change
Expand Up @@ -54,4 +54,5 @@ public KidAchievedChallengeListDTO readKidAchievedChallenge(User user,
public ChallengeCompleteDeleteByKidMapperDTO challengeCompleteDeleteByKid(
List<Challenge> challengeList);

public List<ChallengeDTO> readChallengeHistory(String status);
}
23 changes: 23 additions & 0 deletions src/main/java/com/ceos/bankids/service/ChallengeServiceImpl.java
Original file line number Diff line number Diff line change
Expand Up @@ -109,6 +109,7 @@ public ChallengeDTO deleteWalkingChallenge(User user, ChallengeUser challengeUse
return new ChallengeDTO(deleteChallenge, null, null);
}

@Transactional
@Override
public ChallengeDTO deleteRejectedChallenge(User user, ChallengeUser challengeUser) {
Challenge deleteChallenge = challengeUser.getChallenge();
Expand All @@ -119,6 +120,7 @@ public ChallengeDTO deleteRejectedChallenge(User user, ChallengeUser challengeUs
return new ChallengeDTO(deleteChallenge, null, null);
}

@Transactional
@Override
public ChallengeDTO deletePendingChallenge(User user, ChallengeUser challengeUser) {
Challenge deleteChallenge = challengeUser.getChallenge();
Expand Down Expand Up @@ -379,6 +381,27 @@ public ChallengeCompleteDeleteByKidMapperDTO challengeCompleteDeleteByKid(
dadRequest[0], dadRequest[1]);
}

@Transactional(readOnly = true)
@Override
public List<ChallengeDTO> readChallengeHistory(String status) {

List<Challenge> challengeHistoryList =
status == null ? challengeRepository.findAllByDeletedAtIsNotNullOrderByIdDesc()
: challengeRepository.findByChallengeStatusAndDeletedAtIsNotNullOrderByIdDesc(
status);
return challengeHistoryList.stream().map(challenge -> {
if (challenge.getChallengeStatus() == ChallengeStatus.ACHIEVED
|| challenge.getChallengeStatus() == ChallengeStatus.FAILED) {
List<ProgressDTO> progressDTOList = challenge.getProgressList().stream()
.map(progress -> new ProgressDTO(progress, challenge)).collect(
Collectors.toList());
return new ChallengeDTO(challenge, progressDTOList, null);
} else {
return new ChallengeDTO(challenge, null, challenge.getComment());
}
}).collect(Collectors.toList());
}

@Transactional
public void challengeCompleteDeleteByParent(List<ChallengeUser> challengeUserList) {

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -123,7 +123,7 @@ public void testIfUserTypePatchWithoutBirthdaySucceedReturnResult() {
.provider("kakao")
.refreshToken("token")
.build();
UserTypeRequest userTypeRequest = new UserTypeRequest("", false, true);
UserTypeRequest userTypeRequest = new UserTypeRequest("99999999", false, true);
UserRepository mockUserRepository = Mockito.mock(UserRepository.class);
Mockito.when(mockUserRepository.findById(1L))
.thenReturn(Optional.ofNullable(user));
Expand Down Expand Up @@ -163,7 +163,7 @@ public void testIfUserTypePatchWithoutBirthdaySucceedReturnResult() {
CommonResponse<UserDTO> result = userController.patchUserType(user, userTypeRequest);

// then
user.setBirthday("");
user.setBirthday("99999999");
user.setIsFemale(false);
user.setIsKid(true);
UserDTO userDTO = new UserDTO(user);
Expand Down