TicketUserServices

<back to all web services

SalesOverviewRequest

Requires Authentication
Requires any of the roles:Admin, TeamAdminRequired permission:Sales.Total
The following routes are available for this service:
POST/sales/overview
import java.math.*;
import java.util.*;
import net.servicestack.client.*;

public class dtos
{

    public static class SalesOverviewRequest
    {
        public Integer eventOwnerId = null;
        public ArrayList<Integer> additionalOwnerIds = null;
        public Integer eventId = null;
        public Date fromUtc = null;
        public Date toUtc = null;
        public Date compareFromUtc = null;
        public Date compareToUtc = null;
        public String bucket = null;
        public Integer topEventsLimit = null;
        public Integer recentOrdersLimit = null;
        
        public Integer getEventOwnerId() { return eventOwnerId; }
        public SalesOverviewRequest setEventOwnerId(Integer value) { this.eventOwnerId = value; return this; }
        public ArrayList<Integer> getAdditionalOwnerIds() { return additionalOwnerIds; }
        public SalesOverviewRequest setAdditionalOwnerIds(ArrayList<Integer> value) { this.additionalOwnerIds = value; return this; }
        public Integer getEventId() { return eventId; }
        public SalesOverviewRequest setEventId(Integer value) { this.eventId = value; return this; }
        public Date getFromUtc() { return fromUtc; }
        public SalesOverviewRequest setFromUtc(Date value) { this.fromUtc = value; return this; }
        public Date getToUtc() { return toUtc; }
        public SalesOverviewRequest setToUtc(Date value) { this.toUtc = value; return this; }
        public Date getCompareFromUtc() { return compareFromUtc; }
        public SalesOverviewRequest setCompareFromUtc(Date value) { this.compareFromUtc = value; return this; }
        public Date getCompareToUtc() { return compareToUtc; }
        public SalesOverviewRequest setCompareToUtc(Date value) { this.compareToUtc = value; return this; }
        public String getBucket() { return bucket; }
        public SalesOverviewRequest setBucket(String value) { this.bucket = value; return this; }
        public Integer getTopEventsLimit() { return topEventsLimit; }
        public SalesOverviewRequest setTopEventsLimit(Integer value) { this.topEventsLimit = value; return this; }
        public Integer getRecentOrdersLimit() { return recentOrdersLimit; }
        public SalesOverviewRequest setRecentOrdersLimit(Integer value) { this.recentOrdersLimit = value; return this; }
    }

    public static class SalesOverviewResult
    {
        public SalesKpis current = null;
        public SalesKpis previous = null;
        public SalesDeltas delta = null;
        public ArrayList<SalesTrendBucket> trend = null;
        public ArrayList<SalesTrendBucket> previousTrend = null;
        public ArrayList<SalesTopEvent> topEvents = null;
        public ArrayList<SalesRecentOrder> recentOrders = null;
        public ArrayList<SalesHourBucket> byHourOfDay = null;
        public ArrayList<SalesDowBucket> byDayOfWeek = null;
        public ArrayList<SalesProduct> topProducts = null;
        public Boolean hasAnyDataEver = null;
        public ArrayList<Integer> owners = null;
        public String bucket = null;
        public Date freshnessUtc = null;
        public Integer statusCode = null;
        public String message = null;
        
