TicketUserServices

<back to all web services

PreviewDiscountRequest

Requires Authentication
Requires any of the roles:Admin, TeamAdmin, MobileAppRequires the permission:ReadData
The following routes are available for this service:
POST/ticketOrder/previewDiscount
import java.math.*;
import java.util.*;
import net.servicestack.client.*;

public class dtos
{

    public static class PreviewDiscountRequest
    {
        public String code = null;
        public Integer eventId = null;
        public String fullPhoneNumber = null;
        public ArrayList<TicketDetails> orderDetails = null;
        
        public String getCode() { return code; }
        public PreviewDiscountRequest setCode(String value) { this.code = value; return this; }
        public Integer getEventId() { return eventId; }
        public PreviewDiscountRequest setEventId(Integer value) { this.eventId = value; return this; }
        public String getFullPhoneNumber() { return fullPhoneNumber; }
        public PreviewDiscountRequest setFullPhoneNumber(String value) { this.fullPhoneNumber = value; return this; }
        public ArrayList<TicketDetails> getOrderDetails() { return orderDetails; }
        public PreviewDiscountRequest setOrderDetails(ArrayList<TicketDetails> value) { this.orderDetails = value; return this; }
    }

    public static class TicketDetails
    {
        public Integer id = null;
        public Integer ticketId = null;
        public Integer eventSeriesTicketType = null;
        public Integer eventSeriesOwnerTicketType = null;
        public BigDecimal ticketPrice = null;
        public BigDecimal totalPrice = null;
        public Integer count = null;
        public String ticketColor = null;
        public Boolean showUsedTickets = null;
        public String ticketName = null;
        public String ticketDisplayString = null;
        public Integer ticketDetailsTransferredFrom = null;
        public Integer teamPassId = null;
        public Boolean isSpecialTicket = null;
        public String specialTicketId = null;
        public Boolean justChangedBySQL = null;
        public Date sqlJustChangedTimeStamp = null;
        public String currency = null;
        public String discountCode = null;
        public BigDecimal totalDiscount = null;
        public BigDecimal totalAmountBeforeDiscount = null;
        public BigDecimal ticketPriceBeforeDiscount = null;
        
