new fields in TransactionItem.java active and relationship to registration

This commit is contained in:
2024-11-17 16:03:09 +01:00
parent db744d634b
commit b8bb77e807
17 changed files with 166 additions and 18 deletions
@@ -42,7 +42,7 @@ public class Charge implements Serializable {
private Event event;
@ManyToOne(fetch = FetchType.LAZY)
@JsonIgnoreProperties(value = { "user", "event" }, allowSetters = true)
@JsonIgnoreProperties(value = { "user", "event", "transactionItems" }, allowSetters = true)
private Registration registration;
@ManyToOne(fetch = FetchType.LAZY)
@@ -44,7 +44,7 @@ public class Event implements Serializable {
private String comment;
@OneToMany(fetch = FetchType.LAZY, mappedBy = "event")
@JsonIgnoreProperties(value = { "user", "event" }, allowSetters = true)
@JsonIgnoreProperties(value = { "user", "event", "transactionItems" }, allowSetters = true)
private Set<Registration> registrations = new HashSet<>();
@OneToMany(fetch = FetchType.LAZY, mappedBy = "event")
@@ -5,6 +5,8 @@ import jakarta.persistence.*;
import jakarta.validation.constraints.*;
import java.io.Serializable;
import java.time.ZonedDateTime;
import java.util.HashSet;
import java.util.Set;
/**
* A Registration.
@@ -44,6 +46,10 @@ public class Registration implements Serializable {
@JsonIgnoreProperties(value = { "registrations", "transactions" }, allowSetters = true)
private Event event;
@OneToMany(fetch = FetchType.LAZY, mappedBy = "registration")
@JsonIgnoreProperties(value = { "userAccount", "transaction", "event", "registration" }, allowSetters = true)
private Set<TransactionItem> transactionItems = new HashSet<>();
// jhipster-needle-entity-add-field - JHipster will add fields here
public Long getId() {
@@ -137,6 +143,37 @@ public class Registration implements Serializable {
return this;
}
public Set<TransactionItem> getTransactionItems() {
return this.transactionItems;
}
public void setTransactionItems(Set<TransactionItem> transactionItems) {
if (this.transactionItems != null) {
this.transactionItems.forEach(i -> i.setRegistration(null));
}
if (transactionItems != null) {
transactionItems.forEach(i -> i.setRegistration(this));
}
this.transactionItems = transactionItems;
}
public Registration transactionItems(Set<TransactionItem> transactionItems) {
this.setTransactionItems(transactionItems);
return this;
}
public Registration addTransactionItem(TransactionItem transactionItem) {
this.transactionItems.add(transactionItem);
transactionItem.setRegistration(this);
return this;
}
public Registration removeTransactionItem(TransactionItem transactionItem) {
this.transactionItems.remove(transactionItem);
transactionItem.setRegistration(null);
return this;
}
// jhipster-needle-entity-add-getters-setters - JHipster will add getters and setters here
@Override
@@ -39,7 +39,7 @@ public class Transaction implements Serializable {
private Event event;
@OneToMany(fetch = FetchType.LAZY, mappedBy = "transaction")
@JsonIgnoreProperties(value = { "userAccount", "transaction", "event" }, allowSetters = true)
@JsonIgnoreProperties(value = { "userAccount", "transaction", "event", "registration" }, allowSetters = true)
private Set<TransactionItem> transactionItems = new HashSet<>();
// jhipster-needle-entity-add-field - JHipster will add fields here
@@ -27,6 +27,9 @@ public class TransactionItem implements Serializable {
@Column(name = "comment")
private String comment;
@Column(name = "locked")
private Boolean locked;
@ManyToOne(fetch = FetchType.LAZY)
@JsonIgnoreProperties(value = { "users", "transactionItems" }, allowSetters = true)
private UserAccount userAccount;
@@ -39,6 +42,10 @@ public class TransactionItem implements Serializable {
@JsonIgnoreProperties(value = { "registrations", "transactions" }, allowSetters = true)
private Event event;
@ManyToOne(fetch = FetchType.LAZY)
@JsonIgnoreProperties(value = { "user", "event", "transactionItems" }, allowSetters = true)
private Registration registration;
// jhipster-needle-entity-add-field - JHipster will add fields here
public Long getId() {
@@ -80,6 +87,19 @@ public class TransactionItem implements Serializable {
this.comment = comment;
}
public Boolean getLocked() {
return this.locked;
}
public TransactionItem locked(Boolean locked) {
this.setLocked(locked);
return this;
}
public void setLocked(Boolean locked) {
this.locked = locked;
}
public UserAccount getUserAccount() {
return this.userAccount;
}
@@ -119,6 +139,19 @@ public class TransactionItem implements Serializable {
return this;
}
public Registration getRegistration() {
return this.registration;
}
public void setRegistration(Registration registration) {
this.registration = registration;
}
public TransactionItem registration(Registration registration) {
this.setRegistration(registration);
return this;
}
// jhipster-needle-entity-add-getters-setters - JHipster will add getters and setters here
@Override
@@ -145,6 +178,7 @@ public class TransactionItem implements Serializable {
"id=" + getId() +
", amount=" + getAmount() +
", comment='" + getComment() + "'" +
", locked='" + getLocked() + "'" +
"}";
}
}
@@ -34,7 +34,7 @@ public class UserAccount implements Serializable {
private Set<User> users = new HashSet<>();
@OneToMany(fetch = FetchType.LAZY, mappedBy = "userAccount")
@JsonIgnoreProperties(value = { "userAccount", "transaction", "event" }, allowSetters = true)
@JsonIgnoreProperties(value = { "userAccount", "transaction", "event", "registration" }, allowSetters = true)
private Set<TransactionItem> transactionItems = new HashSet<>();
// jhipster-needle-entity-add-field - JHipster will add fields here
@@ -27,16 +27,18 @@ public interface TransactionItemRepository extends JpaRepository<TransactionItem
}
@Query(
value = "select transactionItem from TransactionItem transactionItem left join fetch transactionItem.event",
value = "select transactionItem from TransactionItem transactionItem left join fetch transactionItem.event left join fetch transactionItem.registration",
countQuery = "select count(transactionItem) from TransactionItem transactionItem"
)
Page<TransactionItem> findAllWithToOneRelationships(Pageable pageable);
@Query("select transactionItem from TransactionItem transactionItem left join fetch transactionItem.event")
@Query(
"select transactionItem from TransactionItem transactionItem left join fetch transactionItem.event left join fetch transactionItem.registration"
)
List<TransactionItem> findAllWithToOneRelationships();
@Query(
"select transactionItem from TransactionItem transactionItem left join fetch transactionItem.event where transactionItem.id =:id"
"select transactionItem from TransactionItem transactionItem left join fetch transactionItem.event left join fetch transactionItem.registration where transactionItem.id =:id"
)
Optional<TransactionItem> findOneWithToOneRelationships(@Param("id") Long id);
}
@@ -127,6 +127,9 @@ public class TransactionItemResource {
if (transactionItem.getComment() != null) {
existingTransactionItem.setComment(transactionItem.getComment());
}
if (transactionItem.getLocked() != null) {
existingTransactionItem.setLocked(transactionItem.getLocked());
}
return existingTransactionItem;
})
@@ -20,6 +20,9 @@
<column name="comment" type="varchar(255)">
<constraints nullable="true" />
</column>
<column name="locked" type="boolean">
<constraints nullable="true" />
</column>
<column name="user_account_id" type="bigint">
<constraints nullable="true" />
</column>
@@ -29,6 +32,9 @@
<column name="event_id" type="bigint">
<constraints nullable="true" />
</column>
<column name="registration_id" type="bigint">
<constraints nullable="true" />
</column>
<!-- jhipster-needle-liquibase-add-column - JHipster will add columns here -->
</createTable>
</changeSet>
@@ -52,6 +58,7 @@
<column name="id" type="numeric"/>
<column name="amount" type="numeric"/>
<column name="comment" type="string"/>
<column name="locked" type="boolean"/>
<!-- jhipster-needle-liquibase-add-loadcolumn - JHipster (and/or extensions) can add load columns here -->
</loadData>
</changeSet>
@@ -30,5 +30,12 @@
referencedColumnNames="id"
referencedTableName="event"
/>
<addForeignKeyConstraint baseColumnNames="registration_id"
baseTableName="transaction_item"
constraintName="fk_transaction_item__registration_id"
referencedColumnNames="id"
referencedTableName="registration"
/>
</changeSet>
</databaseChangeLog>
@@ -1,4 +1,4 @@
id;amount;comment
id;amount;comment;locked
1;11521.38;per cautiously out
2;974.75;since below bah
3;25825.62;outlaw
1 id id;amount;comment;locked amount comment
2 1 1;11521.38;per cautiously out 11521.38 per cautiously out
3 2 2;974.75;since below bah 974.75 since below bah
4 3 3;25825.62;outlaw 25825.62 outlaw