Merge branch 'develop'

This commit is contained in:
Björn Fromme
2021-06-08 16:50:17 +02:00
6 changed files with 35 additions and 41 deletions
+1 -1
View File
@@ -65,7 +65,7 @@ host('185.237.67.190')
'options' => ['delete', 'links'], 'options' => ['delete', 'links'],
'timeout' => 300, 'timeout' => 300,
]) ])
->set('cachetool_args', '--web --web-path={{release_path}}/public/ --web-url=https://www.ep-reisen.de') ->set('cachetool_args', '--web=SymfonyHttpClient --web-path={{release_path}}/public/ --web-url=https://www.ep-reisen.de')
; ;
task('deploy', [ task('deploy', [
+3 -9
View File
@@ -518,12 +518,6 @@
"node-releases": "^1.1.71" "node-releases": "^1.1.71"
} }
}, },
"caniuse-lite": {
"version": "1.0.30001235",
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001235.tgz",
"integrity": "sha512-zWEwIVqnzPkSAXOUlQnPW2oKoYb2aLQ4Q5ejdjBcnH63rfypaW34CxaeBn1VMya2XaEU3P/R2qHpWyj+l0BT1A==",
"dev": true
},
"colorette": { "colorette": {
"version": "1.2.2", "version": "1.2.2",
"resolved": "https://registry.npmjs.org/colorette/-/colorette-1.2.2.tgz", "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.2.2.tgz",
@@ -2493,9 +2487,9 @@
} }
}, },
"caniuse-lite": { "caniuse-lite": {
"version": "1.0.30001158", "version": "1.0.30001235",
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001158.tgz", "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001235.tgz",
"integrity": "sha512-s5loVYY+yKpuVA3HyW8BarzrtJvwHReuzugQXlv1iR3LKSReoFXRm86mT6hT7PEF5RxW+XQZg+6nYjlywYzQ+g==" "integrity": "sha512-zWEwIVqnzPkSAXOUlQnPW2oKoYb2aLQ4Q5ejdjBcnH63rfypaW34CxaeBn1VMya2XaEU3P/R2qHpWyj+l0BT1A=="
}, },
"caseless": { "caseless": {
"version": "0.12.0", "version": "0.12.0",
@@ -46,32 +46,25 @@ class ContingentRepository extends AbstractRepository implements ProviderInterfa
public function getEvents(\DateTime $dateFrom, \DateTime $dateTo = null, array $options = []) public function getEvents(\DateTime $dateFrom, \DateTime $dateTo = null, array $options = [])
{ {
$optionsResolver = new OptionsResolver(); $optionsResolver = new OptionsResolver();
$optionsResolver->setRequired(['hotelCode']);
$optionsResolver->setDefined(['hotel']); $optionsResolver->setDefined(['hotel']);
$optionsResolver->setDefaults(['hotel' => null]);
$optionsResolver->setAllowedTypes('hotel', Hotel::class); $optionsResolver->setAllowedTypes('hotel', Hotel::class);
$resolvedOptions = $optionsResolver->resolve($options); $resolvedOptions = $optionsResolver->resolve($options);
$hotel = $resolvedOptions['hotel'];
$hotelCode = $resolvedOptions['hotelCode'];
$qb = $this->getDbConnection()->createQueryBuilder(); $qb = $this->getDbConnection()->createQueryBuilder();
$qb $qb
->select('status as status', 'date as date', 'min_price as minPrice', 'pax', 'available') ->select('status as status', 'date as date', 'min_price as minPrice', 'pax', 'available')
->from('tx_epproducts_domain_model_contingent') ->from('tx_epproducts_domain_model_contingent')
->orderBy('date') ->where('hotel_code = :hotelCode')
;
$hotel = null;
if ($resolvedOptions['hotel']) {
/** @var Hotel $hotel */
$hotel = $resolvedOptions['hotel'];
$qb
->where('hotel = :hotel')
->setParameter('hotel', $hotel->getUid())
;
}
$qb
->andWhere('date >= :dateFrom') ->andWhere('date >= :dateFrom')
->setParameter('hotelCode', $hotelCode)
->setParameter('dateFrom', $dateFrom->format('Y-m-d')) ->setParameter('dateFrom', $dateFrom->format('Y-m-d'))
->orderBy('date')
; ;
if (null !== $dateTo) { if (null !== $dateTo) {
@@ -81,7 +74,7 @@ class ContingentRepository extends AbstractRepository implements ProviderInterfa
; ;
} }
$result = $qb->execute()->fetchAll(); $result = $qb->execute()->fetchAllAssociative();
$dates = []; $dates = [];
@@ -145,7 +138,7 @@ class ContingentRepository extends AbstractRepository implements ProviderInterfa
->orderBy('c.date') ->orderBy('c.date')
; ;
return $qb->execute()->fetchAll(); return $qb->execute()->fetchAllAssociative();
} }
/** /**
@@ -185,7 +178,7 @@ class ContingentRepository extends AbstractRepository implements ProviderInterfa
->addOrderBy('c.min_price') ->addOrderBy('c.min_price')
; ;
return $qb->execute()->fetchAll(); return $qb->execute()->fetchAllAssociative();
} }
} }
@@ -94,15 +94,20 @@ class GroupsSwissService implements SingletonInterface, LoggerAwareInterface
{ {
$range = Period::after(new \DateTime('now'), '1 year'); $range = Period::after(new \DateTime('now'), '1 year');
foreach ($this->apiKeys as $hotelUid => $config) { foreach ($this->apiKeys as $config) {
/** @var Hotel $hotel */
$hotel = $this->hotelRepository->findByUid($hotelUid);
if (null === $hotel) { $hotelCode = $config['hotelCode'];
$this->logger->error(sprintf('Hotel with uid %d not found', $hotelUid));
$result = $this->hotelRepository->findByCode($hotelCode);
if (null === $result) {
$this->logger->error(sprintf('Hotel with code %s not found', $hotelCode));
continue; continue;
} }
/** @var Hotel $hotel */
$hotel = $result->getFirst();
$this->logger->info(sprintf( $this->logger->info(sprintf(
'Publishing availabilities for hotel %s', 'Publishing availabilities for hotel %s',
preg_replace( '/[\r\n]/', '', $hotel->getName()) preg_replace( '/[\r\n]/', '', $hotel->getName())
@@ -112,7 +117,7 @@ class GroupsSwissService implements SingletonInterface, LoggerAwareInterface
$events = $this->contingentRepository->getEvents( $events = $this->contingentRepository->getEvents(
\DateTime::createFromImmutable($range->getStartDate()), \DateTime::createFromImmutable($range->getStartDate()),
\DateTime::createFromImmutable($range->getEndDate()), \DateTime::createFromImmutable($range->getEndDate()),
['hotel' => $hotel] ['hotel' => $hotel, 'hotelCode' => $hotelCode]
); );
} }
catch (DBALException $e) { catch (DBALException $e) {
@@ -216,7 +221,8 @@ class GroupsSwissService implements SingletonInterface, LoggerAwareInterface
); );
try { try {
$this->httpClient->request('GET', $url); $foo = 1;
// $this->httpClient->request('GET', $url);
} catch (TransportExceptionInterface $e) { } catch (TransportExceptionInterface $e) {
$this->logger->error(sprintf('A problem occured: %s', $e->getMessage())); $this->logger->error(sprintf('A problem occured: %s', $e->getMessage()));
} }
@@ -65,7 +65,7 @@ class IcalService implements SingletonInterface
$events = $this->contingentRepository->getEvents( $events = $this->contingentRepository->getEvents(
$now, $now,
null, null,
['hotel' => $hotel] ['hotel' => $hotel, 'hotelCode' => $hotel->getCode()]
); );
} }
catch (DBALException $e) { catch (DBALException $e) {
@@ -67,36 +67,37 @@ plugin.tx_epproducts {
groupsSwissApiKeys { groupsSwissApiKeys {
# Spinabad # Spinabad
7 { 7 {
hotelCode = DGS
number = 9849 number = 9849
key = a8b504ab2784446cbf73b8b1f6777f43 key = a8b504ab2784446cbf73b8b1f6777f43
} }
# Waldschlössli # Waldschlössli
6 { 6 {
hotelCode = DPW
number = 9658 number = 9658
key = f757b34dc3ac4a158257cf12c9ce69e1 key = f757b34dc3ac4a158257cf12c9ce69e1
} }
# Jenatsch # Jenatsch
37 { 37 {
hotelCode = LPJNEU
number = 9703 number = 9703
key = 52c314a88a434b359717115db992d20d key = 52c314a88a434b359717115db992d20d
} }
# Schweizerhaus # Schweizerhaus
5 { 5 {
hotelCode = DKS
number = 9850 number = 9850
key = 4a955b23158d40c583b2892a18aa1043 key = 4a955b23158d40c583b2892a18aa1043
} }
# Astoria
74 {
number = 632795
key = 7002bbee9fab4985b1caccabb6f6cab5
}
# Klein Tirol # Klein Tirol
65 { 65 {
hotelCode = MVK
number = 668904 number = 668904
key = e9d86dbc465848d7a0b68df14e3e482f key = e9d86dbc465848d7a0b68df14e3e482f
} }
# Weissfluh # Weissfluh
131 { 131 {
hotelCode = DWW21/22
number = 961523 number = 961523
key = 6a22585d23184f2090bd7110aa9b60f3 key = 6a22585d23184f2090bd7110aa9b60f3
} }