Compare commits

...

4 Commits

Author SHA1 Message Date
c846d38f1e feat: Update configuration and metadata files for improved functionality and new features 2026-01-25 21:34:39 +01:00
b7bcfbe574 fix: Remove direct Mietobjekt relationships from services
- Removed mietobjekte linking in CVmhRumungsklage.php
- Removed mietobjekte linking in CVmhMietverhltnis.php
- Both entities now connect indirectly via Mietverhältnis
- Fixes 500 errors when creating Räumungsklage/Mietinkasso
- Resolved cache timestamp conflict in config.php
2026-01-25 20:50:19 +01:00
7473bbe270 feat: Clarify Mietobjekte collection process in CVmhRumungsklage class 2026-01-25 20:47:04 +01:00
c67f287a98 feat: Update layout configuration and reorder document indices in bottomPanelsDetail.json 2026-01-25 20:46:03 +01:00
10 changed files with 64 additions and 25 deletions

View File

@@ -75,6 +75,10 @@
"/^bash custom/scripts/ki-overview\\.sh$/": { "/^bash custom/scripts/ki-overview\\.sh$/": {
"approve": true, "approve": true,
"matchCommandLine": true "matchCommandLine": true
},
"/^cd /var/lib/docker/volumes/vmh-espocrm_espocrm/_data/custom/scripts && bash ki-overview\\.sh$/": {
"approve": true,
"matchCommandLine": true
} }
} }
} }

View File

@@ -22,19 +22,31 @@
"vmhErstgespraechsdokumente": { "vmhErstgespraechsdokumente": {
"index": 3 "index": 3
}, },
"vmhMietverhltnisesDokumente": { "beteiligte2dokumente": {
"index": 4 "index": 4
}, },
"vmhRumungsklagesdokumente": { "mietobjekt2dokumente": {
"index": 5 "index": 5
}, },
"vmhMietverhltnisesDokumente": {
"index": 6
},
"kndigungensdokumente": {
"index": 7
},
"vmhRumungsklagesdokumente": {
"index": 8
},
"mietinkassosdokumente": {
"index": 9
},
"_tabBreak_2": { "_tabBreak_2": {
"index": 6, "index": 10,
"tabBreak": true, "tabBreak": true,
"tabLabel": "Ereignisse" "tabLabel": "Ereignisse"
}, },
"stream": { "stream": {
"sticked": false, "sticked": false,
"index": 7 "index": 12
} }
} }

View File

@@ -0,0 +1,4 @@
{
"contactLink": null,
"accountLink": null
}

View File

@@ -105,5 +105,7 @@
"layout": null, "layout": null,
"selectPrimaryFilterName": null "selectPrimaryFilterName": null
} }
} },
"kanbanViewMode": false,
"color": null
} }

View File

@@ -85,7 +85,9 @@
"573a Abs. 2 (Einliegerwohnung)", "573a Abs. 2 (Einliegerwohnung)",
"GewerbeOrdentlich" "GewerbeOrdentlich"
], ],
"default": ["Mietrückstand"], "default": [
"Mietrückstand"
],
"isCustom": true "isCustom": true
}, },
"auszugsfrist": { "auszugsfrist": {
@@ -292,7 +294,20 @@
}, },
"collection": { "collection": {
"orderBy": "createdAt", "orderBy": "createdAt",
"order": "desc" "order": "desc",
"textFilterFields": [
"name",
"vmhMietobjekt.name",
"vmhMietobjekt.description",
"vmhMietobjekt.anschriftCity",
"vmhMietobjekt.lage",
"vmhMietobjekt.anschriftPostalCode",
"vmhMietobjekt.anschriftState",
"vmhMietobjekt.anschriftStreet",
"vmhMietobjekt.anschriftCountry"
],
"fullTextSearch": false,
"countDisabled": false
}, },
"indexes": { "indexes": {
"name": { "name": {
@@ -347,5 +362,6 @@
"vertragsdatum" "vertragsdatum"
] ]
} }
} },
"optimisticConcurrencyControl": false
} }

