{
    "fields": {
        "name": {
            "type": "varchar",
            "required": true,
            "pattern": "$noBadCharacters"
        },
        "description": {
            "type": "text"
        },
        "createdAt": {
            "type": "datetime",
            "readOnly": true
        },
        "modifiedAt": {
            "type": "datetime",
            "readOnly": true
        },
        "createdBy": {
            "type": "link",
            "readOnly": true,
            "view": "views/fields/user"
        },
        "modifiedBy": {
            "type": "link",
            "readOnly": true,
            "view": "views/fields/user"
        },
        "assignedUser": {
            "type": "link",
            "required": false,
            "view": "views/fields/assigned-user"
        },
        "teams": {
            "type": "linkMultiple",
            "view": "views/fields/teams"
        },
        "status": {
            "type": "enum",
            "required": true,
            "options": [
                "Bestehend",
                "Beendet",
                "Geräumt",
                "Abgewickelt"
            ],
            "style": {
                "Bestehend": null,
                "Beendet": null,
                "Geräumt": null,
                "Abgewickelt": null
            },
            "default": "Bestehend",
            "maxLength": 100,
            "isCustom": true
        },
        "nutzungsart": {
            "type": "enum",
            "required": true,
            "options": [
                "",
                "Wohnraum",
                "Gewerbe",
                "Gemischt"
            ],
            "style": {
                "": null,
                "Wohnraum": null,
                "Gewerbe": null,
                "Gemischt": null
            },
            "maxLength": 100,
            "isCustom": true
        },
        "kndigungsgrundWohnraum": {
            "type": "enum",
            "required": false,
            "options": [
                "Mietrückstand",
                "Eigenbedarf",
                "Fehlverhalten",
                "Verwertung",
                "ZVG Eigenbedarf",
                "573a Abs. 1 (nicht mehr als 2 Whng.)",
                "573a Abs. 2 (Einliegerwohnung)",
                "GewerbeOrdentlich"
            ],
            "style": {
                "Mietrückstand": null,
                "Eigenbedarf": null,
                "Fehlverhalten": null,
                "Verwertung": null,
                "ZVG Eigenbedarf": null,
                "573a Abs. 1 (nicht mehr als 2 Whng.)": null,
                "573a Abs. 2 (Einliegerwohnung)": null,
                "GewerbeOrdentlich": null
            },
            "default": "Mietrückstand",
            "maxLength": 100,
            "isCustom": true
        },
        "auszugsfrist": {
            "notNull": false,
            "type": "date",
            "required": true,
            "default": "javascript: return this.dateTime.getToday();",
            "tooltip": true,
            "isCustom": true
        },
        "besorgnisNichtRechtzeitigerAuszug": {
            "notNull": true,
            "type": "bool",
            "tooltip": true,
            "isCustom": true
        },
        "beendigungsTatbestand": {
            "type": "enum",
            "required": true,
            "options": [
                "Kündigung Vermieter",
                "Kündigung Mieter",
                "Befristung",
                "ZVG Zuschlagsbeschluss"
            ],
            "style": {
                "Kündigung Vermieter": null,
                "Kündigung Mieter": null,
                "Befristung": null,
                "ZVG Zuschlagsbeschluss": null
            },
            "default": "Kündigung Vermieter",
            "maxLength": 100,
            "isCustom": true
        },
        "vertragsdatum": {
            "notNull": false,
            "type": "date",
            "required": true,
            "before": "auszugsfrist",
            "isCustom": true
        }
    },
    "links": {
        "createdBy": {
            "type": "belongsTo",
            "entity": "User"
        },
        "modifiedBy": {
            "type": "belongsTo",
            "entity": "User"
        },
        "assignedUser": {
            "type": "belongsTo",
            "entity": "User"
        },
        "teams": {
            "type": "hasMany",
            "entity": "Team",
            "relationName": "entityTeam",
            "layoutRelationshipsDisabled": true
        },
        "meetings": {
            "type": "hasMany",
            "entity": "Meeting",
            "foreign": "parent"
        },
        "calls": {
            "type": "hasMany",
            "entity": "Call",
            "foreign": "parent"
        },
        "tasks": {
            "type": "hasChildren",
            "entity": "Task",
            "foreign": "parent"
        },
        "emails": {
            "type": "hasChildren",
            "entity": "Email",
            "foreign": "parent",
            "layoutRelationshipsDisabled": true
        },
        "vmhRumungsklages": {
            "type": "hasMany",
            "relationName": "cVmhRumungsklageVmhMietverhltnis",
            "foreign": "vmhMietverhltnises",
            "entity": "CVmhRumungsklage",
            "audited": false,
            "isCustom": true
        },
        "vmhbeteiligtevermieter": {
            "type": "hasMany",
            "relationName": "cBeteiligteVmhMietverhltnis",
            "foreign": "vmhvermieterbeteiligte",
            "entity": "CBeteiligte",
            "audited": false,
            "isCustom": true
        },
        "vmhbeteiligtemieter": {
            "type": "hasMany",
            "relationName": "cBeteiligteVmhMieter",
            "foreign": "vmhmieterbeteiligte",
            "entity": "CBeteiligte",
            "audited": false,
            "isCustom": true
        },
        "contactsMietverhltnis": {
            "type": "hasMany",
            "relationName": "cVmhMietverhltnisContact",
            "foreign": "cVmhMietverhltnisesContact",
            "entity": "Contact",
            "audited": false,
            "isCustom": true
        },
        "sonstigebesitzervmhmietverhltnis": {
            "type": "hasMany",
            "relationName": "cVmhMietverhltnisBeteiligteSonstigeBesitzer",
            "foreign": "vmhMietverhltnisesSonstigeBesitzer",
            "entity": "CBeteiligte",
            "audited": false,
            "isCustom": true
        },
        "dokumentesvmhMietverhltnisse": {
            "type": "hasMany",
            "relationName": "cVmhMietverhltnisDokumente",
            "foreign": "vmhMietverhltnisesDokumente",
            "entity": "CDokumente",
            "audited": false,
            "isCustom": true
        },
        "vmhMietobjekt2Mietverhltnis": {
            "type": "hasMany",
            "relationName": "cMietobjektVmhMietverhltnis",
            "foreign": "vmhMietverhltnises2Mietobjekt",
            "entity": "CMietobjekt",
            "audited": false,
            "isCustom": true
        }
    },
    "collection": {
        "orderBy": "createdAt",
        "order": "desc"
    },
    "indexes": {
        "name": {
            "columns": [
                "name",
                "deleted"
            ]
        },
        "assignedUser": {
            "columns": [
                "assignedUserId",
                "deleted"
            ]
        },
        "createdAt": {
            "columns": [
                "createdAt"
            ]
        },
        "createdAtId": {
            "unique": true,
            "columns": [
                "createdAt",
                "id"
            ]
        }
    }
}