feat: forced teamer data verification after configured due dates
addresses #869b33c7p
This commit is contained in:
@@ -13,6 +13,7 @@ use App\BusProNet\Model\Hotel;
|
||||
use App\BusProNet\Model\NotificationResponse;
|
||||
use App\BusProNet\Model\Pickup;
|
||||
use App\BusProNet\Model\ProfileResponse;
|
||||
use App\BusProNet\Model\ProfileUpdateResponse;
|
||||
use Symfony\Component\OptionsResolver\OptionsResolver;
|
||||
|
||||
class ResponseParser
|
||||
@@ -45,8 +46,9 @@ class ResponseParser
|
||||
$subType = (string) $xml->art;
|
||||
switch ($subType) {
|
||||
case 'Adressdaten':
|
||||
case 'Adressdaten_Ändern':
|
||||
return $this->createProfileResponse($xml);
|
||||
case 'Adressdaten_Ändern':
|
||||
return $this->createProfileUpdateResponse($xml);
|
||||
case 'SelektionCRM':
|
||||
case 'SelektionCRM_Ändern':
|
||||
return $this->createCrmAttributesResponse($xml);
|
||||
@@ -138,6 +140,27 @@ class ResponseParser
|
||||
return $response;
|
||||
}
|
||||
|
||||
public function createProfileUpdateResponse(\SimpleXMLElement $xml): ProfileUpdateResponse
|
||||
{
|
||||
$addressId = (int) $xml->idadresse;
|
||||
$personId = (int) $xml->idperson;
|
||||
|
||||
$updated = false;
|
||||
$updatedXml = $xml->xpath('änderung|aenderung');
|
||||
if (0 < count($updatedXml)) {
|
||||
$updated = 'true' === strtolower((string) $updatedXml[0]);
|
||||
}
|
||||
|
||||
$response = new ProfileUpdateResponse();
|
||||
$response
|
||||
->setAddressId($addressId)
|
||||
->setPersonId($personId)
|
||||
->setUpdated($updated)
|
||||
;
|
||||
|
||||
return $response;
|
||||
}
|
||||
|
||||
public function createCrmAttributesResponse(\SimpleXMLElement $xml): CrmAttributesResponse
|
||||
{
|
||||
$groups = [];
|
||||
|
||||
Reference in New Issue
Block a user