{
    "name": "Customer",
    "fields": [
        {
            "fieldName": "reference",
            "fieldType": "Integer",
            "fieldValidateRules": [
                "required",
                "unique",
                "min",
                "max"
            ],
            "fieldValidateRulesMin": 10000,
            "fieldValidateRulesMax": 99999
        },
        {
            "fieldName": "prefix",
            "fieldType": "String",
            "fieldValidateRules": [
                "required",
                "maxlength",
                "unique",
                "pattern"
            ],
            "fieldValidateRulesMaxlength": 3,
            "fieldValidateRulesPattern": "[a-z][a-z0-9]+"
        },
        {
            "fieldName": "name",
            "fieldType": "String",
            "fieldValidateRules": [
                "required",
                "maxlength"
            ],
            "fieldValidateRulesMaxlength": 80
        },
        {
            "fieldName": "kind",
            "fieldType": "CustomerKind",
            "fieldValues": "NATURAL,LEGAL",
            "fieldValidateRules": [
                "required"
            ]
        },
        {
            "fieldName": "birthDate",
            "fieldType": "LocalDate"
        },
        {
            "fieldName": "birthPlace",
            "fieldType": "String",
            "fieldValidateRules": [
                "maxlength"
            ],
            "fieldValidateRulesMaxlength": 80
        },
        {
            "fieldName": "registrationCourt",
            "fieldType": "String",
            "fieldValidateRules": [
                "maxlength"
            ],
            "fieldValidateRulesMaxlength": 80
        },
        {
            "fieldName": "registrationNumber",
            "fieldType": "String",
            "fieldValidateRules": [
                "maxlength"
            ],
            "fieldValidateRulesMaxlength": 80
        },
        {
            "fieldName": "vatRegion",
            "fieldType": "VatRegion",
            "fieldValues": "DOMESTIC,EU,OTHER",
            "fieldValidateRules": [
                "required"
            ]
        },
        {
            "fieldName": "vatNumber",
            "fieldType": "String",
            "fieldValidateRules": [
                "maxlength"
            ],
            "fieldValidateRulesMaxlength": 40
        },
        {
            "fieldName": "contractualSalutation",
            "fieldType": "String",
            "fieldValidateRules": [
                "maxlength"
            ],
            "fieldValidateRulesMaxlength": 80
        },
        {
            "fieldName": "contractualAddress",
            "fieldType": "String",
            "fieldValidateRules": [
                "required",
                "maxlength"
            ],
            "fieldValidateRulesMaxlength": 400
        },
        {
            "fieldName": "billingSalutation",
            "fieldType": "String",
            "fieldValidateRules": [
                "maxlength"
            ],
            "fieldValidateRulesMaxlength": 80
        },
        {
            "fieldName": "billingAddress",
            "fieldType": "String",
            "fieldValidateRules": [
                "maxlength"
            ],
            "fieldValidateRulesMaxlength": 400
        },
        {
            "fieldName": "remark",
            "fieldType": "String",
            "fieldValidateRules": [
                "maxlength"
            ],
            "fieldValidateRulesMaxlength": 160
        }
    ],
    "relationships": [
        {
            "relationshipType": "one-to-many",
            "otherEntityName": "membership",
            "otherEntityRelationshipName": "customer",
            "relationshipName": "membership"
        },
        {
            "relationshipType": "one-to-many",
            "otherEntityName": "sepaMandate",
            "otherEntityRelationshipName": "customer",
            "relationshipName": "sepamandate"
        }
    ],
    "changelogDate": "20190507105332",
    "entityTableName": "customer",
    "dto": "mapstruct",
    "pagination": "infinite-scroll",
    "service": "serviceClass",
    "jpaMetamodelFiltering": true,
    "fluentMethods": true,
    "clientRootFolder": "",
    "applications": "*"
}