        public Integer getId() { return id; }
        public TicketDetails setId(Integer value) { this.id = value; return this; }
        public Integer getTicketId() { return ticketId; }
        public TicketDetails setTicketId(Integer value) { this.ticketId = value; return this; }
        public Integer getEventSeriesTicketType() { return eventSeriesTicketType; }
        public TicketDetails setEventSeriesTicketType(Integer value) { this.eventSeriesTicketType = value; return this; }
        public Integer getEventSeriesOwnerTicketType() { return eventSeriesOwnerTicketType; }
        public TicketDetails setEventSeriesOwnerTicketType(Integer value) { this.eventSeriesOwnerTicketType = value; return this; }
        public BigDecimal getTicketPrice() { return ticketPrice; }
        public TicketDetails setTicketPrice(BigDecimal value) { this.ticketPrice = value; return this; }
        public BigDecimal getTotalPrice() { return totalPrice; }
        public TicketDetails setTotalPrice(BigDecimal value) { this.totalPrice = value; return this; }
        public Integer getCount() { return count; }
        public TicketDetails setCount(Integer value) { this.count = value; return this; }
        public String getTicketColor() { return ticketColor; }
        public TicketDetails setTicketColor(String value) { this.ticketColor = value; return this; }
        public Boolean isShowUsedTickets() { return showUsedTickets; }
        public TicketDetails setShowUsedTickets(Boolean value) { this.showUsedTickets = value; return this; }
        public String getTicketName() { return ticketName; }
        public TicketDetails setTicketName(String value) { this.ticketName = value; return this; }
        public String getTicketDisplayString() { return ticketDisplayString; }
        public TicketDetails setTicketDisplayString(String value) { this.ticketDisplayString = value; return this; }
        public Integer getTicketDetailsTransferredFrom() { return ticketDetailsTransferredFrom; }
        public TicketDetails setTicketDetailsTransferredFrom(Integer value) { this.ticketDetailsTransferredFrom = value; return this; }
        public Integer getTeamPassId() { return teamPassId; }
        public TicketDetails setTeamPassId(Integer value) { this.teamPassId = value; return this; }
        public Boolean getIsSpecialTicket() { return isSpecialTicket; }
        public TicketDetails setIsSpecialTicket(Boolean value) { this.isSpecialTicket = value; return this; }
        public String getSpecialTicketId() { return specialTicketId; }
        public TicketDetails setSpecialTicketId(String value) { this.specialTicketId = value; return this; }
        public Boolean isJustChangedBySQL() { return justChangedBySQL; }
        public TicketDetails setJustChangedBySQL(Boolean value) { this.justChangedBySQL = value; return this; }
        public Date getSqlJustChangedTimeStamp() { return sqlJustChangedTimeStamp; }
        public TicketDetails setSqlJustChangedTimeStamp(Date value) { this.sqlJustChangedTimeStamp = value; return this; }
        public String getCurrency() { return currency; }
        public TicketDetails setCurrency(String value) { this.currency = value; return this; }
        public String getDiscountCode() { return discountCode; }
        public TicketDetails setDiscountCode(String value) { this.discountCode = value; return this; }
        public BigDecimal getTotalDiscount() { return totalDiscount; }
        public TicketDetails setTotalDiscount(BigDecimal value) { this.totalDiscount = value; return this; }
        public BigDecimal getTotalAmountBeforeDiscount() { return totalAmountBeforeDiscount; }
        public TicketDetails setTotalAmountBeforeDiscount(BigDecimal value) { this.totalAmountBeforeDiscount = value; return this; }
        public BigDecimal getTicketPriceBeforeDiscount() { return ticketPriceBeforeDiscount; }
        public TicketDetails setTicketPriceBeforeDiscount(BigDecimal value) { this.ticketPriceBeforeDiscount = value; return this; }
    }

    public static class PreviewDiscountResult
    {
        public String status = null;
        public String reason = null;
        public LocalizedMessage message = null;
        public Integer discountCodeId = null;
        public Integer discountCodeTypeId = null;
        public DiscountSummary discount = null;
        public ArrayList<DiscountLineResult> lines = null;
        public BigDecimal subtotalBefore = null;
        public BigDecimal subtotalAfter = null;
        public BigDecimal totalSavings = null;
        public String currency = null;
        public Integer statusCode = null;
        
        public String getStatus() { return status; }
        public PreviewDiscountResult setStatus(String value) { this.status = value; return this; }
        public String getReason() { return reason; }
        public PreviewDiscountResult setReason(String value) { this.reason = value; return this; }
        public LocalizedMessage getMessage() { return message; }
        public PreviewDiscountResult setMessage(LocalizedMessage value) { this.message = value; return this; }
        public Integer getDiscountCodeId() { return discountCodeId; }
        public PreviewDiscountResult setDiscountCodeId(Integer value) { this.discountCodeId = value; return this; }
        public Integer getDiscountCodeTypeId() { return discountCodeTypeId; }
        public PreviewDiscountResult setDiscountCodeTypeId(Integer value) { this.discountCodeTypeId = value; return this; }
        public DiscountSummary getDiscount() { return discount; }
        public PreviewDiscountResult setDiscount(DiscountSummary value) { this.discount = value; return this; }
        public ArrayList<DiscountLineResult> getLines() { return lines; }
        public PreviewDiscountResult setLines(ArrayList<DiscountLineResult> value) { this.lines = value; return this; }
        public BigDecimal getSubtotalBefore() { return subtotalBefore; }
        public PreviewDiscountResult setSubtotalBefore(BigDecimal value) { this.subtotalBefore = value; return this; }
        public BigDecimal getSubtotalAfter() { return subtotalAfter; }
        public PreviewDiscountResult setSubtotalAfter(BigDecimal value) { this.subtotalAfter = value; return this; }
        public BigDecimal getTotalSavings() { return totalSavings; }
        public PreviewDiscountResult setTotalSavings(BigDecimal value) { this.totalSavings = value; return this; }
        public String getCurrency() { return currency; }
        public PreviewDiscountResult setCurrency(String value) { this.currency = value; return this; }
        public Integer getStatusCode() { return statusCode; }
        public PreviewDiscountResult setStatusCode(Integer value) { this.statusCode = value; return this; }
    }