        public SalesKpis getCurrent() { return current; }
        public SalesOverviewResult setCurrent(SalesKpis value) { this.current = value; return this; }
        public SalesKpis getPrevious() { return previous; }
        public SalesOverviewResult setPrevious(SalesKpis value) { this.previous = value; return this; }
        public SalesDeltas getDelta() { return delta; }
        public SalesOverviewResult setDelta(SalesDeltas value) { this.delta = value; return this; }
        public ArrayList<SalesTrendBucket> getTrend() { return trend; }
        public SalesOverviewResult setTrend(ArrayList<SalesTrendBucket> value) { this.trend = value; return this; }
        public ArrayList<SalesTrendBucket> getPreviousTrend() { return previousTrend; }
        public SalesOverviewResult setPreviousTrend(ArrayList<SalesTrendBucket> value) { this.previousTrend = value; return this; }
        public ArrayList<SalesTopEvent> getTopEvents() { return topEvents; }
        public SalesOverviewResult setTopEvents(ArrayList<SalesTopEvent> value) { this.topEvents = value; return this; }
        public ArrayList<SalesRecentOrder> getRecentOrders() { return recentOrders; }
        public SalesOverviewResult setRecentOrders(ArrayList<SalesRecentOrder> value) { this.recentOrders = value; return this; }
        public ArrayList<SalesHourBucket> getByHourOfDay() { return byHourOfDay; }
        public SalesOverviewResult setByHourOfDay(ArrayList<SalesHourBucket> value) { this.byHourOfDay = value; return this; }
        public ArrayList<SalesDowBucket> getByDayOfWeek() { return byDayOfWeek; }
        public SalesOverviewResult setByDayOfWeek(ArrayList<SalesDowBucket> value) { this.byDayOfWeek = value; return this; }
        public ArrayList<SalesProduct> getTopProducts() { return topProducts; }
        public SalesOverviewResult setTopProducts(ArrayList<SalesProduct> value) { this.topProducts = value; return this; }
        public Boolean isHasAnyDataEver() { return hasAnyDataEver; }
        public SalesOverviewResult setHasAnyDataEver(Boolean value) { this.hasAnyDataEver = value; return this; }
        public ArrayList<Integer> getOwners() { return owners; }
        public SalesOverviewResult setOwners(ArrayList<Integer> value) { this.owners = value; return this; }
        public String getBucket() { return bucket; }
        public SalesOverviewResult setBucket(String value) { this.bucket = value; return this; }
        public Date getFreshnessUtc() { return freshnessUtc; }
        public SalesOverviewResult setFreshnessUtc(Date value) { this.freshnessUtc = value; return this; }
        public Integer getStatusCode() { return statusCode; }
        public SalesOverviewResult setStatusCode(Integer value) { this.statusCode = value; return this; }
        public String getMessage() { return message; }
        public SalesOverviewResult setMessage(String value) { this.message = value; return this; }
    }

    public static class SalesKpis
    {
        public BigDecimal grossNet = null;
        public BigDecimal refunded = null;
        public Integer ticketsAllReal = null;
        public Integer ticketsPaid = null;
        public Integer orders = null;
        public BigDecimal aov = null;
        
        public BigDecimal getGrossNet() { return grossNet; }
        public SalesKpis setGrossNet(BigDecimal value) { this.grossNet = value; return this; }
        public BigDecimal getRefunded() { return refunded; }
        public SalesKpis setRefunded(BigDecimal value) { this.refunded = value; return this; }
        public Integer getTicketsAllReal() { return ticketsAllReal; }
        public SalesKpis setTicketsAllReal(Integer value) { this.ticketsAllReal = value; return this; }
        public Integer getTicketsPaid() { return ticketsPaid; }
        public SalesKpis setTicketsPaid(Integer value) { this.ticketsPaid = value; return this; }
        public Integer getOrders() { return orders; }
        public SalesKpis setOrders(Integer value) { this.orders = value; return this; }
        public BigDecimal getAov() { return aov; }
        public SalesKpis setAov(BigDecimal value) { this.aov = value; return this; }
    }

    public static class SalesDeltas
    {
        public KpiDelta grossNet = null;
        public KpiDelta refunded = null;
        public KpiDelta ticketsAllReal = null;
        public KpiDelta ticketsPaid = null;
        public KpiDelta orders = null;
        public KpiDelta aov = null;
        
        public KpiDelta getGrossNet() { return grossNet; }
        public SalesDeltas setGrossNet(KpiDelta value) { this.grossNet = value; return this; }
        public KpiDelta getRefunded() { return refunded; }
        public SalesDeltas setRefunded(KpiDelta value) { this.refunded = value; return this; }
        public KpiDelta getTicketsAllReal() { return ticketsAllReal; }
        public SalesDeltas setTicketsAllReal(KpiDelta value) { this.ticketsAllReal = value; return this; }
        public KpiDelta getTicketsPaid() { return ticketsPaid; }
        public SalesDeltas setTicketsPaid(KpiDelta value) { this.ticketsPaid = value; return this; }
        public KpiDelta getOrders() { return orders; }
        public SalesDeltas setOrders(KpiDelta value) { this.orders = value; return this; }
        public KpiDelta getAov() { return aov; }
        public SalesDeltas setAov(KpiDelta value) { this.aov = value; return this; }
    }

