This commit is contained in:
Mohd-Arham
2025-11-12 10:34:06 +05:30
parent b0e43f53fc
commit 1102a58aee
21 changed files with 777 additions and 85 deletions
@@ -16,18 +16,18 @@ import lombok.Getter;
import lombok.Setter;
@Entity
@Table(name = "additional_info")
@Table(name = "plan_additional_info")
@Getter
@Setter
public class AdditionalInfoPlans {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
@Column(name = "plan_ddditional_info_id")
private Long planAdditionalInfoId;
private String planAdditionalInfoId;
@OneToMany(fetch = FetchType.LAZY, cascade = CascadeType.ALL)
@OneToMany(fetch = FetchType.LAZY, cascade = CascadeType.ALL, mappedBy = "additionalInfo")
private List<PlanTag> tags;
}
@@ -0,0 +1,103 @@
package com.billpaymentservice.bbps.entites;
import com.billpaymentservice.bbps.audit.Auditable;
import jakarta.persistence.Column;
import jakarta.persistence.Entity;
import jakarta.persistence.GeneratedValue;
import jakarta.persistence.GenerationType;
import jakarta.persistence.Id;
import jakarta.persistence.Table;
import lombok.Getter;
import lombok.Setter;
@Entity
@Table(name = "complaint_status")
@Getter
@Setter
public class ComplainStatus extends Auditable<String> {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id")
private Long id;
@Column(name = "complaint_id")
private String complaintId;
@Column(name = "complaint_descr")
private String complaintDescr;
@Column(name = "complaint_dispos")
private String complaintDispos;
@Column(name = "complaint_type")
private String complaintType;
@Column(name = "txn_id")
private String txnId;
@Column(name = "complaint_status")
private String complaintStatus;
@Column(name = "assigned_to")
private String assignedTo;
@Column(name = "complaint_npci_id")
private String complaintNpciId;
@Column(name = "complaint_raised_from")
private String complaintRaisedFrom;
@Column(name = "user_id")
private String userId;
@Column(name = "status")
private String status;
@Column(name = "ref_id")
private String refId;
@Column(name = "estimated_tat")
private String estimatedTAT;
@Column(name = "creation_date")
private String creationDate;
@Column(name = "modified_date")
private String modifiedDate;
@Column(name = "biller_name")
private String billerName;
@Column(name = "txn_amount")
private String txnAmount;
@Column(name = "super_level_esc")
private String superLevelEsc;
@Column(name = "open_complaint")
private String openComplaint;
@Column(name = "reopen_complaint")
private String reopenComplaint;
@Column(name = "remarks")
private String remarks;
@Column(name = "agent_id")
private String agentId;
@Column(name = "category")
private String category;
@Column(name = "created_epoch_date")
private long createdEpochDate;
@Column(name = "modified_epoch_date")
private long modifiedEpochDate;
@Column(name = "req_id")
private String reqId;
}
@@ -30,7 +30,7 @@ public class Plan {
@Column(name = "plan_id")
private String planId;
@Column(name = "description")
@Column(name = "description", columnDefinition = "TEXT")
private String description;
@Column(name = "biller_id")
@@ -51,15 +51,15 @@ public class Plan {
@Column(name = "status")
private String status;
@OneToMany(fetch = FetchType.LAZY, cascade = CascadeType.ALL, mappedBy = "plan")
private List<PlanCategorySubType> categorySubTypes; // List of categorySubTypes
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "plans_list_id")
private PlansList plansList;
@OneToMany(fetch = FetchType.LAZY, cascade = CascadeType.ALL, mappedBy = "plan")
private List<PlanCategorySubType> categorySubTypes; // List of categorySubTypes
@OneToOne(fetch = FetchType.LAZY, cascade = CascadeType.ALL)
@JoinColumn(name = "additional_info_id")
@JoinColumn(name = "additional_info_id", referencedColumnName = "id")
private AdditionalInfoPlans additionalInfo;
}
@@ -10,7 +10,7 @@ import jakarta.persistence.GeneratedValue;
import jakarta.persistence.GenerationType;
import jakarta.persistence.Id;
import jakarta.persistence.JoinColumn;
import jakarta.persistence.ManyToOne;
import jakarta.persistence.OneToOne;
import jakarta.persistence.Table;
import lombok.Getter;
import lombok.Setter;
@@ -25,7 +25,7 @@ public class PlanResponses extends Auditable<String> {
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
@ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.ALL)
@OneToOne(fetch = FetchType.LAZY, cascade = CascadeType.ALL)
@JoinColumn(name = "plans_list_id")
private PlansList plansList;
@@ -1,16 +1,6 @@
package com.billpaymentservice.bbps.entites;
import java.util.UUID;
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.ManyToOne;
import jakarta.persistence.Table;
import jakarta.persistence.*;
import lombok.Getter;
import lombok.Setter;
@@ -20,18 +10,24 @@ import lombok.Setter;
@Setter
public class PlanTag {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private UUID tagId;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
@Column(name="name")
private String name;
@Column(name="value")
private String value;
// UUID is stored as text — perfect, no length limit
@Column(name = "tag_uuid", columnDefinition = "TEXT")
private String tagId;
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "plan_id")
private Plan plan;
// Use TEXT because tag names like “Additional Benefits” may exceed 255 chars in future
@Column(name = "name", columnDefinition = "TEXT")
private String name;
// Use TEXT for large values like “Premium Customer Support and 14 OTT Apps”
@Column(name = "value", columnDefinition = "TEXT")
private String value;
// Foreign key to additional_info table
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "additional_info_id", referencedColumnName = "id")
private AdditionalInfoPlans additionalInfo;
}
@@ -0,0 +1,103 @@
package com.billpaymentservice.bbps.entites;
import com.billpaymentservice.bbps.audit.Auditable;
import jakarta.persistence.Column;
import jakarta.persistence.Entity;
import jakarta.persistence.GeneratedValue;
import jakarta.persistence.GenerationType;
import jakarta.persistence.Id;
import jakarta.persistence.Table;
import lombok.Getter;
import lombok.Setter;
@Entity
@Table(name = "reopen_complaint")
@Getter
@Setter
public class ReOpenComplain extends Auditable<String> {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id")
private Long id;
@Column(name = "complaint_id")
private String complaintId;
@Column(name = "complaint_descr")
private String complaintDescr;
@Column(name = "complaint_dispos")
private String complaintDispos;
@Column(name = "complaint_type")
private String complaintType;
@Column(name = "txn_id")
private String txnId;
@Column(name = "complaint_status")
private String complaintStatus;
@Column(name = "assigned_to")
private String assignedTo;
@Column(name = "complaint_npci_id")
private String complaintNpciId;
@Column(name = "complaint_raised_from")
private String complaintRaisedFrom;
@Column(name = "user_id")
private String userId;
@Column(name = "status")
private String status;
@Column(name = "ref_id")
private String refId;
@Column(name = "estimated_tat")
private String estimatedTAT;
@Column(name = "creation_date")
private String creationDate;
@Column(name = "modified_date")
private String modifiedDate;
@Column(name = "biller_name")
private String billerName;
@Column(name = "txn_amount")
private String txnAmount;
@Column(name = "super_level_esc")
private String superLevelEsc;
@Column(name = "open_complaint")
private String openComplaint;
@Column(name = "reopen_complaint")
private String reopenComplaint;
@Column(name = "remarks")
private String remarks;
@Column(name = "agent_id")
private String agentId;
@Column(name = "category")
private String category;
@Column(name = "created_epoch_date")
private long createdEpochDate;
@Column(name = "modified_epoch_date")
private long modifiedEpochDate;
@Column(name = "req_id")
private String reqId;
}