package com.billpaymentservice.bbps.entites; import java.util.List; import jakarta.persistence.CascadeType; import jakarta.persistence.Column; import jakarta.persistence.Entity; import jakarta.persistence.FetchType; import jakarta.persistence.GeneratedValue; import jakarta.persistence.GenerationType; import jakarta.persistence.Id; import jakarta.persistence.JoinColumn; import jakarta.persistence.OneToMany; import jakarta.persistence.OneToOne; import jakarta.persistence.Table; import lombok.Getter; import lombok.Setter; import lombok.ToString; @Getter @Setter @Entity @ToString @Table(name = "customer_param_groups") public class CustomerParamGroups { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "group_container_id") private Long id; // 🔗 One set of groups belongs to one biller @OneToOne(fetch = FetchType.LAZY) @JoinColumn(name = "biller_id") private BillerDetails biller; // 🔗 One CustomerParamGroups contains multiple Group objects @OneToMany(mappedBy = "customerParamGroups", cascade = CascadeType.ALL, orphanRemoval = true) private List groups; }