SellerListing.java
package org.oxerr.viagogo.model.response.inventory;
import java.time.Instant;
import java.util.List;
import org.apache.commons.lang3.builder.EqualsBuilder;
import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.oxerr.viagogo.model.BarcodeInformation;
import org.oxerr.viagogo.model.Money;
import org.oxerr.viagogo.model.SeatingDetail;
import org.oxerr.viagogo.model.response.Resource;
import org.oxerr.viagogo.model.response.catalog.Event;
import org.oxerr.viagogo.model.response.catalog.Venue;
import io.openapitools.jackson.dataformat.hal.annotation.EmbeddedResource;
/**
* A set of tickets for sale on the viagogo marketplace that belong to the
* currently authenticated user.
*
* <a href=
* "https://developer.viagogo.net/api-reference/inventory#tag/Resource_SellerListing">SellerListing</a>
*/
@io.openapitools.jackson.dataformat.hal.annotation.Resource
public class SellerListing extends Resource {
private static final long serialVersionUID = 2023021301L;
/**
* The listing identifier.
*/
private Long id;
/**
* The date when the listing was created.
*/
private Instant createdAt;
/**
* The number of tickets available for purchase.
*/
private Integer numberOfTickets;
/**
* The seating information for the ticket(s) in this listing.
*/
private SeatingDetail seating;
/**
* The seating information that will be displayed to buyers for the ticket(s) in
* this listing.
*/
private SeatingDetail displaySeating;
/**
* The price of each ticket in the listing.
*/
private Money ticketPrice;
/**
* The date when the listing was last updated.
*/
private Instant updatedAt;
/**
* An identifier that has been assigned to the listing in an external inventory
* management system.
*/
private String externalId;
/**
* The date when the listing will be automatically unpublished from the
* marketplace.
*/
private Instant expiresAt;
/**
* The number of tickets that should be displayed to buyers as available for
* purchase.
*/
private Integer displayNumberOfTickets;
/**
* The price printed on the ticket, not including any booking fees.
*/
private Money faceValue;
/**
* The amount that the seller will receive for each ticket sold.
*/
private Money ticketProceeds;
/**
* The date when the seller will have the tickets in hand.
*/
private Instant inHandAt;
/**
* Barcode(s) for the ticket(s) in this listing.
*/
private List<BarcodeInformation> barcodes;
private Boolean instantDelivery;
/**
* Shipment of the ticket to the buyer cannot be guaranteed before the event. To
* increase the deliverability of electronic type tickets, preupload them (e.g.
* pre-upload barcodes or PDF files.) To increase deliverability of paper
* tickets, opt your tickets into our LMS program.
*/
private Boolean undeliverable;
/**
* The purchase price paid by the seller for each ticket in the listing.
*/
private Money purchasePricePerTicket;
/**
* The total purchase price paid by the seller.
*/
private Money totalPurchasePrice;
/**
* True if the seller already paid sales tax for the ticket(s); otherwise,
* false.
*/
private Boolean salesTaxPaid;
@EmbeddedResource
private ListingConstraints constraints;
@EmbeddedResource
private Event event;
@EmbeddedResource
private List<ListingNote> listingNotes;
@EmbeddedResource
private SplitType splitType;
@EmbeddedResource
private TicketType ticketType;
@EmbeddedResource
private Venue venue;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public Instant getCreatedAt() {
return createdAt;
}
public void setCreatedAt(Instant createdAt) {
this.createdAt = createdAt;
}
public Integer getNumberOfTickets() {
return numberOfTickets;
}
public void setNumberOfTickets(Integer numberOfTickets) {
this.numberOfTickets = numberOfTickets;
}
public SeatingDetail getSeating() {
return seating;
}
public void setSeating(SeatingDetail seating) {
this.seating = seating;
}
public SeatingDetail getDisplaySeating() {
return displaySeating;
}
public void setDisplaySeating(SeatingDetail displaySeating) {
this.displaySeating = displaySeating;
}
public Money getTicketPrice() {
return ticketPrice;
}
public void setTicketPrice(Money ticketPrice) {
this.ticketPrice = ticketPrice;
}
public Instant getUpdatedAt() {
return updatedAt;
}
public void setUpdatedAt(Instant updatedAt) {
this.updatedAt = updatedAt;
}
public String getExternalId() {
return externalId;
}
public void setExternalId(String externalId) {
this.externalId = externalId;
}
public Instant getExpiresAt() {
return expiresAt;
}
public void setExpiresAt(Instant expiresAt) {
this.expiresAt = expiresAt;
}
public Integer getDisplayNumberOfTickets() {
return displayNumberOfTickets;
}
public void setDisplayNumberOfTickets(Integer displayNumberOfTickets) {
this.displayNumberOfTickets = displayNumberOfTickets;
}
public Money getFaceValue() {
return faceValue;
}
public void setFaceValue(Money faceValue) {
this.faceValue = faceValue;
}
public Money getTicketProceeds() {
return ticketProceeds;
}
public void setTicketProceeds(Money ticketProceeds) {
this.ticketProceeds = ticketProceeds;
}
public Instant getInHandAt() {
return inHandAt;
}
public void setInHandAt(Instant inHandAt) {
this.inHandAt = inHandAt;
}
public List<BarcodeInformation> getBarcodes() {
return barcodes;
}
public void setBarcodes(List<BarcodeInformation> barcodes) {
this.barcodes = barcodes;
}
public Boolean getInstantDelivery() {
return instantDelivery;
}
public void setInstantDelivery(Boolean instantDelivery) {
this.instantDelivery = instantDelivery;
}
public Boolean getUndeliverable() {
return undeliverable;
}
public void setUndeliverable(Boolean undeliverable) {
this.undeliverable = undeliverable;
}
public Money getPurchasePricePerTicket() {
return purchasePricePerTicket;
}
public void setPurchasePricePerTicket(Money purchasePricePerTicket) {
this.purchasePricePerTicket = purchasePricePerTicket;
}
public Money getTotalPurchasePrice() {
return totalPurchasePrice;
}
public void setTotalPurchasePrice(Money totalPurchasePrice) {
this.totalPurchasePrice = totalPurchasePrice;
}
public Boolean getSalesTaxPaid() {
return salesTaxPaid;
}
public void setSalesTaxPaid(Boolean salesTaxPaid) {
this.salesTaxPaid = salesTaxPaid;
}
public ListingConstraints getConstraints() {
return constraints;
}
public void setConstraints(ListingConstraints constraints) {
this.constraints = constraints;
}
public Event getEvent() {
return event;
}
public void setEvent(Event event) {
this.event = event;
}
public List<ListingNote> getListingNotes() {
return listingNotes;
}
public void setListingNotes(List<ListingNote> listingNotes) {
this.listingNotes = listingNotes;
}
public SplitType getSplitType() {
return splitType;
}
public void setSplitType(SplitType splitType) {
this.splitType = splitType;
}
public TicketType getTicketType() {
return ticketType;
}
public void setTicketType(TicketType ticketType) {
this.ticketType = ticketType;
}
public Venue getVenue() {
return venue;
}
public void setVenue(Venue venue) {
this.venue = venue;
}
@Override
public int hashCode() {
return HashCodeBuilder.reflectionHashCode(this);
}
@Override
public boolean equals(Object obj) {
if (this == obj) {
return true;
}
if (!(obj instanceof SellerListing)) {
return false;
}
SellerListing rhs = (SellerListing) obj;
return EqualsBuilder.reflectionEquals(this, rhs);
}
@Override
public String toString() {
return String.format("seller listing id=%s(externalId=%s)", this.id, this.externalId);
}
}