Skip to content

Commit

Permalink
Merge pull request #67 from lab-cherry/haeri
Browse files Browse the repository at this point in the history
Haeri
  • Loading branch information
taking authored Nov 9, 2023
2 parents 56b9e92 + 74b317c commit 8a7062d
Show file tree
Hide file tree
Showing 6 changed files with 19 additions and 148 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@
import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.validation.Valid;
import lab.cherry.nw.error.ErrorResponse;
import lab.cherry.nw.model.FinalTemplEntity;
import lab.cherry.nw.model.ScheduleEntity;
import lab.cherry.nw.service.ScheduleService;
import lab.cherry.nw.util.Common;
Expand All @@ -23,9 +22,6 @@
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;

import java.time.Instant;
import java.time.LocalDate;
import java.time.ZoneId;

/**
* <pre>
Expand Down Expand Up @@ -93,34 +89,7 @@ public ResponseEntity<?> findByScheduleId(@PathVariable("id") String id) {
return new ResponseEntity<>(scheduleService.findById(id), new HttpHeaders(), HttpStatus.OK);
}

/**
* [ScheduleController] 스케줄표 컬럼 변경 함수
*
* @param tranClounm 최종확인서에서 스케줄표에 필요한 컬럼만 담고 있는 객체입니다.
* @return
* <pre>
* true : 성공(200)을 반환합니다.
* false : 에러(400)를 반환합니다.
* </pre>
*
* Author : hhhaeri(yhoo0020@gmail.com)
*/
@PostMapping("/column")
@Operation(summary = "스케줄표 컬럼 변환", description = "최종확인서에 있는 컬럼을 스케줄표로 변환.")
@ApiResponses(value = {
@ApiResponse(responseCode = "200", description = "스케줄표 컬럼 변환이 완료되었습니다.", content = @Content(schema = @Schema(implementation = ResponseEntity.class))),
@ApiResponse(responseCode = "400", description = "입력 값이 잘못되었습니다.", content = @Content(schema = @Schema(implementation = ErrorResponse.class)))
})
public ResponseEntity<?> fianlToSchedule(@Valid @RequestBody(required = false) ScheduleEntity.transDto scheduleTransDto) {

log.info("[ScheduleController] fianlToSchedule...!");

ScheduleEntity scheduleEntity = scheduleService.transColumn(scheduleTransDto);

return new ResponseEntity<>(scheduleEntity, new HttpHeaders(), HttpStatus.OK);
}



/**
* [ScheduleController] 스케줄표 생성 함수
*
Expand Down Expand Up @@ -148,41 +117,4 @@ public ResponseEntity<?> createFinalTemplate(@Valid @RequestBody(required = fals
return new ResponseEntity<>(scheduleEntity, new HttpHeaders(), HttpStatus.OK);
}




// /**
// * [ScheduleController] 스케줄표 날짜 기준 조회
// *
// * @param 날짜 기준으로 스케줄표를 조회합니다.
// * @return
// * <pre>
// * true : 성공(200)을 반환합니다.
// * false : 에러(400)를 반환합니다.
// * </pre>
// *
// * Author : hhhaeri(yhoo0020@gmail.com)
// */
// @PostMapping("/date/{start}/{end}")
// @Operation(summary = "스케줄표 날짜 조회", description = "최종확인서에 있는 날짜 기준 조회")
// @ApiResponses(value = {
// @ApiResponse(responseCode = "200", description = "날짜 기준으로 조회를 완료되었습니다.", content = @Content(schema = @Schema(implementation = ResponseEntity.class))),
// @ApiResponse(responseCode = "400", description = "입력 값이 잘못되었습니다.", content = @Content(schema = @Schema(implementation = ErrorResponse.class)))
// })
// public ResponseEntity<?> fianlToDateSchedule(@Valid @PathVariable("start") String start, @PathVariable("end") String end) {

// log.info("[ScheduleController] fianlToDateSchedule...!");

// LocalDate localStartDate = LocalDate.parse(start);
// LocalDate localEndDate = LocalDate.parse(end);

// // LocalDate를 Instant로 변환 (00:00:00 시간으로 설정)
// Instant startDate = localStartDate.atStartOfDay(ZoneId.systemDefault()).toInstant();
// Instant endDate = localEndDate.atStartOfDay(ZoneId.systemDefault()).toInstant();

// ScheduleEntity scheduleEntity = scheduleService.scheduleByDate(startDate,endDate);

// return new ResponseEntity<>(scheduleEntity, new HttpHeaders(), HttpStatus.OK);
// }

}
21 changes: 12 additions & 9 deletions nw/src/main/java/lab/cherry/nw/model/FinalTemplEntity.java
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@

import java.io.Serializable;
import java.time.Instant;
import java.util.List;
import java.util.Map;

