Refactor termination and rental object entities
- Removed the "Kündigungen" field from the German and English rental object JSON files. - Updated the termination JSON files to reflect new field names and structure, including renaming "kuendigungsart" to "beendigungsTatbestand" and "kuendigungsgrund" to "kuendigungsgrund" with updated options. - Deleted the old "CKuendigung" entity definition and related metadata, consolidating functionality into "CKndigung". - Adjusted the service logic to accommodate the new structure, ensuring proper linking of landlords and tenants. - Updated dynamic visibility logic for fields based on conditions related to termination reasons and delivery methods. - Cleaned up metadata definitions for both termination and rental object entities, removing unnecessary relationships and fields. - Incremented cache and microtime values in the configuration file.
This commit is contained in:
@@ -426,59 +426,34 @@ class CVmhMietverhltnis extends \Espo\Services\Record
|
||||
->getRelation($kuendigung, 'vmhMietverhltnises')
|
||||
->relate($mietverhaeltnis);
|
||||
|
||||
// 7. Get and link Mietobjekt
|
||||
$mietobjekt = $this->entityManager
|
||||
->getRepository('CVmhMietverhltnis')
|
||||
->getRelation($mietverhaeltnis, 'vmhMietobjekt')
|
||||
->findOne();
|
||||
|
||||
if ($mietobjekt) {
|
||||
$kuendigungRepo
|
||||
->getRelation($kuendigung, 'mietobjekte')
|
||||
->relate($mietobjekt);
|
||||
}
|
||||
|
||||
// 8. Get Vermieter (Kündigende) from Mietverhältnis
|
||||
// 7. Get Vermieter from Mietverhältnis
|
||||
$vermieterBeteiligte = $this->entityManager
|
||||
->getRepository('CVmhMietverhltnis')
|
||||
->getRelation($mietverhaeltnis, 'vmhbeteiligtevermieter')
|
||||
->find();
|
||||
|
||||
foreach ($vermieterBeteiligte as $vermieter) {
|
||||
// Link as Kündigende
|
||||
// Link as Kuendiger (Vermieter)
|
||||
$kuendigungRepo
|
||||
->getRelation($kuendigung, 'kuendiger')
|
||||
->relate($vermieter);
|
||||
}
|
||||
|
||||
// 9. Get Mieter (Gekündigte) from Mietverhältnis
|
||||
// 8. Get Mieter from Mietverhältnis (NUR Mieter, NICHT sonstige Bewohner!)
|
||||
$mieterBeteiligte = $this->entityManager
|
||||
->getRepository('CVmhMietverhltnis')
|
||||
->getRelation($mietverhaeltnis, 'vmhbeteiligtemieter')
|
||||
->find();
|
||||
|
||||
foreach ($mieterBeteiligte as $mieter) {
|
||||
// Link as Gekündigte
|
||||
// Link as Gekuendigte (Mieter)
|
||||
$kuendigungRepo
|
||||
->getRelation($kuendigung, 'gekuendigte')
|
||||
->relate($mieter);
|
||||
}
|
||||
|
||||
// 9b. Get Sonstige Bewohner (auch Gekündigte) from Mietverhältnis
|
||||
$sonstigeBewohner = $this->entityManager
|
||||
->getRepository('CVmhMietverhltnis')
|
||||
->getRelation($mietverhaeltnis, 'sonstigebesitzervmhmietverhltnis')
|
||||
->find();
|
||||
|
||||
foreach ($sonstigeBewohner as $bewohner) {
|
||||
// Link as Gekündigte
|
||||
$kuendigungRepo
|
||||
->getRelation($kuendigung, 'gekuendigte')
|
||||
->relate($bewohner);
|
||||
}
|
||||
|
||||
// 10. Copy all documents from Mietverhältnis, Mietobjekt and Beteiligte
|
||||
// 10a. Dokumente vom Mietverhältnis
|
||||
// 9. Copy all documents from Mietverhältnis and Beteiligte
|
||||
// 9a. Dokumente vom Mietverhältnis
|
||||
$dokumenteMV = $this->entityManager
|
||||
->getRepository('CVmhMietverhltnis')
|
||||
->getRelation($mietverhaeltnis, 'dokumentesvmhMietverhltnisse')
|
||||
@@ -490,25 +465,10 @@ class CVmhMietverhltnis extends \Espo\Services\Record
|
||||
->relate($dokument);
|
||||
}
|
||||
|
||||
// 10b. Dokumente vom Mietobjekt
|
||||
if ($mietobjekt) {
|
||||
$dokumenteMO = $this->entityManager
|
||||
->getRepository('CMietobjekt')
|
||||
->getRelation($mietobjekt, 'dokumentesMietobjekt')
|
||||
->find();
|
||||
|
||||
foreach ($dokumenteMO as $dokument) {
|
||||
$kuendigungRepo
|
||||
->getRelation($kuendigung, 'dokumenteskuendigung')
|
||||
->relate($dokument);
|
||||
}
|
||||
}
|
||||
|
||||
// 10c. Dokumente von allen Beteiligten (Vermieter + Mieter + Sonstige)
|
||||
// 9b. Dokumente von allen Beteiligten (Vermieter + Mieter)
|
||||
$alleBeteiligte = array_merge(
|
||||
iterator_to_array($vermieterBeteiligte),
|
||||
iterator_to_array($mieterBeteiligte),
|
||||
iterator_to_array($sonstigeBewohner)
|
||||
iterator_to_array($mieterBeteiligte)
|
||||
);
|
||||
|
||||
foreach ($alleBeteiligte as $beteiligter) {
|
||||
@@ -524,7 +484,7 @@ class CVmhMietverhltnis extends \Espo\Services\Record
|
||||
}
|
||||
}
|
||||
|
||||
// 11. Copy portal contacts from Mietverhältnis (nur vom Mietverhältnis!)
|
||||
// 10. Copy portal contacts from Mietverhältnis (nur vom Mietverhältnis!)
|
||||
$portalContacts = $this->entityManager
|
||||
->getRepository('CVmhMietverhltnis')
|
||||
->getRelation($mietverhaeltnis, 'contactsMietverhltnis')
|
||||
@@ -536,7 +496,7 @@ class CVmhMietverhltnis extends \Espo\Services\Record
|
||||
->relate($contact);
|
||||
}
|
||||
|
||||
// 12. Commit transaction
|
||||
// 11. Commit transaction
|
||||
$this->entityManager->getTransactionManager()->commit();
|
||||
|
||||
return [
|
||||
|
||||
Reference in New Issue
Block a user