/* Options: Date: 2025-11-04 02:34:13 Version: 8.80 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: PaymentLogQuery.* //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 Currency extends BaseModel { // @Required() public Name: string; // @Required() public CurrencySign: string; // @Required() public Active: boolean; public ModifiedDate?: string; // @Required() public Id: string; public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); } } export class PaymentLog extends BaseModel { // @References("typeof(BokaMera.API.ServiceModel.Db.Currency)") public CurrencyId: string; public CurrencyInfo: Currency; // @Required() public CompanyId: string; public Id: number; // @Required() public InternalReferenceId: string; // @Required() public ArticleTypeId: number; public PaymentReferenceId: string; public PaymentProviderId?: number; public OrderItemReferenceId: string; public Amount?: number; public VAT?: number; public AmountCredited?: number; public Comments: string; // @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 ArticleType extends BaseModel { public ArticleTypeId: number; // @Required() public ArticleTypeName: string; public ArticleTypeDescription: string; public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); } } export class CurrencyInfoResponse { /** @description The currency id */ // @ApiMember(Description="The currency id") public Id: string; /** @description The currency id */ // @ApiMember(Description="The currency id") public Name: string; /** @description The currency id */ // @ApiMember(Description="The currency id") public CurrencySign: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class PaymentLogQueryResponse { /** @description The payment log id */ // @ApiMember(Description="The payment log id") public Id: number; /** @description The internal reference id, could be reference to a booking, rebate code, gift card etc. */ // @ApiMember(Description="The internal reference id, could be reference to a booking, rebate code, gift card etc.") public InternalReference: number; /** @description The payment reference id */ // @ApiMember(Description="The payment reference id") public PaymentReferenceId: string; /** @description The payment order item reference id */ // @ApiMember(Description="The payment order item reference id") public OrderItemReferenceId: string; /** @description The payment reference id */ // @ApiMember(Description="The payment reference id") public PaymentProviderId?: number; /** @description The payment amount */ // @ApiMember(Description="The payment amount") public Amount: number; /** @description The article type */ // @ApiMember(Description="The article type") public ArticleType: ArticleType; /** @description The payment VAT in percent */ // @ApiMember(Description="The payment VAT in percent") public VAT: number; /** @description The payment amount that is credited */ // @ApiMember(Description="The payment amount that is credited") public AmountCredited: number; /** @description The payment currency id */ // @ApiMember(Description="The payment currency id") public CurrencyId: string; /** @description The payment currency info */ // @ApiMember(Description="The payment currency info") public CurrencyInfo: CurrencyInfoResponse; /** @description Comments that could be added to the event log item */ // @ApiMember(Description="Comments that could be added to the event log item") public Comments: string; /** @description The date when the payment items was created */ // @ApiMember(Description="The date when the payment items was created") public Created: string; /** @description The date when the payment items were updated. */ // @ApiMember(Description="The date when the payment items were updated.") public Updated: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } // @DataContract export class ResponseError { // @DataMember(Order=1) public ErrorCode: string; // @DataMember(Order=2) public FieldName: string; // @DataMember(Order=3) public Message: string; // @DataMember(Order=4) public Meta: { [index:string]: string; }; public constructor(init?: Partial) { (Object as any).assign(this, init); } } // @DataContract export class ResponseStatus { // @DataMember(Order=1) public ErrorCode: string; // @DataMember(Order=2) public Message: string; // @DataMember(Order=3) public StackTrace: string; // @DataMember(Order=4) public Errors: ResponseError[]; // @DataMember(Order=5) public Meta: { [index:string]: 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: T[]; // @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("/articles/payments", "GET") // @ValidateRequest(Validator="IsAuthenticated") export class PaymentLogQuery extends QueryDb implements IReturn>, ICompany { /** @description The company id, if empty will use the company id for the user you are logged in with. */ // @ApiMember(Description="The company id, if empty will use the company id for the user you are logged in with.") public CompanyId?: string; /** @description Start of interval to query for payments when they where created. UTC+0 and parameter as defined by date-time - RFC3339 */ // @ApiMember(DataType="dateTime", Description="Start of interval to query for payments 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 payments when they where created. UTC+0 and parameter as defined by date-time - RFC3339 */ // @ApiMember(DataType="dateTime", Description="End of interval to query for payments when they where created. UTC+0 and parameter as defined by date-time - RFC3339", ParameterType="query") public CreatedTo?: string; /** @description Article type (Could be Service, rebate code types, etc.. */ // @ApiMember(Description="Article type (Could be Service, rebate code types, etc..", IsRequired=true) public ArticleTypeId: number; /** @description */ // @ApiMember(Description="") public IncludeArticleType: boolean; public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); } public getTypeName() { return 'PaymentLogQuery'; } public getMethod() { return 'GET'; } public createResponse() { return new QueryResponse(); } }