/**
Expand Down Expand Up @@ -53,7 +54,9 @@ public class FinalTemplEntity implements Serializable {

@JsonProperty("content")
@Schema(title = "최종확인서 템플릿 내용", example = "문서 내용")
private Map<String, Object> content;
// private Map<String, Object> content;
private List<Object> content;


@JsonProperty("updated_at")
@JsonFormat(pattern="yyyy-MM-dd hh:mm:ss", locale = "ko_KR", timezone = "Asia/Seoul")
Expand Down Expand Up @@ -81,23 +84,23 @@ public static class FinalTemplCreateDto {
private String orgId;

@Schema(title = "최종확인서 템플릿 내용", example = "문서 내용")
private Map<String, Object> content;

private List<Object> content;
}

@Getter
@Builder
@NoArgsConstructor @AllArgsConstructor
public static class FinalTemplUpdateDto {

@Schema(title = "사용자 고유 번호", example = "64ed89aa9e813b5ab16da6de")
private String userSeq;
@Schema(title = "사용자 고유 번호", example = "64ed89aa9e813b5ab16da6de")
private String userSeq;

@Schema(title = "조직 고유 번호", example = "64ed89aa9e813b5ab16da6de")
private String orgId;
@Schema(title = "조직 고유 번호", example = "64ed89aa9e813b5ab16da6de")
private String orgId;

@Schema(title = "최종확인서 템플릿 내용", example = "문서 내용")
private Map<String, Object> content;
@Schema(title = "최종확인서 템플릿 내용", example = "문서 내용")
private List<Object> content;

}

Expand Down
8 changes: 4 additions & 4 deletions nw/src/main/java/lab/cherry/nw/model/FinaldocsEntity.java
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@

import java.io.Serializable;
import java.time.Instant;
import java.util.List;
import java.util.Map;

/**
Expand Down Expand Up @@ -64,8 +65,7 @@ public class FinaldocsEntity implements Serializable {

@JsonProperty("content")
@Schema(title = "최종확인서 내용", example = "")
private Map<String,String> content;

private List<Object> content;


@JsonProperty("updated_at")
Expand Down Expand Up @@ -109,7 +109,7 @@ public static class FinaldocsCreateDto {
// @NotBlank
@JsonProperty("content")
@Schema(title = "최종확인서 내용", example = "")
private Map<String,String> content;
private List<Object> content;


}
Expand All @@ -133,7 +133,7 @@ public static class FinaldocsUpdateDto {
private String org;

@Schema(title = "최종확인서 내용", example = "")
private Map<String,String> content;
private List<Object> content;


}
Expand Down
27 changes: 2 additions & 25 deletions nw/src/main/java/lab/cherry/nw/model/ScheduleEntity.java
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ public class ScheduleEntity implements Serializable {

@JsonProperty("scheduleContent")
@Schema(title = "스케줄표 내용", example = "[]")
private Map<String, Object> content;
private List<Object> content;

@JsonProperty("column")
@Schema(title = "스케줄표 컬럼", example = "")
Expand All @@ -65,36 +65,13 @@ public class ScheduleEntity implements Serializable {
@NoArgsConstructor @AllArgsConstructor
public static class ScheduleCreateDto {


@NotBlank
@Schema(title = "조직 고유번호", example = "64ed89aa9e813b5ab16da6de")
private String orgId;


@Schema(title = "스케줄표 템플릿 내용", example = "문서 내용")
private Map<String, Object> content;
private List<Object> content;

}


//////////////////////////////////////////////////////////////////////////

@Getter
@Setter
@Builder
@NoArgsConstructor @AllArgsConstructor
public static class transDto {

@Schema(title = "스케줄표 고유번호", example = "64ed89aa9e813b5ab16da6de")
private String finalTemplId;

@Schema(title = "조직 고유번호", example = "64ed89aa9e813b5ab16da6de")
private String orgId;

@JsonProperty("scheduleContent")
@Schema(title = "스케줄표 내용", example = "[]")
private Map<String, Object> content;

}

}
Original file line number Diff line number Diff line change
Expand Up @@ -82,46 +82,6 @@ public ScheduleEntity createSchedule(ScheduleEntity.ScheduleCreateDto scheduleCr
return scheduleRepository.save(scheduleEntity);
}



/**
* [scheduleServiceImpl] 스케줄표 생성 함수
*
* @param scheduleTransDto 스케줄표 생성에 필요한 최종확인서 정보를 담은 개체입니다.
* @return 최종확인서에서 스케줄표에 필요한 컬럼을 저장한 정보를 리턴합니다.
* <pre>
* 스케줄표 컬럼을 등록합니다.
* </pre>
*
* Author : hhhaeri(yhoo0020@gmail.com)
*/
@Transactional(readOnly = true)
@Override
public ScheduleEntity transColumn(ScheduleEntity.transDto scheduleTransDto) {

OrgEntity orgEntity = orgService.findById(scheduleTransDto.getOrgId());
FinalTemplEntity finalTemplEntity = finalTemplService.findById(scheduleTransDto.getFinalTemplId());

Map<String, Object> content = finalTemplEntity.getContent();

// Null 값을 가진 값만 가져오기
Map<String, Object> nullEntries = new HashMap<>();

for (Map.Entry<String, Object> entry : content.entrySet()) {
if (!entry.getValue().equals("")) {
nullEntries.put(entry.getKey(), entry.getValue());
}
}

ScheduleEntity scheduleEntity = ScheduleEntity.builder()
.column(nullEntries)
.org(orgEntity)
.build();

return scheduleRepository.save(scheduleEntity);

}

/**
* [scheduleServiceImpl] 스케줄표 삭제 함수
*
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,6 @@ public interface ScheduleService {
Page<ScheduleEntity> getSchedule(Pageable pageable);
// ScheduleEntity scheduleByDate(Instant fromDate, Instant toDate);
ScheduleEntity createSchedule(ScheduleEntity.ScheduleCreateDto scheduleCreateDto);
ScheduleEntity transColumn(ScheduleEntity.transDto scheduleTransDto);
ScheduleEntity findById(String id);
// ScheduleEntity findByName(String name);
void deleteById(String id);
Expand Down

0 comments on commit 8a7062d

Please sign in to comment.