/* Options: Date: 2024-11-29 14:33:25 Version: 8.12 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://taxfiling.staging.pwc.de //GlobalNamespace: //MakePropertiesOptional: False //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: RetrieveAllAccounts.* //ExcludeTypes: //DefaultImports: */ export interface IReturn { createResponse(): T; } export interface IPaginate { skip?: number; take?: number; } /** @description The number of query results to skip. */ // @Api(Description="The number of query results to skip.") export class PaginationBase implements IPaginate { /** @description The number of query results to skip. */ // @ApiMember(Description="The number of query results to skip.") public skip?: number; /** @description The number of query results to include. */ // @ApiMember(Description="The number of query results to include.") public take?: number; public constructor(init?: Partial) { (Object as any).assign(this, init); } } /** @description Specifies a service to retrieve all accounts. */ // @Api(Description="Specifies a service to retrieve all accounts.") export class RetrieveAllAccountsBase extends PaginationBase implements IGet { /** @description Should the related products of the accounts be included in the retrieved results? */ // @ApiMember(Description="Should the related products of the accounts be included in the retrieved results?") public includeProducts?: boolean; /** @description Should the related orders of the accounts be included in the retrieved results? */ // @ApiMember(Description="Should the related orders of the accounts be included in the retrieved results?") public includeOrders?: boolean; /** @description Specifies the number of products to skip per account. Applicable only when 'IncludeProducts' is true. */ // @ApiMember(Description="Specifies the number of products to skip per account. Applicable only when 'IncludeProducts' is true. ") public skipProducts?: number; /** @description Specifies the number of products to include per account. Applicable only when 'IncludeProducts' is true. */ // @ApiMember(Description="Specifies the number of products to include per account. Applicable only when 'IncludeProducts' is true. ") public takeProducts?: number; /** @description Specifies the number of orders to skip per account. Applicable only when 'IncludeOrders' is true. */ // @ApiMember(Description="Specifies the number of orders to skip per account. Applicable only when 'IncludeOrders' is true. ") public skipOrders?: number; /** @description Specifies the number of orders to include per account. Applicable only when 'IncludeOrders' is true. */ // @ApiMember(Description="Specifies the number of orders to include per account. Applicable only when 'IncludeOrders' is true. ") public takeOrders?: number; /** @description The number of query results to skip. */ // @ApiMember(Description="The number of query results to skip.") public skip?: number; /** @description The number of query results to include. */ // @ApiMember(Description="The number of query results to include.") public take?: number; public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); } } /** @description Represents a user account. */ // @Api(Description="Represents a user account.") export class Account implements IHasUserName { /** @description The unique identifier of the user account. */ // @ApiMember(Description="The unique identifier of the user account.", IsRequired=true) public id: number; /** @description The position of this instance in a collection of 'Account' instances */ // @ApiMember(Description="The position of this instance in a collection of 'Account' instances", IsRequired=true) public index: number; /** @description The unique identifier of the customer associated with this account. */ // @ApiMember(Description="The unique identifier of the customer associated with this account.", IsRequired=true) public refId: number; /** @description The string representation of the unique identifier of a reference that associates with this user account. This should have the same value as 'RefId'. */ // @ApiMember(Description="The string representation of the unique identifier of a reference that associates with this user account. This should have the same value as 'RefId'.") public refIdStr?: string; /** @description The unique user name of the user account. */ // @ApiMember(Description="The unique user name of the user account.", IsRequired=true) public userName: string; /** @description The electronic mail address of the user account. */ // @ApiMember(Description="The electronic mail address of the user account.") public email?: string; /** @description The friendly name of the user account. */ // @ApiMember(Description="The friendly name of the user account.") public displayName?: string; /** @description The first name of the owner (natural person) of the user account. */ // @ApiMember(Description="The first name of the owner (natural person) of the user account.") public firstName?: string; /** @description The last name of the owner (natural person) of the user account. */ // @ApiMember(Description="The last name of the owner (natural person) of the user account.") public lastName?: string; /** @description The unique identifier of the customer associated with this account. */ // @ApiMember(Description="The unique identifier of the customer associated with this account.") public fullName?: string; /** @description The gender of the owner (natural person) of the user account. */ // @ApiMember(Description="The gender of the owner (natural person) of the user account.") public gender?: string; /** @description The language of the owner of teh user account. */ // @ApiMember(Description="The language of the owner of teh user account.") public language?: string; /** @description The company, where the user is an employee. */ // @ApiMember(Description="The company, where the user is an employee.") public company?: string; /** @description The profile URL of the user account. */ // @ApiMember(Description="The profile URL of the user account.", IsRequired=true) public profileUrl: string; /** @description The roles assigned to the user account. */ // @ApiMember(Description="The roles assigned to the user account.") public roles: string[]; /** @description The permissions assigned to the user account. */ // @ApiMember(Description="The permissions assigned to the user account.") public permissions: string[]; /** @description The primary e-mail address of the user. */ // @ApiMember(Description="The primary e-mail address of the user.") public primaryEmail?: string; /** @description Random data to enhance the security of the user password. */ // @ApiMember(Description="Random data to enhance the security of the user password.") public salt?: string; /** @description The hash value of the user password that the PBKDF2 algorithm produces. */ // @ApiMember(Description="The hash value of the user password that the PBKDF2 algorithm produces.") public passwordHash?: string; /** @description The hash value of the user password that the DigestHa1 algorithm produces. */ // @ApiMember(Description="The hash value of the user password that the DigestHa1 algorithm produces.") public digestHa1Hash?: string; /** @description The number of times the user account tried to sign in but failed. */ // @ApiMember(Description="The number of times the user account tried to sign in but failed.") public invalidLoginAttempts: number; /** @description The last time the user account attempted a sign in. */ // @ApiMember(Description="The last time the user account attempted a sign in.") public lastLoginAttempt?: string; /** @description The date and time when the user acount was denied access. */ // @ApiMember(Description="The date and time when the user acount was denied access.") public lockedDate?: string; /** @description The date and time when the user account was created. */ // @ApiMember(Description="The date and time when the user account was created.") public createdDate: string; /** @description The date and time when the user account was last modified. */ // @ApiMember(Description="The date and time when the user account was last modified.") public modifiedDate: string; /** @description The telephone number of the owner of the user account. */ // @ApiMember(Description="The telephone number of the owner of the user account.") public phoneNumber?: string; /** @description The birth date of the owner of the user account */ // @ApiMember(Description="The birth date of the owner of the user account") public birthDate?: string; /** @description The string representation of the birth date of the user account. */ // @ApiMember(Description="The string representation of the birth date of the user account.") public birthDateRaw?: string; /** @description The mail address of the user account. */ // @ApiMember(Description="The mail address of the user account.") public address?: string; /** @description Additional information for the specified 'Address' of the user. */ // @ApiMember(Description="Additional information for the specified 'Address' of the user.") public address2?: string; /** @description The city of the owner of the user account. */ // @ApiMember(Description="The city of the owner of the user account.") public city?: string; /** @description The state of the owner of the user account. */ // @ApiMember(Description="The state of the owner of the user account.") public state?: string; /** @description The country of the owner of the user account. It is recommended to use the name of the associated 'Customer'. */ // @ApiMember(Description="The country of the owner of the user account. It is recommended to use the name of the associated 'Customer'.") public country?: string; /** @description The locale of the user account. */ // @ApiMember(Description="The locale of the user account.") public culture?: string; /** @description The mail address of the user account. */ // @ApiMember(Description="The mail address of the user account.") public mailAddress?: string; /** @description The nickname of the user of the user account. */ // @ApiMember(Description="The nickname of the user of the user account.") public nickname?: string; /** @description The postal code of the user account. */ // @ApiMember(Description="The postal code of the user account.") public postalCode?: string; /** @description The time zone of the user of the user account. */ // @ApiMember(Description="The time zone of the user of the user account.") public timeZone?: string; /** @description Additional information to attach to the user account. */ // @ApiMember(Description="Additional information to attach to the user account.") public meta?: { [index: string]: 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); } } /** @description Specifies that a data type should have a 'UserName' property. */ export interface IHasUserName { userName?: string; } /** @description Represents a query response that contains a structured error information and encapsulates user accounts. */ // @Api(Description="Represents a query response that contains a structured error information and encapsulates user accounts.") export class AccountQueryResponse extends QueryResponse { /** @description The dictionary of products associated to found user accounts. */ // @ApiMember(Description="The dictionary of products associated to found user accounts.") public productsMap: { [index: number]: Product[]; }; /** @description The dictionary of orders associated with each found user account. */ // @ApiMember(Description="The dictionary of orders associated with each found user account.") public ordersMap: { [index: number]: Order[]; }; // @DataMember(Order=1) public offset: number; // @DataMember(Order=2) public total: number; // @DataMember(Order=3) public results: Account[]; // @DataMember(Order=4) public meta: { [index: string]: string; }; // @DataMember(Order=5) public responseStatus: ResponseStatus; public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); } } /** @description Represents a service request to retrieve all accounts. */ // @Route("/sync/accounts", "GET") // @Api(Description="Represents a service request to retrieve all accounts.") export class RetrieveAllAccounts extends RetrieveAllAccountsBase implements IReturn { /** @description Should the related products of the accounts be included in the retrieved results? */ // @ApiMember(Description="Should the related products of the accounts be included in the retrieved results?") public includeProducts?: boolean; /** @description Should the related orders of the accounts be included in the retrieved results? */ // @ApiMember(Description="Should the related orders of the accounts be included in the retrieved results?") public includeOrders?: boolean; /** @description Specifies the number of products to skip per account. Applicable only when 'IncludeProducts' is true. */ // @ApiMember(Description="Specifies the number of products to skip per account. Applicable only when 'IncludeProducts' is true. ") public skipProducts?: number; /** @description Specifies the number of products to include per account. Applicable only when 'IncludeProducts' is true. */ // @ApiMember(Description="Specifies the number of products to include per account. Applicable only when 'IncludeProducts' is true. ") public takeProducts?: number; /** @description Specifies the number of orders to skip per account. Applicable only when 'IncludeOrders' is true. */ // @ApiMember(Description="Specifies the number of orders to skip per account. Applicable only when 'IncludeOrders' is true. ") public skipOrders?: number; /** @description Specifies the number of orders to include per account. Applicable only when 'IncludeOrders' is true. */ // @ApiMember(Description="Specifies the number of orders to include per account. Applicable only when 'IncludeOrders' is true. ") public takeOrders?: number; /** @description The number of query results to skip. */ // @ApiMember(Description="The number of query results to skip.") public skip?: number; /** @description The number of query results to include. */ // @ApiMember(Description="The number of query results to include.") public take?: number; public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); } public getTypeName() { return 'RetrieveAllAccounts'; } public getMethod() { return 'GET'; } public createResponse() { return new AccountQueryResponse(); } }