Files
bbps-backend/src/main/java/com/billpaymentservice/bbps/dto/BillerDTO.java
T

113 lines
3.4 KiB
Java

package com.billpaymentservice.bbps.dto;
import java.util.List;
import com.billpaymentservice.bbps.entites.AdditionalInfoBillValidate;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.Size;
import lombok.Getter;
import lombok.Setter;
@Getter
@Setter
@JsonIgnoreProperties(ignoreUnknown = true)
public class BillerDTO {
@NotBlank(message = "Biller ID is mandatory")
@Size(min = 14, max = 14, message = "Biller ID must be 14 characters long")
private String billerId;
@NotBlank(message = "Biller name cannot be blank")
private String billerName;
@NotBlank(message = "Biller alias name cannot be blank")
private String billerAliasName;
@NotBlank(message = "Biller category name cannot be blank")
private String billerCategoryName;
@NotBlank(message = "Biller mode cannot be blank")
private String billerMode;
private boolean billerAcceptsAdhoc;
private boolean parentBiller;
@NotBlank(message = "Parent biller ID cannot be blank")
private String parentBillerId;
@NotBlank(message = "Biller ownership is required (PSU or Private)")
private String billerOwnerShp;
@NotBlank(message = "Biller coverage cannot be blank")
private String billerCoverage;
@NotBlank(message = "Fetch requirement is mandatory")
private String fetchRequirement;
@NotBlank(message = "Payment amount exactness is required")
private String paymentAmountExactness;
@NotBlank(message = "Support bill validation is required")
private String supportBillValidation;
@NotBlank(message = "Effective from date is required")
private String billerEffctvFrom;
@NotBlank(message = "Effective to date is required")
private String billerEffctvTo;
private String billerTempDeactivationStart;
private String billerTempDeactivationEnd;
@NotBlank(message = "Biller description cannot be blank")
private String billerDescription;
@NotBlank(message = "Biller response type is required (SINGLE or SELECTIVE)")
private String billerResponseType;
@NotBlank(message = "Plan MDM requirement cannot be blank")
private String planMDMRequirement;
@NotBlank(message = "Status must be ACTIVE or INACTIVE")
private String status;
@NotBlank(message = "Support deemed value is required (Yes/No)")
private String supportDeemed;
@NotBlank(message = "Support pending status is required (Yes/No)")
private String supportPendingStatus;
@NotBlank(message = "Biller timeout is required")
private String billerTimeOut;
private String routeUrl;
private String upmsEnabled;
private String clickpayEnabled;
private String deemedSuccessEnabled;
private String selectionType;
// ✅ Nested lists and objects — matching API structure
private List<PaymentModeDTO> billerPaymentModes;
private List<PaymentChannelDTO> billerPaymentChannels;
private List<CustomerParamDTO> billerCustomerParams;
private CustomerParamGroupsDTO customerParamGroups;
private BillerResponseParamsDTO billerResponseParams;
private List<AdditionalInfoDTO> billerAdditionalInfos;
private List<BillerAdditonalInfoDTO> billerAdditionalInfoPayments;
private List<InterchangeFeeConfDTO> interchangeFeeConves;
private List<InterchangeFeeDTO> interchangeFees;
private BillerPlanResponseParamsDTO billerPlanResponseParams;
}