Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
n/a
0 / 0
n/a
0 / 0
CRAP
n/a
0 / 0
TicketprinterDeleteByCron
n/a
0 / 0
n/a
0 / 0
10
n/a
0 / 0
 __construct
n/a
0 / 0
n/a
0 / 0
2
 startProcessing
n/a
0 / 0
n/a
0 / 0
4
 deleteTicketpinter
n/a
0 / 0
n/a
0 / 0
4
1<?php
2
3namespace BO\Zmsdb\Helper;
4
5/**
6 * @codeCoverageIgnore
7 */
8class TicketprinterDeleteByCron
9{
10    protected $verbose = false;
11
12    protected $deleteDateTime = 0;
13
14    public function __construct($verbose = false)
15    {
16        $dateTime = new \DateTimeImmutable();
17        $this->deleteDateTime = $dateTime->setTimestamp($dateTime->getTimestamp() - (30 * 24 * 3600));
18        $dateString = $this->deleteDateTime->format('Y-m-d');
19        if ($verbose) {
20                            \App::$log->info('Deleting expired ticketprinter older than 30 days', ['beforeDate' => $dateString]);
21            $this->verbose = true;
22        }
23        $this->scopeList = (new \BO\Zmsdb\Scope())->readList();
24    }
25
26    public function startProcessing($commit)
27    {
28        $ticketprinterList = (new \BO\Zmsdb\Ticketprinter())->readExpiredTicketprinterList($this->deleteDateTime);
29        foreach ($ticketprinterList as $entity) {
30            if ($this->verbose) {
31                \App::$log->info('Processing ticketprinter', ['ticketprinter' => (string) $entity]);
32            }
33            if ($commit) {
34                $this->deleteTicketpinter($entity);
35            }
36        }
37    }
38
39    protected function deleteTicketpinter(\BO\Zmsentities\Ticketprinter $entity)
40    {
41        $query = new \BO\Zmsdb\Ticketprinter();
42        if ($query->deleteEntity($entity->id) && $this->verbose) {
43            \App::$log->info('Ticketprinter successfully removed', ['ticketprinterId' => $entity->id]);
44        } elseif ($this->verbose) {
45            \App::$log->warning('Could not remove ticketprinter', ['ticketprinterId' => $entity->id]);
46        }
47    }
48}