View File

@@ -1,3 +1,4 @@
{ {
"duplicateWhereBuilderClassName": "Espo\\Classes\\DuplicateWhereBuilders\\General" "duplicateWhereBuilderClassName": "Espo\\Classes\\DuplicateWhereBuilders\\General",
"updateDuplicateCheck": false
} }

View File

@@ -19,5 +19,12 @@
"type": "BasePlus", "type": "BasePlus",
"module": "Custom", "module": "Custom",
"object": true, "object": true,
"isCustom": true "isCustom": true,
"statusField": "status",
"kanbanStatusIgnoreList": null,
"stars": false,
"preserveAuditLog": false,
"duplicateCheckFieldList": [],
"collaborators": false,
"assignedUsers": false
} }

View File

@@ -81,17 +81,14 @@ class CVmhMietverhltnis extends \Espo\Services\Record
->getRelation($mietinkasso, 'vmhMietverhltnises') ->getRelation($mietinkasso, 'vmhMietverhltnises')
->relate($mietverhaeltnis); ->relate($mietverhaeltnis);
// 7. Get and link Mietobjekt // 7. Get Mietobjekt (for document collection only, not linked directly)
$mietobjekt = $this->entityManager $mietobjekt = $this->entityManager
->getRepository('CVmhMietverhltnis') ->getRepository('CVmhMietverhltnis')
->getRelation($mietverhaeltnis, 'vmhMietobjekt') ->getRelation($mietverhaeltnis, 'vmhMietobjekt')
->findOne(); ->findOne();
if ($mietobjekt) { // Note: Mietobjekt wird NICHT mehr direkt zum Mietinkasso gelinkt
$mietinkassoRepo // Die Verbindung erfolgt indirekt über Mietverhältnis
->getRelation($mietinkasso, 'mietobjekte')
->relate($mietobjekt);
}
// 8. Get Vermieter (Kläger) from Mietverhältnis // 8. Get Vermieter (Kläger) from Mietverhältnis
$vermieterBeteiligte = $this->entityManager $vermieterBeteiligte = $this->entityManager

View File

@@ -191,7 +191,7 @@ class CVmhRumungsklage extends \Espo\Services\Record
->relate($mv); ->relate($mv);
} }
// 5. Collect all Mietobjekte from all Mietverhältnisse // 5. Collect all Mietobjekte from all Mietverhältnisse (for document collection only)
$alleMietobjekte = []; $alleMietobjekte = [];
foreach ($alleMietverhaeltnisse as $mv) { foreach ($alleMietverhaeltnisse as $mv) {
$mietobjekt = $this->entityManager $mietobjekt = $this->entityManager
@@ -204,12 +204,8 @@ class CVmhRumungsklage extends \Espo\Services\Record
} }
} }
// Link all unique Mietobjekte // Note: Mietobjekte werden NICHT mehr direkt zur Räumungsklage gelinkt
foreach ($alleMietobjekte as $mietobjekt) { // Die Verbindung erfolgt indirekt über Mietverhältnisse
$raeumungsklagenRepo
->getRelation($raeumungsklage, 'mietobjekte')
->relate($mietobjekt);
}
// 6. Collect all Beteiligte from all Mietverhältnisse // 6. Collect all Beteiligte from all Mietverhältnisse
$alleVermieter = []; $alleVermieter = [];

View File

@@ -361,8 +361,8 @@ return [
0 => 'youtube.com', 0 => 'youtube.com',
1 => 'google.com' 1 => 'google.com'
], ],
'cacheTimestamp' => 1769369868, 'cacheTimestamp' => 1769373272,
'microtime' => 1769369868.427479, 'microtime' => 1769373272.232525,
'siteUrl' => 'https://crm.bitbylaw.com', 'siteUrl' => 'https://crm.bitbylaw.com',
'fullTextSearchMinLength' => 4, 'fullTextSearchMinLength' => 4,
'appTimestamp' => 1768843902, 'appTimestamp' => 1768843902,