Skip to content

Commit

Permalink
공유페이지 수정 API 리팩토링 (#215)
Browse files Browse the repository at this point in the history
* feat: SNSBlock 엔티티 변환하는 toEntity 메서드 추가 (#214)

* feat: TemplateBlock 엔티티 변환하는 toEntity 메서드 추가 (#214)

* refactor: TemplateBlock 'update' 메서드를 TemplateBlockUpdateRequest로 수정 (#214)

- TemplateBlock 'update' 메서드가 TemplateBlockUpdateRequest를 사용하도록 수정함

* feat : MoveBlockStrategy 인터페이스에 updateBlocks 메서드 추가 (#214)

* refactor: 전략 클래스에 updateBlocks 메서드 추가 (#214)

- 엔티티를 업데이트하는  기능을 수행하는 메서드를 각 전략 클래스에 추가하였습니다.
- 이 메서드는 BlockSaveRequest를 통해 업데이트할 데이터를 받아와서 해당 데이터를 처리하고, 업데이트된 엔티티의 ID를 반환합니다.
- 업데이트할 엔티티가 존재하지 않을 경우에는 새로운 엔티티를 생성합니다.

* refactor: SpaceWall 업데이트 메서드 리팩토링 (#214)

- 각 블록의 유형에 따라 적절한 전략을 사용하여 블록을 업데이트합니다.
- 업데이트된 블록의 정보를 JSON 배열에 추가하고, 엔터티를 업데이트한 후에 저장합니다.

* refactor: 리팩토링으로 인해 불필요해진 메서드 및 import 코드 제거(#214)

* refactor: 전략 클래스들의 updateBlocks 메서드 리팩토링 (#214)

- 각 전략 클래스들의 updateBlocks 메서드에서 saveAll()을 사용하여 데이터베이스 트랜잭션이 한번에 처리되도록 코드를 수정하였습니다.

* refactor: 블록 updateBlocks 메서드 로직을 LinkedHashSet 사용으로 수정 (#214)

- 업데이트 된 블록들의 아이디가 중복되지 않고 순서 유지되야 하므로 LinkedSet으로 변경

* refactor: 'updateBlocks' 메서드에 블록 정보들을 blockInfoArray에 추가 (#214)

* refactor: MoveBlockStrategy 인터페이스에 updateBlocks 메서드 매개변수 수정 (#214)

* feat: MoveBlockStrategy 인터페이스에 deleteAllById 메서드 추가 (#214)

* feat: 각 블록 repository에 deleteAllById 메서드 추가 (#214)

* feat: 전략 클래스에 deleteAllById 메서드 추가 (#214)

- 'deleteAllById' 메서드를 통해 입력된 블록들을 한꺼번에 삭제합니다.

* fix : 'updateBlocks' 메서드에 블록 정보들을 담았던 blockInfoArray 로직 삭제 (#214)

- 여러번 저장이 돼서 로직 제거 했습니다.

* feat: 블록 타입에 따른 기존 블록 id 추출 기능 추가 (#214)

* refactor : moveBlocks 업데이트 및 삭제 로직 리팩토링 (#214)

BlockType 별로 기존 블록 id와 업데이트된 블록 id를 추적하기 위해 existingBlockIdsByType과 updatedBlockIdsByType 맵을 사용했습니다.

* feat : FixBlockStrategy 인터페이스에 updateBlocks 메서드 추가 (#214)

* refactor: BackgroundSetting 'update' 메서드를 BackgroundStringUpdateRequest 수정 (#214)

- BackgroundSetting 'update' 메서드가 BackgroundStringUpdateRequest 사용하도록 수정함

* refactor: ThemeSetting 'update' 메서드를 ThemeSettingUpdateRequest로 수정 (#214)

- ThemeSetting 'update' 메서드가 ThemeSettingUpdateRequest로 사용하도록 수정함

* refactor: StyleSetting 'update' 메서드 매개변수 수정 (#214)

* refactor: WallInfoBlockStrategy 클래스의 'updateBlocks' 메서드 리팩토링 (#214)

* refactor: StyleSettingStrategy 클래스의 'updateBlocks' 메서드 리팩토링 (#214)

* refactor : fixBlocks 업데이트 로직 리팩토링 (#214)

- wallInfoBlock 메서드 분리
- styleSetting 메서드 분리

* refactor : 불필요한 코드 및 import 제거 (#214)

* refactor : 'update' 메서드 로직 분리 (#214)

- 'processBlocks', 'processBlock', 'deleteRemainingBlocks' 메서드를 추가하여 블록 처리 부분을 분리
- (블록 처리, 블록 단위 처리, 남은 블록 삭제)

* refactor : 매개변수에 final 추가 (#214)
  • Loading branch information
dpdmstjs authored Oct 27, 2023
1 parent 35b6233 commit 7cfa292
Show file tree
Hide file tree
Showing 23 changed files with 404 additions and 646 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,8 @@ public interface FileBlockRepository extends Repository<FileBlock, Long> {

List<FileBlock> saveAll(final Iterable<FileBlock> fileBlocks);

void deleteAllById(final Iterable<Long> id);

Optional<FileBlock> findByIdAndDeletedAtIsNull(final Long id);

default FileBlock findFileBlock(final Long id) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,8 @@ public interface FreeBlockRepository extends Repository<FreeBlock, Long> {

List<FreeBlock> saveAll(final Iterable<FreeBlock> freeBlocks);

void deleteAllById(final Iterable<Long> id);

Optional<FreeBlock> findByIdAndDeletedAtIsNull(final Long freeId);

default FreeBlock findFreeBlock(final Long freeId) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,8 @@ public interface ListBlockRepository extends Repository<ListBlock, Long> {

List<ListBlock> saveAll(final Iterable<ListBlock> listBlocks);

void deleteAllById(final Iterable<Long> id);

Optional<ListBlock> findByIdAndDeletedAtIsNull(final Long id);

default ListBlock findListBlock(final Long id) {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
package com.javajober.blocks.snsBlock.dto.request;

import com.javajober.blocks.snsBlock.domain.SNSBlock;
import com.javajober.blocks.snsBlock.domain.SNSType;

import lombok.Getter;

@Getter
Expand All @@ -13,4 +16,11 @@ public class SNSBlockUpdateRequest {
private SNSBlockUpdateRequest() {

}
public static SNSBlock toEntity(SNSBlockUpdateRequest request) {
return SNSBlock.builder()
.snsUUID(request.getSnsUUID())
.snsType(SNSType.findSNSTypeByString(request.getSnsType()))
.snsURL(request.getSnsURL())
.build();
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,8 @@ public interface SNSBlockRepository extends Repository<SNSBlock, Long> {

List<SNSBlock> findAllById(final Iterable<Long> id);

void deleteAllById(final Iterable<Long> id);

Optional<SNSBlock> findById(final Long id);

default SNSBlock findSNSBlock(final Long id) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@
import javax.persistence.*;
import java.time.LocalDateTime;

import com.javajober.blocks.styleSetting.backgroundSetting.dto.request.BackgroundStringUpdateRequest;

@Getter
@Table(name = "background_setting")
@EntityListeners(AuditingEntityListener.class)
Expand Down Expand Up @@ -50,9 +52,9 @@ public BackgroundSetting(final String solidColor, final Boolean gradation, final
this.styleImageURL = styleImageURL;
}

public void update(final String solidColor, final Boolean gradation, final String styleImageURL) {
this.solidColor = solidColor;
this.gradation = gradation;
this.styleImageURL = styleImageURL;
public void update(final BackgroundStringUpdateRequest request) {
this.solidColor = request.getSolidColor();
this.gradation = request.getGradation();
this.styleImageURL = request.getStyleImgURL();
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -56,9 +56,9 @@ public StyleSetting(final BackgroundSetting backgroundSetting, final BlockSettin
this.blockSetting = blockSetting;
this.themeSetting = themeSetting;
}
public void update(final StyleSetting styleSetting){
this.backgroundSetting = styleSetting.backgroundSetting;
this.blockSetting = styleSetting.blockSetting;
this.themeSetting = styleSetting.themeSetting;
public void update(final BackgroundSetting backgroundSetting, final BlockSetting blockSetting, final ThemeSetting themeSetting){
this.backgroundSetting = backgroundSetting;
this.blockSetting = blockSetting;
this.themeSetting = themeSetting;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@
import javax.persistence.*;
import java.time.LocalDateTime;

import com.javajober.blocks.styleSetting.themeSetting.dto.request.ThemeSettingUpdateRequest;

@Getter
@Table (name = "theme_setting")
@EntityListeners(AuditingEntityListener.class)
Expand Down Expand Up @@ -42,7 +44,7 @@ public ThemeSetting(final String theme) {
this.theme = theme;
}

public void update(final String theme) {
this.theme = theme;
public void update(final ThemeSettingUpdateRequest request) {
this.theme = request.getTheme();
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@
import javax.persistence.*;
import java.time.LocalDateTime;

import com.javajober.blocks.templateBlock.dto.request.TemplateBlockUpdateRequest;

@Getter
@Table(name = "template_block")
@EntityListeners(AuditingEntityListener.class)
Expand Down Expand Up @@ -49,10 +51,10 @@ public TemplateBlock(final String templateUUID, final String templateTitle, fina
this.templateDescription = templateDescription;
}

public void update(final String templateUUID, final String templateTitle, final String templateDescription) {
this.templateUUID = templateUUID;
this.templateTitle = templateTitle;
this.templateDescription = templateDescription;
public void update(final TemplateBlockUpdateRequest request) {
this.templateUUID = request.getTemplateUUID();
this.templateTitle = request.getTemplateTitle();
this.templateDescription = request.getTemplateDescription();
}

public void setDeletedAt(){
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@

import java.util.List;

import com.javajober.blocks.templateBlock.domain.TemplateBlock;

import lombok.Getter;

@Getter
Expand All @@ -17,4 +19,13 @@ public class TemplateBlockUpdateRequest {
private TemplateBlockUpdateRequest() {

}

public static TemplateBlock toEntity(final TemplateBlockUpdateRequest templateBlockUpdateRequest) {
return TemplateBlock.builder()
.templateUUID(templateBlockUpdateRequest.getTemplateUUID())
.templateTitle(templateBlockUpdateRequest.getTemplateTitle())
.templateDescription(templateBlockUpdateRequest.getTemplateDescription())
.build();

}
}
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,8 @@ public interface TemplateBlockRepository extends Repository<TemplateBlock, Long>

List<TemplateBlock> findAllById(final Iterable<Long> id);

void deleteAllById(final Iterable<Long> id);

Optional<TemplateBlock> findById(final Long id);

default TemplateBlock findTemplateBlock(final Long id){
Expand Down
Loading

0 comments on commit 7cfa292

Please sign in to comment.