From 7da87f4f9e3aa50845a0623cce24434c09adf1b4 Mon Sep 17 00:00:00 2001 From: yrlvdplsh Date: Tue, 4 Mar 2025 12:28:08 +0300 Subject: [PATCH] =?UTF-8?q?=D0=A4=D0=B8=D0=BA=D1=81=20=D0=B2=D0=B8=D0=B4?= =?UTF-8?q?=D0=BE=D0=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../domain/species/model/SpeciesFeature.java | 13 ++-- .../repository/SpeciesFeatureRepository.java | 9 --- .../rest/mapper/SpeciesFeatureMapper.java | 2 - .../domain/species/service/TagService.java | 2 - .../2025/03/04-02-update-species.yaml | 64 +++++++++++++++++++ .../db/changelog/db.changelog-master.yaml | 12 ++-- 6 files changed, 77 insertions(+), 25 deletions(-) delete mode 100644 src/main/java/club/ttg/dnd5/domain/species/repository/SpeciesFeatureRepository.java create mode 100644 src/main/resources/db/changelog/2025/03/04-02-update-species.yaml diff --git a/src/main/java/club/ttg/dnd5/domain/species/model/SpeciesFeature.java b/src/main/java/club/ttg/dnd5/domain/species/model/SpeciesFeature.java index e75cce3f..b5c5bfb6 100644 --- a/src/main/java/club/ttg/dnd5/domain/species/model/SpeciesFeature.java +++ b/src/main/java/club/ttg/dnd5/domain/species/model/SpeciesFeature.java @@ -3,19 +3,16 @@ import club.ttg.dnd5.domain.book.model.Book; import club.ttg.dnd5.domain.common.model.NamedEntity; import jakarta.persistence.*; +import lombok.AllArgsConstructor; import lombok.Getter; +import lombok.NoArgsConstructor; import lombok.Setter; @Getter @Setter -@Entity -@Table( - name = "species_features", - indexes = {@Index(name = "url_index", columnList = "url")} -) -public class SpeciesFeature extends NamedEntity { - @Column(nullable = false) +@AllArgsConstructor +@NoArgsConstructor +public class SpeciesFeature { private String name; - @Column(columnDefinition = "TEXT") private String description; } diff --git a/src/main/java/club/ttg/dnd5/domain/species/repository/SpeciesFeatureRepository.java b/src/main/java/club/ttg/dnd5/domain/species/repository/SpeciesFeatureRepository.java deleted file mode 100644 index 836573ce..00000000 --- a/src/main/java/club/ttg/dnd5/domain/species/repository/SpeciesFeatureRepository.java +++ /dev/null @@ -1,9 +0,0 @@ -package club.ttg.dnd5.domain.species.repository; - -import club.ttg.dnd5.domain.species.model.SpeciesFeature; -import org.springframework.data.jpa.repository.JpaRepository; -import org.springframework.stereotype.Repository; - -@Repository -public interface SpeciesFeatureRepository extends JpaRepository { -} diff --git a/src/main/java/club/ttg/dnd5/domain/species/rest/mapper/SpeciesFeatureMapper.java b/src/main/java/club/ttg/dnd5/domain/species/rest/mapper/SpeciesFeatureMapper.java index 3a882e05..b95029ba 100644 --- a/src/main/java/club/ttg/dnd5/domain/species/rest/mapper/SpeciesFeatureMapper.java +++ b/src/main/java/club/ttg/dnd5/domain/species/rest/mapper/SpeciesFeatureMapper.java @@ -13,8 +13,6 @@ public interface SpeciesFeatureMapper { @Mapping(target = "name.name", source = "name") SpeciesFeatureResponse toDto(SpeciesFeature speciesFeature); - @Mapping(target = "url", source = "name", qualifiedByName = "generateUrl") - @Mapping(target = "english", source = "name", qualifiedByName = "generateUrl") SpeciesFeature toEntity(FeatureRequest request); @Named("generateUrl") diff --git a/src/main/java/club/ttg/dnd5/domain/species/service/TagService.java b/src/main/java/club/ttg/dnd5/domain/species/service/TagService.java index 205a17dd..17dd195b 100644 --- a/src/main/java/club/ttg/dnd5/domain/species/service/TagService.java +++ b/src/main/java/club/ttg/dnd5/domain/species/service/TagService.java @@ -1,7 +1,6 @@ package club.ttg.dnd5.domain.species.service; import club.ttg.dnd5.domain.common.repository.TagRepository; -import club.ttg.dnd5.domain.species.repository.SpeciesFeatureRepository; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; @@ -9,7 +8,6 @@ @RequiredArgsConstructor public class TagService { private final TagRepository tagRepository; - private final SpeciesFeatureRepository speciesFeatureRepository; // public Tag createTag(String tagName) { // Tag tag = new Tag(tagName); diff --git a/src/main/resources/db/changelog/2025/03/04-02-update-species.yaml b/src/main/resources/db/changelog/2025/03/04-02-update-species.yaml new file mode 100644 index 00000000..4529d3e3 --- /dev/null +++ b/src/main/resources/db/changelog/2025/03/04-02-update-species.yaml @@ -0,0 +1,64 @@ +databaseChangeLog: + - changeSet: + id: 1741079793151-3 + author: ylp + objectQuotingStrategy: QUOTE_ONLY_RESERVED_WORDS + changes: + - dropForeignKeyConstraint: + baseTableName: sources + constraintName: fk_sources_on_book_info + - changeSet: + id: 1741079793151-4 + author: ylp + objectQuotingStrategy: QUOTE_ONLY_RESERVED_WORDS + changes: + - dropForeignKeyConstraint: + baseTableName: species_features + constraintName: fk_species_features_on_source + - changeSet: + id: 1741079793151-5 + author: ylp + objectQuotingStrategy: QUOTE_ONLY_RESERVED_WORDS + changes: + - dropForeignKeyConstraint: + baseTableName: species_features + constraintName: fk_species_features_on_species_url + - changeSet: + id: 1741079793151-1 + author: ylp + objectQuotingStrategy: QUOTE_ONLY_RESERVED_WORDS + changes: + - addColumn: + columns: + - column: + name: features + type: jsonb + tableName: species + - changeSet: + id: 1741079793151-2 + author: ylp + objectQuotingStrategy: QUOTE_ONLY_RESERVED_WORDS + changes: + - addForeignKeyConstraint: + baseColumnNames: source + baseTableName: species + constraintName: FK_SPECIES_ON_SOURCE + referencedColumnNames: source_acronym + referencedTableName: books + - changeSet: + id: 1741079793151-9 + author: ylp + objectQuotingStrategy: QUOTE_ONLY_RESERVED_WORDS + changes: + - dropTable: + cascadeConstraints: true + tableName: sources + - changeSet: + id: 1741079793151-10 + author: ylp + objectQuotingStrategy: QUOTE_ONLY_RESERVED_WORDS + changes: + - dropTable: + cascadeConstraints: true + tableName: species_features + diff --git a/src/main/resources/db/changelog/db.changelog-master.yaml b/src/main/resources/db/changelog/db.changelog-master.yaml index 99c89791..43625533 100644 --- a/src/main/resources/db/changelog/db.changelog-master.yaml +++ b/src/main/resources/db/changelog/db.changelog-master.yaml @@ -1,5 +1,9 @@ databaseChangeLog: - - - includeAll: - path: /2025 - relativeToChangelogFile: true + - include: + file: db/changelog/2025/03/01-init_users_and_tokens_tables.yaml + - include: + file: db/changelog/2025/03/02-add_species_table.yaml.yaml + - include: + file: db/changelog/2025/03/04-update-species.yaml + - include: + file: db/changelog/2025/03/04-02-update-species.yaml