    public static class KpiDelta
    {
        public BigDecimal abs = null;
        public Double pct = null;
        public String dir = null;
        
        public BigDecimal getAbs() { return abs; }
        public KpiDelta setAbs(BigDecimal value) { this.abs = value; return this; }
        public Double getPct() { return pct; }
        public KpiDelta setPct(Double value) { this.pct = value; return this; }
        public String getDir() { return dir; }
        public KpiDelta setDir(String value) { this.dir = value; return this; }
    }

    public static class SalesTrendBucket
    {
        public Date bucket = null;
        public BigDecimal revenue = null;
        public Integer tickets = null;
        
        public Date getBucket() { return bucket; }
        public SalesTrendBucket setBucket(Date value) { this.bucket = value; return this; }
        public BigDecimal getRevenue() { return revenue; }
        public SalesTrendBucket setRevenue(BigDecimal value) { this.revenue = value; return this; }
        public Integer getTickets() { return tickets; }
        public SalesTrendBucket setTickets(Integer value) { this.tickets = value; return this; }
    }

    public static class SalesTopEvent
    {
        public Integer eventId = null;
        public String eventName = null;
        public Date eventDate = null;
        public BigDecimal grossNet = null;
        public Integer paidTickets = null;
        public Integer realTickets = null;
        public Integer orders = null;
        
        public Integer getEventId() { return eventId; }
        public SalesTopEvent setEventId(Integer value) { this.eventId = value; return this; }
        public String getEventName() { return eventName; }
        public SalesTopEvent setEventName(String value) { this.eventName = value; return this; }
        public Date getEventDate() { return eventDate; }
        public SalesTopEvent setEventDate(Date value) { this.eventDate = value; return this; }
        public BigDecimal getGrossNet() { return grossNet; }
        public SalesTopEvent setGrossNet(BigDecimal value) { this.grossNet = value; return this; }
        public Integer getPaidTickets() { return paidTickets; }
        public SalesTopEvent setPaidTickets(Integer value) { this.paidTickets = value; return this; }
        public Integer getRealTickets() { return realTickets; }
        public SalesTopEvent setRealTickets(Integer value) { this.realTickets = value; return this; }
        public Integer getOrders() { return orders; }
        public SalesTopEvent setOrders(Integer value) { this.orders = value; return this; }
    }

    public static class SalesRecentOrder
    {
        public Integer ticketId = null;
        public Date createdAt = null;
        public String eventName = null;
        public BigDecimal amount = null;
        public Integer ticketCount = null;
        public String buyerName = null;
        
        public Integer getTicketId() { return ticketId; }
        public SalesRecentOrder setTicketId(Integer value) { this.ticketId = value; return this; }
        public Date getCreatedAt() { return createdAt; }
        public SalesRecentOrder setCreatedAt(Date value) { this.createdAt = value; return this; }
        public String getEventName() { return eventName; }
        public SalesRecentOrder setEventName(String value) { this.eventName = value; return this; }
        public BigDecimal getAmount() { return amount; }
        public SalesRecentOrder setAmount(BigDecimal value) { this.amount = value; return this; }
        public Integer getTicketCount() { return ticketCount; }
        public SalesRecentOrder setTicketCount(Integer value) { this.ticketCount = value; return this; }
        public String getBuyerName() { return buyerName; }
        public SalesRecentOrder setBuyerName(String value) { this.buyerName = value; return this; }
    }

    public static class SalesHourBucket
    {
        public Integer hour = null;
        public BigDecimal revenue = null;
        public Integer orders = null;
        public Integer tickets = null;
        
        public Integer getHour() { return hour; }
        public SalesHourBucket setHour(Integer value) { this.hour = value; return this; }
        public BigDecimal getRevenue() { return revenue; }
        public SalesHourBucket setRevenue(BigDecimal value) { this.revenue = value; return this; }
        public Integer getOrders() { return orders; }
        public SalesHourBucket setOrders(Integer value) { this.orders = value; return this; }
        public Integer getTickets() { return tickets; }
        public SalesHourBucket setTickets(Integer value) { this.tickets = value; return this; }
    }

