feat: Update dateOfBirth mapping and enhance rowId handling in sync process for Beteiligte
This commit is contained in:
@@ -140,10 +140,11 @@ class BeteiligteMapper:
|
||||
if zusatz:
|
||||
espo_data['zusatz'] = zusatz
|
||||
|
||||
# GEBURTSDATUM
|
||||
# GEBURTSDATUM (nur Datum-Teil ohne Zeit)
|
||||
geburtsdatum = advo_entity.get('geburtsdatum')
|
||||
if geburtsdatum:
|
||||
espo_data['dateOfBirth'] = geburtsdatum
|
||||
# Advoware gibt '2001-01-05T00:00:00', EspoCRM will nur '2001-01-05'
|
||||
espo_data['dateOfBirth'] = geburtsdatum.split('T')[0] if 'T' in geburtsdatum else geburtsdatum
|
||||
|
||||
# HINWEIS: handelsRegisterNummer und registergericht werden NICHT gemappt
|
||||
# Advoware ignoriert diese Felder im PUT (trotz Swagger Schema)
|
||||
@@ -151,6 +152,9 @@ class BeteiligteMapper:
|
||||
|
||||
logger.debug(f"Mapped to EspoCRM STAMMDATEN: name={espo_data.get('name')}")
|
||||
|
||||
# WICHTIG: Entferne None-Werte (EspoCRM mag keine expliziten None bei required fields)
|
||||
espo_data = {k: v for k, v in espo_data.items() if v is not None}
|
||||
|
||||
return espo_data
|
||||
|
||||
@staticmethod
|
||||
|
||||
@@ -259,6 +259,13 @@ async def handle_update(entity_id, betnr, espo_entity, espocrm, advoware, sync_u
|
||||
elif isinstance(put_result, dict):
|
||||
new_rowid = put_result.get('rowId')
|
||||
|
||||
# Schreibe neue rowId zurück nach EspoCRM
|
||||
if new_rowid:
|
||||
await espocrm.update_entity('CBeteiligte', entity_id, {
|
||||
'advowareRowId': new_rowid
|
||||
})
|
||||
context.logger.info(f"📝 rowId in EspoCRM aktualisiert: {new_rowid[:20]}...")
|
||||
|
||||
await sync_utils.release_sync_lock(
|
||||
entity_id,
|
||||
'clean',
|
||||
|
||||
2
bitbylaw/types.d.ts
vendored
2
bitbylaw/types.d.ts
vendored
@@ -12,7 +12,7 @@ declare module 'motia' {
|
||||
}
|
||||
|
||||
interface Handlers {
|
||||
'VMH Beteiligte Sync': EventHandler<never, never>
|
||||
'VMH Beteiligte Sync Handler': EventHandler<never, never>
|
||||
'VMH Webhook Beteiligte Update': ApiRouteHandler<Record<string, unknown>, unknown, { topic: 'vmh.beteiligte.update'; data: never }>
|
||||
'VMH Webhook Beteiligte Delete': ApiRouteHandler<Record<string, unknown>, unknown, { topic: 'vmh.beteiligte.delete'; data: never }>
|
||||
'VMH Webhook Beteiligte Create': ApiRouteHandler<Record<string, unknown>, unknown, { topic: 'vmh.beteiligte.create'; data: never }>
|
||||
|
||||
Reference in New Issue
Block a user