Implement CAIKnowledge and CDokumente junction functionality; add API routes, metadata, and localization files

This commit is contained in:
2026-03-12 22:39:33 +01:00
parent d0397e475e
commit 3ecc6275bc
13 changed files with 480 additions and 103 deletions

View File

@@ -9,6 +9,21 @@
"route": "/CPuls/:id/abschliessen-fuer-team",
"method": "post",
"actionClassName": "Espo\\Custom\\Api\\CPuls\\AbschliessenFuerTeam"
},
{
"route": "/JunctionData/CAIKnowledge/:knowledgeId/dokumentes",
"method": "get",
"actionClassName": "Espo\\Custom\\Api\\JunctionData\\GetDokumentes"
},
{
"route": "/JunctionData/CAIKnowledge/:knowledgeId/dokumentes/:documentId",
"method": "put",
"actionClassName": "Espo\\Custom\\Api\\JunctionData\\UpdateJunction"
},
{
"route": "/JunctionData/CAIKnowledge/:knowledgeId/dokumentes/:documentId",
"method": "post",
"actionClassName": "Espo\\Custom\\Api\\JunctionData\\LinkDokument"
}
]
}

View File

@@ -1,4 +1,5 @@
{
"table": "c_a_i_knowledge_dokumente",
"fields": {
"id": {
"type": "id",
@@ -6,58 +7,58 @@
"autoincrement": true
},
"cAIKnowledge": {
"type": "link"
"type": "link",
"entity": "CAIKnowledge"
},
"cAIKnowledgeId": {
"type": "varchar",
"len": 17,
"index": true
},
"cAIKnowledgeName": {
"type": "varchar",
"notStorable": true,
"relation": "cAIKnowledge",
"foreign": "name"
},
"cDokumente": {
"type": "link"
"type": "link",
"entity": "CDokumente"
},
"cDokumenteId": {
"type": "varchar",
"len": 17,
"index": true
},
"cDokumenteName": {
"type": "varchar",
"notStorable": true,
"relation": "cDokumente",
"foreign": "name"
},
"aiDocumentId": {
"type": "varchar",
"len": 255,
"isCustom": true,
"tooltip": true
},
"syncstatus": {
"type": "enum",
"required": false,
"options": [
"new",
"unclean",
"synced",
"failed",
"unsupported"
],
"options": ["new", "unclean", "synced", "failed", "unsupported"],
"default": "new",
"style": {
"new": "info",
"new": "primary",
"unclean": "warning",
"synced": "success",
"failed": "danger",
"unsupported": "default"
},
"default": "new",
"isCustom": true,
"tooltip": true
}
},
"lastSync": {
"type": "datetime",
"required": false,
"isCustom": true,
"tooltip": true
"type": "datetime"
},
"syncedHash": {
"type": "varchar",
"len": 64,
"isCustom": true,
"tooltip": true
},
"deleted": {
@@ -68,30 +69,17 @@
"links": {
"cAIKnowledge": {
"type": "belongsTo",
"entity": "CAIKnowledge"
"entity": "CAIKnowledge",
"foreign": "dokumentes"
},
"cDokumente": {
"type": "belongsTo",
"entity": "CDokumente"
"entity": "CDokumente",
"foreign": "aIKnowledges"
}
},
"collection": {
"orderBy": "id",
"order": "desc"
},
"indexes": {
"cAIKnowledgeId": {
"columns": ["cAIKnowledgeId"]
},
"cDokumenteId": {
"columns": ["cDokumenteId"]
},
"syncstatus": {
"columns": ["syncstatus"]
},
"uniqueRelation": {
"type": "unique",
"columns": ["cAIKnowledgeId", "cDokumenteId", "deleted"]
}
"order": "asc"
}
}

View File

@@ -1,10 +1,11 @@
{
"entity": true,
"type": "Base",
"module": "Custom",
"object": true,
"isCustom": true,
"object": false,
"layouts": false,
"tab": false,
"acl": true,
"disabled": false
"customizable": false,
"type": "Base",
"module": "Custom",
"isCustom": true
}