PluginProbe ʕ •ᴥ•ʔ
Booking for Appointments and Events Calendar – Amelia / 1.2.32
Booking for Appointments and Events Calendar – Amelia v1.2.32
2.4.5 2.4.4 2.4.3 2.4.2 2.4.1 2.4 trunk 1.2.1 1.2.10 1.2.11 1.2.12 1.2.13 1.2.14 1.2.15 1.2.16 1.2.17 1.2.18 1.2.19 1.2.2 1.2.20 1.2.21 1.2.22 1.2.23 1.2.24 1.2.25 1.2.26 1.2.27 1.2.28 1.2.29 1.2.3 1.2.30 1.2.31 1.2.32 1.2.33 1.2.34 1.2.35 1.2.36 1.2.37 1.2.38 1.2.4 1.2.5 1.2.6 1.2.7 1.2.8 1.2.9 2.0 2.0.1 2.0.2 2.1 2.1.1 2.1.2 2.1.3 2.2 2.2.1 2.3
ameliabooking / src / Infrastructure / Repository / Booking / Event / EventProvidersRepository.php
ameliabooking / src / Infrastructure / Repository / Booking / Event Last commit date
CustomerBookingEventPeriodRepository.php 1 year ago CustomerBookingEventTicketRepository.php 1 year ago EventPeriodsRepository.php 1 year ago EventProvidersRepository.php 1 year ago EventRepository.php 1 year ago EventTagsRepository.php 1 year ago EventTicketRepository.php 1 year ago
EventProvidersRepository.php
76 lines
1 <?php
2
3 namespace AmeliaBooking\Infrastructure\Repository\Booking\Event;
4
5 use AmeliaBooking\Domain\Entity\Booking\Event\Event;
6 use AmeliaBooking\Domain\Entity\User\Provider;
7 use AmeliaBooking\Infrastructure\Common\Exceptions\QueryExecutionException;
8 use AmeliaBooking\Infrastructure\Repository\AbstractRepository;
9
10 /**
11 * Class EventProvidersRepository
12 *
13 * @package AmeliaBooking\Infrastructure\Repository\Booking\Event
14 */
15 class EventProvidersRepository extends AbstractRepository
16 {
17 /**
18 * @param Event $event
19 * @param Provider $provider
20 *
21 * @return mixed
22 * @throws QueryExecutionException
23 */
24 public function add($event, $provider)
25 {
26 $eventData = $event->toArray();
27 $providerData = $provider->toArray();
28
29 $params = [
30 ':userId' => $providerData['id'],
31 ':eventId' => $eventData['id'],
32 ];
33
34 try {
35 $statement = $this->connection->prepare(
36 "INSERT INTO {$this->table}
37 (
38 `userId`,
39 `eventId`
40 )
41 VALUES (
42 :userId,
43 :eventId
44 )"
45 );
46
47 $res = $statement->execute($params);
48
49 if (!$res) {
50 throw new QueryExecutionException('Unable to add data in ' . __CLASS__);
51 }
52
53 return $this->connection->lastInsertId();
54 } catch (\Exception $e) {
55 throw new QueryExecutionException('Unable to add data in ' . __CLASS__, $e->getCode(), $e);
56 }
57 }
58
59 /**
60 * @param int $eventId
61 *
62 * @return bool
63 * @throws QueryExecutionException
64 */
65 public function deleteByEventId($eventId)
66 {
67 try {
68 $statement = $this->connection->prepare("DELETE FROM {$this->table} WHERE eventId = :eventId");
69 $statement->bindParam(':eventId', $eventId);
70 return $statement->execute();
71 } catch (\Exception $e) {
72 throw new QueryExecutionException('Unable to delete data from ' . __CLASS__, $e->getCode(), $e);
73 }
74 }
75 }
76