/* Options: Date: 2024-12-22 21:26:23 Version: 8.51 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://blazor-gallery.servicestack.net //GlobalNamespace: //MakePropertiesOptional: False //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: QueryBookings.* //ExcludeTypes: //DefaultImports: */ export interface IReturn { createResponse(): T; } // @DataContract export class QueryBase { // @DataMember(Order=1) public skip?: number; // @DataMember(Order=2) public take?: number; // @DataMember(Order=3) public orderBy: string; // @DataMember(Order=4) public orderByDesc: string; // @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); } } // @DataContract export class AuditBase { // @DataMember(Order=1) public createdDate: string; // @DataMember(Order=2) // @Required() public createdBy: string; // @DataMember(Order=3) public modifiedDate: string; // @DataMember(Order=4) // @Required() public modifiedBy: string; // @DataMember(Order=5) public deletedDate?: string; // @DataMember(Order=6) public deletedBy: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export enum RoomType { Single = 'Single', Double = 'Double', Queen = 'Queen', Twin = 'Twin', Suite = 'Suite', } /** @description Discount Coupons */ export class Coupon { public id: string; public description: string; public discount: number; public expiryDate: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } /** @description Booking Details */ export class Booking extends AuditBase { public id: number; public name: string; public roomType: RoomType; public roomNumber: number; public bookingStartDate: string; public bookingEndDate?: string; public cost: number; // @References("typeof(MyApp.ServiceModel.Coupon)") public couponId?: string; public discount: Coupon; public notes?: string; public cancelled?: boolean; public constructor(init?: Partial) { super(init); (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: Booking[]; // @DataMember(Order=4) public meta: { [index:string]: string; }; // @DataMember(Order=5) public responseStatus: ResponseStatus; public constructor(init?: Partial>) { (Object as any).assign(this, init); } } /** @description Find Bookings */ // @Route("/bookings", "GET") // @Route("/bookings/{Id}", "GET") export class QueryBookings extends QueryDb implements IReturn> { public id?: number; public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); } public getTypeName() { return 'QueryBookings'; } public getMethod() { return 'GET'; } public createResponse() { return new QueryResponse(); } }