Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 5 additions & 4 deletions lib/BackgroundJob/SentimentAnalysisJob.php
Original file line number Diff line number Diff line change
Expand Up @@ -169,10 +169,11 @@ private function processContact($objectService, string $register, string $sentim

$analysis = $this->sentimentService->analyzeSentiment($transcript, $triggerWords);

$objectService->saveObject(
$register,
$sentimentSchema,
[
$this->saveObjectAsArray(
objectService: $objectService,
register: $register,
schema: $sentimentSchema,
object: [
'interactionId' => $contactId,
'sentimentScore' => $analysis['score'],
'sentimentLabel' => $analysis['label'],
Expand Down
11 changes: 6 additions & 5 deletions lib/BackgroundJob/SpecialistBeschikbaarheidRefreshJob.php
Original file line number Diff line number Diff line change
Expand Up @@ -159,14 +159,15 @@ private function ageOut($objectService, string $register, string $schema, array
}

try {
$objectService->saveObject(
$register,
$schema,
[
$this->saveObjectAsArray(
objectService: $objectService,
register: $register,
schema: $schema,
object: [
'status' => 'afwezig',
'lastUpdate' => date('c'),
],
$id,
uuid: $id,
);
} catch (Throwable $e) {
$this->logger->warning(
Expand Down
4 changes: 2 additions & 2 deletions lib/Controller/BelplanController.php
Original file line number Diff line number Diff line change
Expand Up @@ -139,7 +139,7 @@ public function create(): JSONResponse {
];

try {
$created = $objectService->saveObject($register, $schema, $record);
$created = $objectService->saveObject(object: $record, register: $register, schema: $schema);
} catch (Throwable $e) {
return new JSONResponse(['error' => 'Could not create belplan'], Http::STATUS_INTERNAL_SERVER_ERROR);
}
Expand Down Expand Up @@ -178,7 +178,7 @@ public function update(string $id): JSONResponse {
}

try {
$updated = $objectService->saveObject($register, $schema, $patch, $id);
$updated = $objectService->saveObject(object: $patch, register: $register, schema: $schema, uuid: $id);
} catch (Throwable $e) {
return new JSONResponse(['error' => 'Could not update belplan'], Http::STATUS_INTERNAL_SERVER_ERROR);
}
Expand Down
4 changes: 2 additions & 2 deletions lib/Controller/StufController.php
Original file line number Diff line number Diff line change
Expand Up @@ -202,9 +202,9 @@ public function outbound(): JSONResponse {
return new JSONResponse(['error' => $this->l10n->t('endpointId and berichtNaam are required')], Http::STATUS_BAD_REQUEST);
}

$endpoint = $this->stuf->register->findOne(
$endpoint = $this->stuf->register->findById(
schema: StufRegisterAccess::SCHEMA_ENDPOINT,
filters: ['id' => $endpointId]
id: $endpointId
);
if ($endpoint === null) {
return new JSONResponse(['error' => $this->l10n->t('Endpoint not found')], Http::STATUS_NOT_FOUND);
Expand Down
9 changes: 7 additions & 2 deletions lib/Repair/ArmTermijnEngineTimers.php
Original file line number Diff line number Diff line change
Expand Up @@ -212,8 +212,13 @@ private function definitieFor(array $row): array {
}

try {
$def = $objectService->find($defId, register: $register, schema: $schema);
if (is_array($def) === true) {
$def = $this->findObjectAsArray(
objectService: $objectService,
register: $register,
schema: $schema,
id: $defId
);
if ($def !== null) {
return $def;
}
} catch (\Throwable $e) {
Expand Down
13 changes: 5 additions & 8 deletions lib/Service/AdvisoryBodyService.php
Original file line number Diff line number Diff line change
Expand Up @@ -108,18 +108,15 @@ public function findById(string $id): ?array {
return null;
}

$results = $this->searchObjectsAsArrays(
// A top-level `['id' => $id]` filter does not resolve in OpenRegister
// (ids are metadata, not schema properties) and silently matches
// nothing. The get-by-uuid path resolves the id directly.
return $this->findObjectAsArray(
objectService: $objectService,
register: $register,
schema: $schema,
filters: ['id' => $id, '_limit' => 1],
id: $id
);

if (empty($results) === false) {
return $results[0];
}

return null;
}//end findById()

/**
Expand Down
12 changes: 6 additions & 6 deletions lib/Service/ContactMomentService.php
Original file line number Diff line number Diff line change
Expand Up @@ -109,7 +109,7 @@ public function createContactMoment(array $data): array {
}

try {
$created = $objectService->saveObject($register, $schema, $record);
$created = $objectService->saveObject(object: $record, register: $register, schema: $schema);
} catch (Throwable $e) {
$this->logger->error(
'Dossiq: failed to create contactmoment: ' . $e->getMessage(),
Expand Down Expand Up @@ -269,7 +269,7 @@ public function recordActivity(
'timestamp' => date('c'),
];

$objectService->saveObject($register, $caseSchema, ['activity' => $activity], $caseId);
$objectService->saveObject(object: ['activity' => $activity], register: $register, schema: $caseSchema, uuid: $caseId);
return true;
} catch (Throwable $e) {
$this->logger->error(
Expand Down Expand Up @@ -304,14 +304,14 @@ public function linkUnlinkedContactmoment(

try {
$updated = $objectService->saveObject(
$register,
$schema,
[
object: [
'geidentificeerdeBurgerId' => $burgerId,
'identificationMethod' => $method,
'identificationScore' => round($score, 2),
],
$interactionId,
register: $register,
schema: $schema,
uuid: $interactionId,
);
} catch (Throwable $e) {
$this->logger->error(
Expand Down
2 changes: 1 addition & 1 deletion lib/Service/DeadlineMonitoringSeedDataService.php
Original file line number Diff line number Diff line change
Expand Up @@ -123,7 +123,7 @@ private function insertDefinitions(
}

try {
$objectService->saveObject($register, $schema, $row);
$this->saveObjectAsArray(objectService: $objectService, register: $register, schema: $schema, object: $row);
$counts['definities']++;
} catch (\Throwable $e) {
$this->logger->warning(
Expand Down
4 changes: 2 additions & 2 deletions lib/Service/DoorverbindingService.php
Original file line number Diff line number Diff line change
Expand Up @@ -95,7 +95,7 @@ public function initiateWarmTransfer(array $data): array {
];

try {
$created = $objectService->saveObject($register, $schema, $record);
$created = $objectService->saveObject(object: $record, register: $register, schema: $schema);
} catch (Throwable $e) {
$this->logger->error(
'Dossiq: failed to initiate doorverbinding: ' . $e->getMessage(),
Expand Down Expand Up @@ -238,7 +238,7 @@ private function update(string $doorverbindingId, array $patch): array {
[$objectService, $register, $schema] = $this->resolve();

try {
$updated = $objectService->saveObject($register, $schema, $patch, $doorverbindingId);
$updated = $objectService->saveObject(object: $patch, register: $register, schema: $schema, uuid: $doorverbindingId);
} catch (Throwable $e) {
$this->logger->error(
'Dossiq: failed to update doorverbinding: ' . $e->getMessage(),
Expand Down
48 changes: 30 additions & 18 deletions lib/Service/DwangsomBezwaarService.php
Original file line number Diff line number Diff line change
Expand Up @@ -85,18 +85,28 @@ public function registerBezwaar(string $calculationId, string $basis, string $ra
);

try {
$calculation = $objectService->find($calculationId, register: $register, schema: $bSchema);
$calculation = $this->findObjectAsArray(
objectService: $objectService,
register: $register,
schema: $bSchema,
id: $calculationId
);
} catch (\Throwable $e) {
throw new RuntimeException('DwangsomBerekening lookup failed: ' . $e->getMessage());
}

if (is_array($calculation) === false) {
if ($calculation === null) {
throw new RuntimeException('DwangsomBerekening not found: ' . $calculationId);
}

$calculation['status'] = 'objection-bevroren';
try {
$calculation = $objectService->saveObject($register, $bSchema, $calculation);
$calculation = ($this->saveObjectAsArray(
objectService: $objectService,
register: $register,
schema: $bSchema,
object: $calculation
) ?? $calculation);
} catch (\Throwable $e) {
throw new RuntimeException('DwangsomBerekening persist failed: ' . $e->getMessage());
}
Expand All @@ -112,7 +122,7 @@ public function registerBezwaar(string $calculationId, string $basis, string $ra
foreach ($uitbetalingen as $u) {
$u['status'] = 'on-hold-objection';
try {
$objectService->saveObject($register, $uSchema, $u);
$this->saveObjectAsArray(objectService: $objectService, register: $register, schema: $uSchema, object: $u);
} catch (\Throwable $e) {
$this->logger->warning('Bezwaar freeze on uitbetaling failed', ['id' => $u['id'] ?? '', 'error' => $e->getMessage()]);
}
Expand All @@ -131,11 +141,7 @@ public function registerBezwaar(string $calculationId, string $basis, string $ra
}

$this->logger->info('Dwangsom bezwaar registered', ['berekening' => $calculationId]);
if (is_array($calculation) === true) {
return $calculation;
}

return [];
return $calculation;
}//end registerBezwaar()

/**
Expand Down Expand Up @@ -168,19 +174,29 @@ public function resolveBezwaar(string $calculationId, int $newAmountCents, strin
);

try {
$calculation = $objectService->find($calculationId, register: $register, schema: $bSchema);
$calculation = $this->findObjectAsArray(
objectService: $objectService,
register: $register,
schema: $bSchema,
id: $calculationId
);
} catch (\Throwable $e) {
throw new RuntimeException('DwangsomBerekening lookup failed: ' . $e->getMessage());
}

if (is_array($calculation) === false) {
if ($calculation === null) {
throw new RuntimeException('DwangsomBerekening not found: ' . $calculationId);
}

$calculation['definitiveAmount'] = $newAmountCents;
$calculation['status'] = 'completed';
try {
$calculation = $objectService->saveObject($register, $bSchema, $calculation);
$calculation = ($this->saveObjectAsArray(
objectService: $objectService,
register: $register,
schema: $bSchema,
object: $calculation
) ?? $calculation);
} catch (\Throwable $e) {
throw new RuntimeException('DwangsomBerekening persist failed: ' . $e->getMessage());
}
Expand All @@ -196,7 +212,7 @@ public function resolveBezwaar(string $calculationId, int $newAmountCents, strin
$u['amount'] = $newAmountCents;
$u['status'] = 'voorbereid';
try {
$objectService->saveObject($register, $uSchema, $u);
$this->saveObjectAsArray(objectService: $objectService, register: $register, schema: $uSchema, object: $u);
} catch (\Throwable $e) {
$this->logger->warning('Bezwaar resolve on uitbetaling failed', ['id' => $u['id'] ?? '', 'error' => $e->getMessage()]);
}
Expand All @@ -214,11 +230,7 @@ public function resolveBezwaar(string $calculationId, int $newAmountCents, strin
}

$this->logger->info('Dwangsom bezwaar resolved', ['berekening' => $calculationId, 'newBedrag' => $newAmountCents]);
if (is_array($calculation) === true) {
return $calculation;
}

return [];
return $calculation;
}//end resolveBezwaar()

/**
Expand Down
32 changes: 15 additions & 17 deletions lib/Service/DwangsomCalculationService.php
Original file line number Diff line number Diff line change
Expand Up @@ -37,12 +37,15 @@
namespace OCA\Dossiq\Service;

use DateTimeImmutable;
use OCA\Dossiq\Service\Support\SearchesObjects;
use Psr\Log\LoggerInterface;

/**
* Daily-accruing dwangsom calculator.
*/
class DwangsomCalculationService {
use SearchesObjects;

/**
* AWB-default tier 1 daily tariff in EUR cents (days 1-14).
*/
Expand Down Expand Up @@ -235,20 +238,14 @@ private function fetchCalculationRow(
string $calculationId,
): ?array {
try {
$row = $objectService->find($calculationId, register: $register, schema: $schema);
return $this->findObjectAsArray(objectService: $objectService, register: $register, schema: $schema, id: $calculationId);
} catch (\Throwable $e) {
$this->logger->warning(
'DwangsomCalculation lookup failed',
['id' => $calculationId, 'error' => $e->getMessage()]
);
return null;
}

if (is_array($row) === false) {
return null;
}

return $row;
}//end fetchBerekeningRow()

/**
Expand Down Expand Up @@ -304,12 +301,13 @@ private function persistCalculation(
string $calculationId,
): array {
try {
$saved = $objectService->saveObject($register, $schema, $row);
if (is_array($saved) === true) {
return $saved;
}

return $row;
$saved = $this->saveObjectAsArray(
objectService: $objectService,
register: $register,
schema: $schema,
object: $row
);
return ($saved ?? $row);
} catch (\Throwable $e) {
$this->logger->error(
'DwangsomCalculation persist failed',
Expand Down Expand Up @@ -419,12 +417,12 @@ private function resolveTermijnDefinitieId(
string $instanceId,
): string {
try {
$instance = $objectService->find($instanceId, register: $register, schema: $schema);
$instance = $this->findObjectAsArray(objectService: $objectService, register: $register, schema: $schema, id: $instanceId);
} catch (\Throwable $e) {
return '';
}

if (is_array($instance) === false) {
if ($instance === null) {
return '';
}

Expand All @@ -448,12 +446,12 @@ private function resolveRegimeDailyTariff(
string $definitieId,
): int {
try {
$def = $objectService->find($definitieId, register: $register, schema: $schema);
$def = $this->findObjectAsArray(objectService: $objectService, register: $register, schema: $schema, id: $definitieId);
} catch (\Throwable $e) {
return self::AWB_TIER_1_CENTS;
}

if (is_array($def) === false) {
if ($def === null) {
return self::AWB_TIER_1_CENTS;
}

Expand Down
Loading
Loading