GET | /summary-report/{BeeNumber}/region-b |
---|
import datetime
import decimal
from marshmallow.fields import *
from servicestack import *
from typing import *
from dataclasses import dataclass, field
from dataclasses_json import dataclass_json, LetterCase, Undefined, config
from enum import Enum, IntEnum
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class BeeNumberDisplaySet:
bee_number: Optional[Decimal] = None
external_ids: Optional[List[str]] = None
sales_organization_id: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SummaryValues:
c1: Optional[Decimal] = None
c2: Optional[Decimal] = None
c3: Optional[Decimal] = None
c4: Optional[Decimal] = None
c5: Optional[Decimal] = None
c6: Optional[Decimal] = None
c7: Optional[Decimal] = None
c8: Optional[Decimal] = None
c9: Optional[Decimal] = None
c10: Optional[Decimal] = None
c11: Optional[Decimal] = None
c12: Optional[Decimal] = None
c13: Optional[Decimal] = None
c14: Optional[Decimal] = None
c15: Optional[Decimal] = None
c16: Optional[Decimal] = None
c17: Optional[Decimal] = None
c18: Optional[Decimal] = None
c19: Optional[Decimal] = None
c20: Optional[Decimal] = None
c21: Optional[Decimal] = None
c22: Optional[Decimal] = None
c23: Optional[Decimal] = None
c24: Optional[Decimal] = None
c25: Optional[Decimal] = None
c26: Optional[Decimal] = None
c27: Optional[Decimal] = None
c28: Optional[Decimal] = None
ytd: Optional[Decimal] = None
q1: Optional[Decimal] = None
q2: Optional[Decimal] = None
q3: Optional[Decimal] = None
q4: Optional[Decimal] = None
q5: Optional[Decimal] = None
qtd: Optional[Decimal] = None
current_quarter: Optional[Decimal] = None
current_v_s_p_c_percent: Optional[Decimal] = None
current_v_s_p_y_percent: Optional[Decimal] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class YearlyValues:
current_year: Optional[SummaryValues] = None
prior_year: Optional[SummaryValues] = None
percent_vs_prior_year: Optional[SummaryValues] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class RepresentativeSummaryReportRegionBViewModel:
bee_number: Optional[BeeNumberDisplaySet] = None
current_year: Optional[int] = None
prior_year: Optional[int] = None
award_sales: Optional[YearlyValues] = None
net_sales: Optional[YearlyValues] = None
number_of_customers: Optional[YearlyValues] = None
orders: Optional[YearlyValues] = None
activity: Optional[YearlyValues] = None
aos_award_sales: Optional[YearlyValues] = None
rep_count: Optional[YearlyValues] = None
aos_net_sales: Optional[YearlyValues] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SummaryReportRepresentativeRegionBGetResponse(GetResponse[RepresentativeSummaryReportRegionBViewModel]):
pass
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SummaryReportRepresentativeRegionBGet(IGet):
"""
Region B is middle section of summary report that shows cycles for this year compared to last year
"""
bee_number: Optional[Decimal] = None
TEntity = TypeVar('TEntity')
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class GetResponse(Generic[TEntity]):
item: Optional[TEntity] = None
response_status: Optional[ResponseStatus] = None
Python SummaryReportRepresentativeRegionBGet DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /summary-report/{BeeNumber}/region-b HTTP/1.1 Host: extensions.avon.ca Accept: text/jsv
HTTP/1.1 200 OK Content-Type: text/jsv Content-Length: length { item: { beeNumber: { beeNumber: 0, externalIds: [ String ], salesOrganizationId: String }, currentYear: 0, priorYear: 0, awardSales: { currentYear: { c1: 0, c2: 0, c3: 0, c4: 0, c5: 0, c6: 0, c7: 0, c8: 0, c9: 0, c10: 0, c11: 0, c12: 0, c13: 0, c14: 0, c15: 0, c16: 0, c17: 0, c18: 0, c19: 0, c20: 0, c21: 0, c22: 0, c23: 0, c24: 0, c25: 0, c26: 0, c27: 0, c28: 0, ytd: 0, q1: 0, q2: 0, q3: 0, q4: 0, q5: 0, qtd: 0, currentQuarter: 0, currentVSPCPercent: 0, currentVSPYPercent: 0 }, priorYear: { c1: 0, c2: 0, c3: 0, c4: 0, c5: 0, c6: 0, c7: 0, c8: 0, c9: 0, c10: 0, c11: 0, c12: 0, c13: 0, c14: 0, c15: 0, c16: 0, c17: 0, c18: 0, c19: 0, c20: 0, c21: 0, c22: 0, c23: 0, c24: 0, c25: 0, c26: 0, c27: 0, c28: 0, ytd: 0, q1: 0, q2: 0, q3: 0, q4: 0, q5: 0, qtd: 0, currentQuarter: 0, currentVSPCPercent: 0, currentVSPYPercent: 0 }, percentVsPriorYear: { c1: 0, c2: 0, c3: 0, c4: 0, c5: 0, c6: 0, c7: 0, c8: 0, c9: 0, c10: 0, c11: 0, c12: 0, c13: 0, c14: 0, c15: 0, c16: 0, c17: 0, c18: 0, c19: 0, c20: 0, c21: 0, c22: 0, c23: 0, c24: 0, c25: 0, c26: 0, c27: 0, c28: 0, ytd: 0, q1: 0, q2: 0, q3: 0, q4: 0, q5: 0, qtd: 0, currentQuarter: 0, currentVSPCPercent: 0, currentVSPYPercent: 0 } }, netSales: { currentYear: { c1: 0, c2: 0, c3: 0, c4: 0, c5: 0, c6: 0, c7: 0, c8: 0, c9: 0, c10: 0, c11: 0, c12: 0, c13: 0, c14: 0, c15: 0, c16: 0, c17: 0, c18: 0, c19: 0, c20: 0, c21: 0, c22: 0, c23: 0, c24: 0, c25: 0, c26: 0, c27: 0, c28: 0, ytd: 0, q1: 0, q2: 0, q3: 0, q4: 0, q5: 0, qtd: 0, currentQuarter: 0, currentVSPCPercent: 0, currentVSPYPercent: 0 }, priorYear: { c1: 0, c2: 0, c3: 0, c4: 0, c5: 0, c6: 0, c7: 0, c8: 0, c9: 0, c10: 0, c11: 0, c12: 0, c13: 0, c14: 0, c15: 0, c16: 0, c17: 0, c18: 0, c19: 0, c20: 0, c21: 0, c22: 0, c23: 0, c24: 0, c25: 0, c26: 0, c27: 0, c28: 0, ytd: 0, q1: 0, q2: 0, q3: 0, q4: 0, q5: 0, qtd: 0, currentQuarter: 0, currentVSPCPercent: 0, currentVSPYPercent: 0 }, percentVsPriorYear: { c1: 0, c2: 0, c3: 0, c4: 0, c5: 0, c6: 0, c7: 0, c8: 0, c9: 0, c10: 0, c11: 0, c12: 0, c13: 0, c14: 0, c15: 0, c16: 0, c17: 0, c18: 0, c19: 0, c20: 0, c21: 0, c22: 0, c23: 0, c24: 0, c25: 0, c26: 0, c27: 0, c28: 0, ytd: 0, q1: 0, q2: 0, q3: 0, q4: 0, q5: 0, qtd: 0, currentQuarter: 0, currentVSPCPercent: 0, currentVSPYPercent: 0 } }, numberOfCustomers: { currentYear: { c1: 0, c2: 0, c3: 0, c4: 0, c5: 0, c6: 0, c7: 0, c8: 0, c9: 0, c10: 0, c11: 0, c12: 0, c13: 0, c14: 0, c15: 0, c16: 0, c17: 0, c18: 0, c19: 0, c20: 0, c21: 0, c22: 0, c23: 0, c24: 0, c25: 0, c26: 0, c27: 0, c28: 0, ytd: 0, q1: 0, q2: 0, q3: 0, q4: 0, q5: 0, qtd: 0, currentQuarter: 0, currentVSPCPercent: 0, currentVSPYPercent: 0 }, priorYear: { c1: 0, c2: 0, c3: 0, c4: 0, c5: 0, c6: 0, c7: 0, c8: 0, c9: 0, c10: 0, c11: 0, c12: 0, c13: 0, c14: 0, c15: 0, c16: 0, c17: 0, c18: 0, c19: 0, c20: 0, c21: 0, c22: 0, c23: 0, c24: 0, c25: 0, c26: 0, c27: 0, c28: 0, ytd: 0, q1: 0, q2: 0, q3: 0, q4: 0, q5: 0, qtd: 0, currentQuarter: 0, currentVSPCPercent: 0, currentVSPYPercent: 0 }, percentVsPriorYear: { c1: 0, c2: 0, c3: 0, c4: 0, c5: 0, c6: 0, c7: 0, c8: 0, c9: 0, c10: 0, c11: 0, c12: 0, c13: 0, c14: 0, c15: 0, c16: 0, c17: 0, c18: 0, c19: 0, c20: 0, c21: 0, c22: 0, c23: 0, c24: 0, c25: 0, c26: 0, c27: 0, c28: 0, ytd: 0, q1: 0, q2: 0, q3: 0, q4: 0, q5: 0, qtd: 0, currentQuarter: 0, currentVSPCPercent: 0, currentVSPYPercent: 0 } }, orders: { currentYear: { c1: 0, c2: 0, c3: 0, c4: 0, c5: 0, c6: 0, c7: 0, c8: 0, c9: 0, c10: 0, c11: 0, c12: 0, c13: 0, c14: 0, c15: 0, c16: 0, c17: 0, c18: 0, c19: 0, c20: 0, c21: 0, c22: 0, c23: 0, c24: 0, c25: 0, c26: 0, c27: 0, c28: 0, ytd: 0, q1: 0, q2: 0, q3: 0, q4: 0, q5: 0, qtd: 0, currentQuarter: 0, currentVSPCPercent: 0, currentVSPYPercent: 0 }, priorYear: { c1: 0, c2: 0, c3: 0, c4: 0, c5: 0, c6: 0, c7: 0, c8: 0, c9: 0, c10: 0, c11: 0, c12: 0, c13: 0, c14: 0, c15: 0, c16: 0, c17: 0, c18: 0, c19: 0, c20: 0, c21: 0, c22: 0, c23: 0, c24: 0, c25: 0, c26: 0, c27: 0, c28: 0, ytd: 0, q1: 0, q2: 0, q3: 0, q4: 0, q5: 0, qtd: 0, currentQuarter: 0, currentVSPCPercent: 0, currentVSPYPercent: 0 }, percentVsPriorYear: { c1: 0, c2: 0, c3: 0, c4: 0, c5: 0, c6: 0, c7: 0, c8: 0, c9: 0, c10: 0, c11: 0, c12: 0, c13: 0, c14: 0, c15: 0, c16: 0, c17: 0, c18: 0, c19: 0, c20: 0, c21: 0, c22: 0, c23: 0, c24: 0, c25: 0, c26: 0, c27: 0, c28: 0, ytd: 0, q1: 0, q2: 0, q3: 0, q4: 0, q5: 0, qtd: 0, currentQuarter: 0, currentVSPCPercent: 0, currentVSPYPercent: 0 } }, activity: { currentYear: { c1: 0, c2: 0, c3: 0, c4: 0, c5: 0, c6: 0, c7: 0, c8: 0, c9: 0, c10: 0, c11: 0, c12: 0, c13: 0, c14: 0, c15: 0, c16: 0, c17: 0, c18: 0, c19: 0, c20: 0, c21: 0, c22: 0, c23: 0, c24: 0, c25: 0, c26: 0, c27: 0, c28: 0, ytd: 0, q1: 0, q2: 0, q3: 0, q4: 0, q5: 0, qtd: 0, currentQuarter: 0, currentVSPCPercent: 0, currentVSPYPercent: 0 }, priorYear: { c1: 0, c2: 0, c3: 0, c4: 0, c5: 0, c6: 0, c7: 0, c8: 0, c9: 0, c10: 0, c11: 0, c12: 0, c13: 0, c14: 0, c15: 0, c16: 0, c17: 0, c18: 0, c19: 0, c20: 0, c21: 0, c22: 0, c23: 0, c24: 0, c25: 0, c26: 0, c27: 0, c28: 0, ytd: 0, q1: 0, q2: 0, q3: 0, q4: 0, q5: 0, qtd: 0, currentQuarter: 0, currentVSPCPercent: 0, currentVSPYPercent: 0 }, percentVsPriorYear: { c1: 0, c2: 0, c3: 0, c4: 0, c5: 0, c6: 0, c7: 0, c8: 0, c9: 0, c10: 0, c11: 0, c12: 0, c13: 0, c14: 0, c15: 0, c16: 0, c17: 0, c18: 0, c19: 0, c20: 0, c21: 0, c22: 0, c23: 0, c24: 0, c25: 0, c26: 0, c27: 0, c28: 0, ytd: 0, q1: 0, q2: 0, q3: 0, q4: 0, q5: 0, qtd: 0, currentQuarter: 0, currentVSPCPercent: 0, currentVSPYPercent: 0 } }, aosAwardSales: { currentYear: { c1: 0, c2: 0, c3: 0, c4: 0, c5: 0, c6: 0, c7: 0, c8: 0, c9: 0, c10: 0, c11: 0, c12: 0, c13: 0, c14: 0, c15: 0, c16: 0, c17: 0, c18: 0, c19: 0, c20: 0, c21: 0, c22: 0, c23: 0, c24: 0, c25: 0, c26: 0, c27: 0, c28: 0, ytd: 0, q1: 0, q2: 0, q3: 0, q4: 0, q5: 0, qtd: 0, currentQuarter: 0, currentVSPCPercent: 0, currentVSPYPercent: 0 }, priorYear: { c1: 0, c2: 0, c3: 0, c4: 0, c5: 0, c6: 0, c7: 0, c8: 0, c9: 0, c10: 0, c11: 0, c12: 0, c13: 0, c14: 0, c15: 0, c16: 0, c17: 0, c18: 0, c19: 0, c20: 0, c21: 0, c22: 0, c23: 0, c24: 0, c25: 0, c26: 0, c27: 0, c28: 0, ytd: 0, q1: 0, q2: 0, q3: 0, q4: 0, q5: 0, qtd: 0, currentQuarter: 0, currentVSPCPercent: 0, currentVSPYPercent: 0 }, percentVsPriorYear: { c1: 0, c2: 0, c3: 0, c4: 0, c5: 0, c6: 0, c7: 0, c8: 0, c9: 0, c10: 0, c11: 0, c12: 0, c13: 0, c14: 0, c15: 0, c16: 0, c17: 0, c18: 0, c19: 0, c20: 0, c21: 0, c22: 0, c23: 0, c24: 0, c25: 0, c26: 0, c27: 0, c28: 0, ytd: 0, q1: 0, q2: 0, q3: 0, q4: 0, q5: 0, qtd: 0, currentQuarter: 0, currentVSPCPercent: 0, currentVSPYPercent: 0 } }, repCount: { currentYear: { c1: 0, c2: 0, c3: 0, c4: 0, c5: 0, c6: 0, c7: 0, c8: 0, c9: 0, c10: 0, c11: 0, c12: 0, c13: 0, c14: 0, c15: 0, c16: 0, c17: 0, c18: 0, c19: 0, c20: 0, c21: 0, c22: 0, c23: 0, c24: 0, c25: 0, c26: 0, c27: 0, c28: 0, ytd: 0, q1: 0, q2: 0, q3: 0, q4: 0, q5: 0, qtd: 0, currentQuarter: 0, currentVSPCPercent: 0, currentVSPYPercent: 0 }, priorYear: { c1: 0, c2: 0, c3: 0, c4: 0, c5: 0, c6: 0, c7: 0, c8: 0, c9: 0, c10: 0, c11: 0, c12: 0, c13: 0, c14: 0, c15: 0, c16: 0, c17: 0, c18: 0, c19: 0, c20: 0, c21: 0, c22: 0, c23: 0, c24: 0, c25: 0, c26: 0, c27: 0, c28: 0, ytd: 0, q1: 0, q2: 0, q3: 0, q4: 0, q5: 0, qtd: 0, currentQuarter: 0, currentVSPCPercent: 0, currentVSPYPercent: 0 }, percentVsPriorYear: { c1: 0, c2: 0, c3: 0, c4: 0, c5: 0, c6: 0, c7: 0, c8: 0, c9: 0, c10: 0, c11: 0, c12: 0, c13: 0, c14: 0, c15: 0, c16: 0, c17: 0, c18: 0, c19: 0, c20: 0, c21: 0, c22: 0, c23: 0, c24: 0, c25: 0, c26: 0, c27: 0, c28: 0, ytd: 0, q1: 0, q2: 0, q3: 0, q4: 0, q5: 0, qtd: 0, currentQuarter: 0, currentVSPCPercent: 0, currentVSPYPercent: 0 } }, aosNetSales: { currentYear: { c1: 0, c2: 0, c3: 0, c4: 0, c5: 0, c6: 0, c7: 0, c8: 0, c9: 0, c10: 0, c11: 0, c12: 0, c13: 0, c14: 0, c15: 0, c16: 0, c17: 0, c18: 0, c19: 0, c20: 0, c21: 0, c22: 0, c23: 0, c24: 0, c25: 0, c26: 0, c27: 0, c28: 0, ytd: 0, q1: 0, q2: 0, q3: 0, q4: 0, q5: 0, qtd: 0, currentQuarter: 0, currentVSPCPercent: 0, currentVSPYPercent: 0 }, priorYear: { c1: 0, c2: 0, c3: 0, c4: 0, c5: 0, c6: 0, c7: 0, c8: 0, c9: 0, c10: 0, c11: 0, c12: 0, c13: 0, c14: 0, c15: 0, c16: 0, c17: 0, c18: 0, c19: 0, c20: 0, c21: 0, c22: 0, c23: 0, c24: 0, c25: 0, c26: 0, c27: 0, c28: 0, ytd: 0, q1: 0, q2: 0, q3: 0, q4: 0, q5: 0, qtd: 0, currentQuarter: 0, currentVSPCPercent: 0, currentVSPYPercent: 0 }, percentVsPriorYear: { c1: 0, c2: 0, c3: 0, c4: 0, c5: 0, c6: 0, c7: 0, c8: 0, c9: 0, c10: 0, c11: 0, c12: 0, c13: 0, c14: 0, c15: 0, c16: 0, c17: 0, c18: 0, c19: 0, c20: 0, c21: 0, c22: 0, c23: 0, c24: 0, c25: 0, c26: 0, c27: 0, c28: 0, ytd: 0, q1: 0, q2: 0, q3: 0, q4: 0, q5: 0, qtd: 0, currentQuarter: 0, currentVSPCPercent: 0, currentVSPYPercent: 0 } } }, responseStatus: { errorCode: String, message: String, stackTrace: String, errors: [ { errorCode: String, fieldName: String, message: String, meta: { String: String } } ], meta: { String: String } } }