    public static class SalesDowBucket
    {
        public Integer dow = null;
        public BigDecimal revenue = null;
        public Integer orders = null;
        public Integer tickets = null;
        
        public Integer getDow() { return dow; }
        public SalesDowBucket setDow(Integer value) { this.dow = value; return this; }
        public BigDecimal getRevenue() { return revenue; }
        public SalesDowBucket setRevenue(BigDecimal value) { this.revenue = value; return this; }
        public Integer getOrders() { return orders; }
        public SalesDowBucket setOrders(Integer value) { this.orders = value; return this; }
        public Integer getTickets() { return tickets; }
        public SalesDowBucket setTickets(Integer value) { this.tickets = value; return this; }
    }

    public static class SalesProduct
    {
        public String ticketName = null;
        public Integer tickets = null;
        public BigDecimal revenue = null;
        public Integer orders = null;
        
        public String getTicketName() { return ticketName; }
        public SalesProduct setTicketName(String value) { this.ticketName = value; return this; }
        public Integer getTickets() { return tickets; }
        public SalesProduct setTickets(Integer value) { this.tickets = value; return this; }
        public BigDecimal getRevenue() { return revenue; }
        public SalesProduct setRevenue(BigDecimal value) { this.revenue = value; return this; }
        public Integer getOrders() { return orders; }
        public SalesProduct setOrders(Integer value) { this.orders = value; return this; }
    }

}

Java SalesOverviewRequest 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 /sales/overview HTTP/1.1 
Host: stubbur-app.azurewebsites.net 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	eventOwnerId: 0,
	additionalOwnerIds: 
	[
		0
	],
	eventId: 0,
	fromUtc: 0001-01-01,
	toUtc: 0001-01-01,
	compareFromUtc: 0001-01-01,
	compareToUtc: 0001-01-01,
	bucket: String,
	topEventsLimit: 0,
	recentOrdersLimit: 0
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	current: 
	{
		grossNet: 0,
		refunded: 0,
		ticketsAllReal: 0,
		ticketsPaid: 0,
		orders: 0,
		aov: 0
	},
	previous: 
	{
		grossNet: 0,
		refunded: 0,
		ticketsAllReal: 0,
		ticketsPaid: 0,
		orders: 0,
		aov: 0
	},
	delta: 
	{
		grossNet: 
		{
			abs: 0,
			pct: 0,
			dir: String
		},
		refunded: 
		{
			abs: 0,
			pct: 0,
			dir: String
		},
		ticketsAllReal: 
		{
			abs: 0,
			pct: 0,
			dir: String
		},
		ticketsPaid: 
		{
			abs: 0,
			pct: 0,
			dir: String
		},
		orders: 
		{
			abs: 0,
			pct: 0,
			dir: String
		},
		aov: 
		{
			abs: 0,
			pct: 0,
			dir: String
		}
	},
	trend: 
	[
		{
			bucket: 0001-01-01,
			revenue: 0,
			tickets: 0
		}
	],
	previousTrend: 
	[
		{
			bucket: 0001-01-01,
			revenue: 0,
			tickets: 0
		}
	],
	topEvents: 
	[
		{
			eventId: 0,
			eventName: String,
			eventDate: 0001-01-01,
			grossNet: 0,
			paidTickets: 0,
			realTickets: 0,
			orders: 0
		}
	],
	recentOrders: 
	[
		{
			ticketId: 0,
			createdAt: 0001-01-01,
			eventName: String,
			amount: 0,
			ticketCount: 0,
			buyerName: String
		}
	],
	byHourOfDay: 
	[
		{
			hour: 0,
			revenue: 0,
			orders: 0,
			tickets: 0
		}
	],
	byDayOfWeek: 
	[
		{
			dow: 0,
			revenue: 0,
			orders: 0,
			tickets: 0
		}
	],
	topProducts: 
	[
		{
			ticketName: String,
			tickets: 0,
			revenue: 0,
			orders: 0
		}
	],
	hasAnyDataEver: False,
	owners: 
	[
		0
	],
	bucket: String,
	freshnessUtc: 0001-01-01,
	statusCode: 0,
	message: String
}