/* Options: Date: 2026-03-31 18:49:45 Version: 8.80 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://test-dogw.klokgroep.nl/api //Package: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: GenerateDocumentBatch.* //ExcludeTypes: //InitializeCollections: False //TreatTypesAsStrings: //DefaultImports: java.math.*,java.util.*,java.io.InputStream,net.servicestack.client.* */ import java.math.* import java.util.* import java.io.InputStream import net.servicestack.client.* /** * Queue multiple (corporate identity) document(s) to generate later via the DigiOffice background agent. */ @Api(Description="Queue multiple (corporate identity) document(s) to generate later via the DigiOffice background agent.") open class GenerateDocumentBatch : IReturn, IGenerateDocumentBatch { /** * Owner of the badge (DigiOffice user) */ @ApiMember(Description="Owner of the badge (DigiOffice user)") override var User:UserReference? = null /** * Description of the badge */ @ApiMember(Description="Description of the badge", IsRequired=true) override var Description:String? = null /** * Corporate identity document(s) to be generate */ @ApiMember(AllowMultiple=true, Description="Corporate identity document(s) to be generate", IsRequired=true) override var Documents:ArrayList = ArrayList() /** * Generated document is not registered in DigiOffice DMS. */ @ApiMember(Description="Generated document is not registered in DigiOffice DMS.") override var DontRegister:Boolean? = null /** * Send the generated e-mail via the e-mail queue. */ @ApiMember(Description="Send the generated e-mail via the e-mail queue.") override var SendMail:Boolean? = null companion object { private val responseType = GenerateDocumentBatchResponse::class.java } override fun getResponseType(): Any? = GenerateDocumentBatch.responseType } open class GenerateDocumentBatchResponse : IGenerateDocumentBatchResponse { /** * ID of the batch */ @ApiMember(Description="ID of the batch", IsRequired=true) override var BatchID:UUID? = null /** * Document processed count */ @ApiMember(Description="Document processed count", IsRequired=true) override var Processed:Int? = null /** * Track and Trace url */ @ApiMember(Description="Track and Trace url", IsRequired=true) override var TrackAndTraceUrl:String? = null } open class UserReference : IEntityReference { open var ID:Int? = null open var LoginName:String? = null open var UserPrincipalName:String? = null open var FullName:String? = null open var EmailAddress:String? = null override var GlobalID:UUID? = null } open class BatchDocument : IDocument { /** * ConfigurationSource: DocumentgeneratorDocument of RegistratieProfiel. */ @ApiMember(Description="ConfigurationSource: DocumentgeneratorDocument of RegistratieProfiel.", IsRequired=true) override var ConfigurationSource:ConfigurationSource? = null /** * Set references to bind with Registration profile */ @ApiMember(Description="Set references to bind with Registration profile", IsRequired=true) override var RegistrationMetaData:RegistrationMetaData? = null /** * Entity instance used as data source parent, if not exists default is Document registration instance. */ @ApiMember(Description="Entity instance used as data source parent, if not exists default is Document registration instance.") override var DataSourceEntity:CommonEntityBaseReference? = null /** * Hier kan de (dynamische) data voor het document geplaatst worden, de data kan middels tekstblokken en placeholders worden geplaatst.Het formaat binnen CustomData staat vrij maar vereist een 'root' element. */ @ApiMember(Description="Hier kan de (dynamische) data voor het document geplaatst worden, de data kan middels tekstblokken en placeholders worden geplaatst.Het formaat binnen CustomData staat vrij maar vereist een 'root' element.") override var CustomData:String? = null /** * Insert a watermark into the document. */ @ApiMember(Description="Insert a watermark into the document.") override var Watermark:Watermark? = null /** * Type van het gegenereerde document, bijvoorbeeld: Doc, Docx, Pdf. */ @ApiMember(Description="Type van het gegenereerde document, bijvoorbeeld: Doc, Docx, Pdf.") override var OutputType:String? = null } interface IGenerateDocumentBatch { var User:UserReference? var Description:String? var Documents:ArrayList? var DontRegister:Boolean? var SendMail:Boolean? } open class ConfigurationSource { /** * Document genereren op basis van een DocGenDocument. */ open var DocumentgeneratorDocument:DocumentgeneratorDocumentReference? = null /** * Document genereren op basis van een RegistratieProfiel. */ open var RegistrationProfile:RegistrationProfileReference? = null /** * Use existing document registration. */ open var RegisteredDocument:DocumentReference? = null /** * Use documentInfo. */ open var UnRegisteredDocument:DocumentInfo? = null /** * Use draft document registration. */ open var DraftDocumentRegistration:MessageQueueReference? = null open var DocumentgeneratorType:Class? = null /** * DocumentgeneratorType voor bijvoorbeeld Word of Email. */ open var DocumentgeneratorTypeName:String? = null open var TemplateExtension:String? = null open var OutputExtension:String? = null } open class RegistrationMetaData { /** * Hoe moet het versiebeheer worden toegepast? */ @ApiMember(Description="Hoe moet het versiebeheer worden toegepast?") open var Versioning:VersioningType? = null /** * Previous document will be used for registration of a new version. */ @ApiMember(Description="Previous document will be used for registration of a new version.") open var PreviousDocument:DocumentReference? = null /** * Company */ @ApiMember(Description="Company") open var Company:CompanyReference? = null /** * Relation */ @ApiMember(Description="Relation") open var Relation:RelationReference? = null /** * Person */ @ApiMember(Description="Person") open var Person:PersonReference? = null /** * Project */ @ApiMember(Description="Project") open var Project:ProjectReference? = null /** * Sub projects */ @ApiMember(AllowMultiple=true, Description="Sub projects") open var SubProjects:ArrayList? = null /** * Signers */ @ApiMember(AllowMultiple=true, Description="Signers") open var Signers:ArrayList? = null /** * Bevat velden die gebruikt worden als additionele metadata voor het document, naast de vaste koppelingen zoals gebruiker, project en relatie. */ @ApiMember(AllowMultiple=true, Description="Bevat velden die gebruikt worden als additionele metadata voor het document, naast de vaste koppelingen zoals gebruiker, project en relatie.") open var Fields:ArrayList? = null /** * Attachments die aan de documentregistratie gekoppeld moet worden. */ @ApiMember(AllowMultiple=true, Description="Attachments die aan de documentregistratie gekoppeld moet worden.") open var Attachments:ArrayList? = null } open class CommonEntityBaseReference : IEntityReference { open var ID:String? = null open var ExternalID:String? = null override var GlobalID:UUID? = null } open class Watermark { open var Text:String? = null open var FontFamilyName:String? = null open var Direction:Direction? = null open var StrokeColorText:String? = null open var StrokeColor:Color? = null open var FillColorText:String? = null open var FillColor:Color? = null } interface IDocument { var ConfigurationSource:ConfigurationSource? var DataSourceEntity:CommonEntityBaseReference? var RegistrationMetaData:RegistrationMetaData? var CustomData:String? var Watermark:Watermark? var OutputType:String? } enum class DocInfoSilentMode { Off, AllowUserInteraction, DoNotAllowUserInteraction, } interface IGenerateDocumentBatchResponse { var BatchID:UUID? var Processed:Int? var TrackAndTraceUrl:String? } interface IEntityReference { var GlobalID:UUID? } open class DocumentgeneratorDocumentReference : IEntityReference { open var ID:UUID? = null open var Name:String? = null override var GlobalID:UUID? = null } open class RegistrationProfileReference : IEntityReference { open var ID:UUID? = null override var GlobalID:UUID? = null } open class DocumentReference : IEntityReference { open var ID:UUID? = null open var Code:String? = null open var VersionCode:String? = null open var RootDocID:UUID? = null open var InternalInvoiceCode:String? = null open var CompanyNumber:Int? = null open var DocumentTypeID:String? = null open var InvoiceType:Int? = null open var RegProfCatID:Int? = null override var GlobalID:UUID? = null open var ExternalID:String? = null open var ExternNr:String? = null open var ExternVersieNr:String? = null open var InternNummer:String? = null } open class DocumentInfo { open var Action:DocInfoAction? = null open var Mode:DocInfoMode? = null open var Version:String? = null open var SilentMode:DocInfoSilentMode? = null } open class MessageQueueReference : IEntityReference { open var ID:Int? = null override var GlobalID:UUID? = null } enum class VersioningType { New, Change, Primary, Secondary, } open class CompanyReference : IEntityReference { open var ID:Int? = null open var Number:Int? = null override var GlobalID:UUID? = null open var ExternalID:String? = null } open class RelationReference : IEntityReference { open var ID:Int? = null open var CreditorNumber:Int? = null open var DebtorNumber:Int? = null open var GlobalLocationNumber:String? = null override var GlobalID:UUID? = null open var ExternalID:String? = null } open class PersonReference : IEntityReference { open var ID:Int? = null open var Number:Int? = null override var GlobalID:UUID? = null open var ExternalID:String? = null } open class ProjectReference : IEntityReference { open var ID:Int? = null open var Code:String? = null open var TypeExternalID:String? = null open var CompanyNumber:Int? = null override var GlobalID:UUID? = null open var ExternalID:String? = null } open class SubProject { open var Project:ProjectReference? = null } open class Signer { open var MainSignerPostFix:String? = null open var User:UserReference? = null open var Person:PersonReference? = null open var Relation:RelationReference? = null open var ContactPerson:ContactPersonReference? = null open var RegisteredDocument:DocumentReference? = null open var Type:SignerType? = null open var ClosingSentence:String? = null open var Name:String? = null open var Subsidiary:String? = null open var Function:String? = null open var Department:String? = null open var PhoneNumber:String? = null open var FaxNumber:String? = null open var MobileNumber:String? = null open var Email:String? = null open var CustomText:String? = null open var Signature:ArrayList? = null open var Initials:ArrayList? = null open var SignatureVisible:Boolean? = null open var InitialsVisible:Boolean? = null open var Visible:Boolean? = null } open class Field { open var Name:String? = null open var OldValue:String? = null open var Value:String? = null open var Title:String? = null } open class Attachment { open var Name:String? = null open var AttachmentData:AttachmentData? = null } enum class Direction(val value:Int) { Left2Right(0), UpLeft2DownRight(45), Up2Down(90), UpRight2DownLeft(135), Right2Left(180), DownRight2UpLeft(225), Down2Up(270), DownLeft2UpRight(315), } enum class DocInfoAction { Create, Register, } enum class DocInfoMode { New, Change, NewVersionPrimary, NewVersionSecondary, NewFromExistingDocument, } open class ContactPersonReference : IEntityReference { open var ID:Int? = null override var GlobalID:UUID? = null open var ExternalID:String? = null open var RelationID:Int? = null open var PersonID:Int? = null } enum class SignerType { MainSigner, AdditionalSigner, ConfirmationDeclarant, AdditionalConfirmationDeclarant, } open class AttachmentData { open var ContentType:String? = null /** * Data base64-encoded zonder padding. */ open var Data:String? = null }