/* Options: Date: 2024-10-18 04:26:07 Version: 6.40 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://digiofficeapigateway.deltares.nl/api //Package: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: GenerateDocumentBatch.* //ExcludeTypes: //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: java.math.*,java.util.*,net.servicestack.client.* */ import java.math.* import java.util.* 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)") var User:UserReference? = null /** * Description of the badge */ @ApiMember(Description="Description of the badge", IsRequired=true) var Description:String? = null /** * Corporate identity document(s) to be generate */ @ApiMember(AllowMultiple=true, Description="Corporate identity document(s) to be generate", IsRequired=true) var Documents:ArrayList = ArrayList() /** * Generated document is not registered in DigiOffice DMS. */ @ApiMember(Description="Generated document is not registered in DigiOffice DMS.") 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.") 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) var BatchID:UUID? = null /** * Document processed count */ @ApiMember(Description="Document processed count", IsRequired=true) var Processed:Int? = null /** * Track and Trace url */ @ApiMember(Description="Track and Trace url", IsRequired=true) var TrackAndTraceUrl:String? = null } open class UserReference : IEntityReference { var ID:Int? = null var LoginName:String? = null var UserPrincipalName:String? = null var FullName:String? = null var EmailAddress:String? = null var GlobalID:UUID? = null } open class BatchDocument : IDocument { /** * ConfigurationSource: DocumentgeneratorDocument of RegistratieProfiel. */ @ApiMember(Description="ConfigurationSource: DocumentgeneratorDocument of RegistratieProfiel.", IsRequired=true) var ConfigurationSource:ConfigurationSource? = null /** * Set references to bind with Registration profile */ @ApiMember(Description="Set references to bind with Registration profile", IsRequired=true) 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.") 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.") var CustomData:String? = null /** * Insert a watermark into the document. */ @ApiMember(Description="Insert a watermark into the document.") var Watermark:Watermark? = null /** * Type van het gegenereerde document, bijvoorbeeld: Doc, Docx, Pdf. */ @ApiMember(Description="Type van het gegenereerde document, bijvoorbeeld: Doc, Docx, Pdf.") var OutputType:String? = null } open 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. */ var DocumentgeneratorDocument:DocumentgeneratorDocumentReference? = null /** * Document genereren op basis van een RegistratieProfiel. */ var RegistrationProfile:RegistrationProfileReference? = null /** * Use existing document registration. */ var RegisteredDocument:DocumentReference? = null /** * Use draft document registration. */ var DraftDocumentRegistration:MessageQueueReference? = null var DocumentgeneratorType:Class? = null /** * DocumentgeneratorType voor bijvoorbeeld Word of Email. */ var DocumentgeneratorTypeName:String? = null var TemplateExtension:String? = null var OutputExtension:String? = null } open class RegistrationMetaData { /** * Hoe moet het versiebeheer worden toegepast? */ @ApiMember(Description="Hoe moet het versiebeheer worden toegepast?") 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.") var PreviousDocument:DocumentReference? = null /** * Company */ @ApiMember(Description="Company") var Company:CompanyReference? = null /** * Relation */ @ApiMember(Description="Relation") var Relation:RelationReference? = null /** * Person */ @ApiMember(Description="Person") var Person:PersonReference? = null /** * Project */ @ApiMember(Description="Project") var Project:ProjectReference? = null /** * Sub projects */ @ApiMember(AllowMultiple=true, Description="Sub projects") var SubProjects:ArrayList = ArrayList() /** * Signers */ @ApiMember(AllowMultiple=true, Description="Signers") var Signers:ArrayList = ArrayList() /** * 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.") var Fields:ArrayList = ArrayList() /** * Attachments die aan de documentregistratie gekoppeld moet worden. */ @ApiMember(AllowMultiple=true, Description="Attachments die aan de documentregistratie gekoppeld moet worden.") var Attachments:ArrayList = ArrayList() } open class CommonEntityBaseReference : IEntityReference { var ID:String? = null var ExternalID:String? = null var GlobalID:UUID? = null } open class Watermark { var Text:String? = null var FontFamilyText:String? = null var FontFamily:FontFamily? = null var Direction:Direction? = null var StrokeColorText:String? = null var StrokeColor:Color? = null var FillColorText:String? = null var FillColor:Color? = null } open interface IDocument { var ConfigurationSource:ConfigurationSource? var DataSourceEntity:CommonEntityBaseReference? var RegistrationMetaData:RegistrationMetaData? var CustomData:String? var Watermark:Watermark? var OutputType:String? } open interface IGenerateDocumentBatchResponse { var BatchID:UUID? var Processed:Int? var TrackAndTraceUrl:String? } open interface IEntityReference { var GlobalID:UUID? } open class DocumentgeneratorDocumentReference : IEntityReference { var ID:UUID? = null var Name:String? = null var GlobalID:UUID? = null } open class RegistrationProfileReference : IEntityReference { var ID:UUID? = null var GlobalID:UUID? = null } open class DocumentReference : IEntityReference { var ID:UUID? = null var Code:String? = null var VersionCode:String? = null var RootDocID:UUID? = null var InternalInvoiceCode:String? = null var CompanyNumber:Int? = null var DocumentTypeID:String? = null var InvoiceType:Int? = null var RegProfCatID:Int? = null var GlobalID:UUID? = null var ExternalID:String? = null var ExternNr:String? = null var InternNummer:String? = null } open class MessageQueueReference : IEntityReference { var ID:Int? = null var GlobalID:UUID? = null } enum class VersioningType { New, Change, Primary, Secondary, } open class CompanyReference : IEntityReference { var ID:Int? = null var Number:Int? = null var GlobalID:UUID? = null var ExternalID:String? = null } open class RelationReference : IEntityReference { var ID:Int? = null var CreditorNumber:Int? = null var DebtorNumber:Int? = null var GlobalLocationNumber:String? = null var GlobalID:UUID? = null var ExternalID:String? = null } open class PersonReference : IEntityReference { var ID:Int? = null var Number:Int? = null var GlobalID:UUID? = null var ExternalID:String? = null } open class ProjectReference : IEntityReference { var ID:Int? = null var Code:String? = null var TypeExternalID:String? = null var CompanyNumber:Int? = null var GlobalID:UUID? = null var ExternalID:String? = null } open class SubProject { var Project:ProjectReference? = null } open class Signer { var User:UserReference? = null var Person:PersonReference? = null var Relation:RelationReference? = null var ContactPerson:ContactPersonReference? = null var RegisteredDocument:DocumentReference? = null var Type:SignerType? = null var ClosingSentence:String? = null var Name:String? = null var Subsidiary:String? = null var Function:String? = null var Department:String? = null var PhoneNumber:String? = null var FaxNumber:String? = null var MobileNumber:String? = null var Email:String? = null var CustomText:String? = null var Signature:ArrayList = ArrayList() var SignatureVisible:Boolean? = null var Visible:Boolean? = null } open class Field { var Name:String? = null var OldValue:String? = null var Value:String? = null var Title:String? = null } open class Attachment { var Name:String? = null 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), } open class ContactPersonReference : IEntityReference { var ID:Int? = null var GlobalID:UUID? = null var ExternalID:String? = null var RelationID:Int? = null var PersonID:Int? = null } enum class SignerType { MainSigner, AdditionalSigner, ConfirmationDeclarant, AdditionalConfirmationDeclarant, } open class AttachmentData { var ContentType:String? = null /** * Data base64-encoded zonder padding. */ var Data:String? = null }