    public static class LocalizedMessage
    {
        public String is = null;
        public String en = null;
        
        public String getIs() { return is; }
        public LocalizedMessage setIs(String value) { this.is = value; return this; }
        public String getEn() { return en; }
        public LocalizedMessage setEn(String value) { this.en = value; return this; }
    }

    public static class DiscountSummary
    {
        public String type = null;
        public BigDecimal value = null;
        
        public String getType() { return type; }
        public DiscountSummary setType(String value) { this.type = value; return this; }
        public BigDecimal getValue() { return value; }
        public DiscountSummary setValue(BigDecimal value) { this.value = value; return this; }
    }

    public static class DiscountLineResult
    {
        public Integer ticketTypeId = null;
        public Integer count = null;
        public Boolean applied = null;
        public BigDecimal unitBefore = null;
        public BigDecimal unitAfter = null;
        public BigDecimal lineBefore = null;
        public BigDecimal lineAfter = null;
        
        public Integer getTicketTypeId() { return ticketTypeId; }
        public DiscountLineResult setTicketTypeId(Integer value) { this.ticketTypeId = value; return this; }
        public Integer getCount() { return count; }
        public DiscountLineResult setCount(Integer value) { this.count = value; return this; }
        public Boolean isApplied() { return applied; }
        public DiscountLineResult setApplied(Boolean value) { this.applied = value; return this; }
        public BigDecimal getUnitBefore() { return unitBefore; }
        public DiscountLineResult setUnitBefore(BigDecimal value) { this.unitBefore = value; return this; }
        public BigDecimal getUnitAfter() { return unitAfter; }
        public DiscountLineResult setUnitAfter(BigDecimal value) { this.unitAfter = value; return this; }
        public BigDecimal getLineBefore() { return lineBefore; }
        public DiscountLineResult setLineBefore(BigDecimal value) { this.lineBefore = value; return this; }
        public BigDecimal getLineAfter() { return lineAfter; }
        public DiscountLineResult setLineAfter(BigDecimal value) { this.lineAfter = value; return this; }
    }

}

Java PreviewDiscountRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /ticketOrder/previewDiscount HTTP/1.1 
Host: stubbur-app.azurewebsites.net 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	code: String,
	eventId: 0,
	fullPhoneNumber: String,
	orderDetails: 
	[
		{
			id: 0,
			ticketId: 0,
			eventSeriesTicketType: 0,
			eventSeriesOwnerTicketType: 0,
			ticketPrice: 0,
			totalPrice: 0,
			count: 0,
			ticketColor: String,
			showUsedTickets: False,
			ticketName: String,
			ticketDisplayString: String,
			ticketDetailsTransferredFrom: 0,
			teamPassId: 0,
			isSpecialTicket: False,
			specialTicketId: String,
			justChangedBySQL: False,
			sqlJustChangedTimeStamp: 0001-01-01,
			currency: String,
			discountCode: String,
			totalDiscount: 0,
			totalAmountBeforeDiscount: 0,
			ticketPriceBeforeDiscount: 0
		}
	]
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	status: String,
	reason: String,
	message: 
	{
		is: String,
		en: String
	},
	discountCodeId: 0,
	discountCodeTypeId: 0,
	discount: 
	{
		type: String,
		value: 0
	},
	lines: 
	[
		{
			ticketTypeId: 0,
			count: 0,
			applied: False,
			unitBefore: 0,
			unitAfter: 0,
			lineBefore: 0,
			lineAfter: 0
		}
	],
	subtotalBefore: 0,
	subtotalAfter: 0,
	totalSavings: 0,
	currency: String,
	statusCode: 0
}