/* Options: Date: 2024-07-03 13:08:21 Version: 8.23 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.bokamera.se //GlobalNamespace: //MakePropertiesOptional: False //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: RatingQuery.* //ExcludeTypes: //DefaultImports: */ export interface IReturn { createResponse(): T; } // @DataContract export class QueryBase { /** @description Skip over a given number of elements in a sequence and then return the remainder. Use this when you need paging.

Example:
?skip=10&orderBy=Id */ // @DataMember(Order=1) public Skip?: number; /** @description Return a given number of elements in a sequence and then skip over the remainder. Use this when you need paging.

Example:
?take=20 */ // @DataMember(Order=2) public Take?: number; /** @description Comma separated list of fields to order by. Prefix the field name with a minus if you wan't to invert the sort for that field.

Example:
?orderBy=Id,-Age,FirstName */ // @DataMember(Order=3) public OrderBy: string; /** @description Comma separated list of fields to order by in descending order. Prefix the field name with a minus if you wan't to invert the sort for that field.

Example:
?orderByDesc=Id,-Age,FirstName */ // @DataMember(Order=4) public OrderByDesc: string; /** @description Include any of the aggregates AVG, COUNT, FIRST, LAST, MAX, MIN, SUM in your result set. The results will be returned in the meta field.

Example:
?include=COUNT(*) as Total

or multiple fields with
?include=Count(*) Total, Min(Age), AVG(Age) AverageAge

or unique with
?include=COUNT(DISTINCT LivingStatus) as UniqueStatus */ // @DataMember(Order=5) public Include: string; // @DataMember(Order=6) public Fields: string; // @DataMember(Order=7) public Meta: { [index: string]: string; }; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class QueryDb extends QueryBase { public constructor(init?: Partial>) { super(init); (Object as any).assign(this, init); } } export interface ICompany { CompanyId?: string; } export class BaseModel { public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class Review extends BaseModel { public ReviewId: string; // @Required() public CompanyId: string; // @Required() public Title: string; // @Required() public Description: string; // @Required() public Author: string; // @Required() public Status: number; // @Required() public Created: string; // @Required() public Updated: string; public ModifiedDate?: string; public ReviewAnswer: string; public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); } } export class Rating extends BaseModel { public ReviewId?: string; public Review: Review; // @Required() public CompanyId: string; // @Required() public BookingId: number; // @Required() public RatingScore: number; // @Required() public Status: number; // @Required() public Created: string; // @Required() public Updated: string; public ModifiedDate?: string; public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); } } export class RatingReviewResponse { /** @description The title for the review */ // @ApiMember(Description="The title for the review") public Title: string; /** @description The description for the review */ // @ApiMember(Description="The description for the review") public Description: string; /** @description The rating score */ // @ApiMember(Description="The rating score") public RatingScore: number; /** @description The review author */ // @ApiMember(Description="The review author") public Author: string; /** @description The created date */ // @ApiMember(Description="The created date") public Created: string; /** @description The review answer from the company */ // @ApiMember(Description="The review answer from the company") public ReviewAnswer: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class CompanyRatingResponse { /** @description */ // @ApiMember(Description="") public CompanyId: string; /** @description Id of the booking */ // @ApiMember(Description="Id of the booking") public BookingId: number; /** @description The status of the rating, 1 = Active */ // @ApiMember(Description="The status of the rating, 1 = Active") public Status: number; /** @description The rating score */ // @ApiMember(Description="The rating score") public RatingScore: number; /** @description The review if any exists to the rating */ // @ApiMember(Description="The review if any exists to the rating") public Review: RatingReviewResponse; public CreatedDate: string; public UpdatedDate: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } // @DataContract export class QueryResponse { // @DataMember(Order=1) public Offset: number; // @DataMember(Order=2) public Total: number; // @DataMember(Order=3) public Results: CompanyRatingResponse[]; // @DataMember(Order=4) public Meta: { [index: string]: string; }; // @DataMember(Order=5) public ResponseStatus: ResponseStatus; public constructor(init?: Partial>) { (Object as any).assign(this, init); } } // @Route("/rating/", "GET") // @ApiResponse(Description="You were unauthorized to call this service", StatusCode=401) export class RatingQuery extends QueryDb implements IReturn>, ICompany { /** @description */ // @ApiMember(Description="") public CompanyId?: string; /** @description Id of the booking */ // @DataMember(Name="BookedEventId") // @ApiMember(Description="Id of the booking") public BookedEventId?: number; /** @description If you want to collect only active ratings. Ratings are only active after one has past since creation date. */ // @ApiMember(Description="If you want to collect only active ratings. Ratings are only active after one has past since creation date.") public Active?: boolean; /** @description If you want to include the rating reviews */ // @ApiMember(DataType="boolean", Description="If you want to include the rating reviews", ParameterType="query") public IncludeRatingReviews: boolean; /** @description Start of interval to query for bookings when they where created. UTC+0 and parameter as defined by date-time - RFC3339 */ // @ApiMember(DataType="dateTime", Description="Start of interval to query for bookings when they where created. UTC+0 and parameter as defined by date-time - RFC3339", ParameterType="query") public CreatedFrom?: string; /** @description End of interval to query for bookings when they where created. UTC+0 and parameter as defined by date-time - RFC3339 */ // @ApiMember(DataType="dateTime", Description="End of interval to query for bookings when they where created. UTC+0 and parameter as defined by date-time - RFC3339", ParameterType="query") public CreatedTo?: string; public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); } public getTypeName() { return 'RatingQuery'; } public getMethod() { return 'GET'; } public createResponse() { return new QueryResponse(); } }