Lines
73.68%
14 / 19
Functions and Methods
60.00%
3 / 5
Classes and Traits
0.00%
0 / 1
| Name | Lines | Functions and Methods | CRAP | Classes and Traits | ||||||
|---|---|---|---|---|---|---|---|---|---|---|
| MailQueue | 73.68% | 14 / 19 | 60.00% | 3 / 5 | 6.66 | 0.00% | 0 / 1 | |||
| getEntityMapping | 100.00% | 10 / 10 | 100.00% | 1 / 1 | 1 | |||||
| addConditionItemId | 100.00% | 2 / 2 | 100.00% | 1 / 1 | 1 | |||||
| addOrderBy | 100.00% | 2 / 2 | 100.00% | 1 / 1 | 1 | |||||
| addWhereIn | 0.00% | 0 / 3 | 0.00% | 0 / 1 | 6 | |||||
| selectFields | 0.00% | 0 / 2 | 0.00% | 0 / 1 | 2 | |||||
| 1 | <?php | |
| 2 | ||
| 3 | namespace BO\Zmsbackend\Mail\Repository; | |
| 4 | ||
| 5 | class MailQueue extends \BO\Zmsbackend\Query\Base | |
| 6 | { | |
| 7 | /** | |
| 8 | * @var String TABLE mysql table reference | |
| 9 | */ | |
| 10 | const string TABLE = 'mailqueue'; | |
| 11 | ||
| 12 | const QUERY_DELETE = ' | |
| 13 | DELETE mq, mp | |
| 14 | FROM ' . self::TABLE . ' mq | |
| 15 | LEFT JOIN ' . \BO\Zmsbackend\Mail\Repository\Mimepart::TABLE . ' mp ON mp.queueId = mq.id | |
| 16 | WHERE mq.id=? | |
| 17 | '; | |
| 18 | ||
| 19 | const QUERY_MULTI_DELETE = ' | |
| 20 | DELETE mq, mp | |
| 21 | FROM ' . self::TABLE . ' mq | |
| 22 | LEFT JOIN ' . \BO\Zmsbackend\Mail\Repository\Mimepart::TABLE . ' mp ON mp.queueId = mq.id | |
| 23 | WHERE mq.id IN (?) | |
| 24 | '; | |
| 25 | ||
| 26 | /** | |
| 27 | * @psalm-api | |
| 28 | * | |
| 29 | * @return string[] | |
| 30 | * | |
| 31 | */ | |
| 32 | public function getEntityMapping(): array | |
| 33 | { | |
| 34 | return [ | |
| 35 | 'id' => 'mailQueue.id', | |
| 36 | 'createIP' => 'mailQueue.createIP', | |
| 37 | 'createTimestamp' => 'mailQueue.createTimestamp', | |
| 38 | 'subject' => 'mailQueue.subject', | |
| 39 | 'client__email' => 'mailQueue.clientEmail', | |
| 40 | 'client__familyName' => 'mailQueue.clientFamilyName', | |
| 41 | 'process__id' => 'mailQueue.processID', | |
| 42 | 'department__id' => 'mailQueue.departmentID' | |
| 43 | ]; | |
| 44 | } | |
| 45 | ||
| 46 | public function addConditionItemId($itemId): static | |
| 47 | { | |
| 48 | $this->query->where('mailQueue.id', '=', $itemId); | |
| 49 | return $this; | |
| 50 | } | |
| 51 | ||
| 52 | public function addOrderBy(string $parameter, $order = 'ASC'): static | |
| 53 | { | |
| 54 | $this->query->orderBy('mailQueue.' . $parameter, $order); | |
| 55 | return $this; | |
| 56 | } | |
| 57 | ||
| 58 | public function addWhereIn(string $column, array $itemIds): static | |
| 59 | { | |
| 60 | if (!empty($itemIds)) { | |
| 61 | $this->query->where($column, 'IN', $itemIds); | |
| 62 | } | |
| 63 | return $this; | |
| 64 | } | |
| 65 | ||
| 66 | public function selectFields(array $fields): static | |
| 67 | { | |
| 68 | $this->query->select($fields); | |
| 69 | return $this; | |
| 70 | } | |
| 71 | } |