Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
100.00% covered (success)
100.00%
10 / 10
100.00% covered (success)
100.00%
6 / 6
CRAP
100.00% covered (success)
100.00%
1 / 1
RegstService
100.00% covered (success)
100.00%
10 / 10
100.00% covered (success)
100.00%
6 / 6
6
100.00% covered (success)
100.00%
1 / 1
 __construct
100.00% covered (success)
100.00%
5 / 5
100.00% covered (success)
100.00%
1 / 1
1
 registerLoginEvent
100.00% covered (success)
100.00%
1 / 1
100.00% covered (success)
100.00%
1 / 1
1
 registerGuestEvent
100.00% covered (success)
100.00%
1 / 1
100.00% covered (success)
100.00%
1 / 1
1
 registerDrawerEvent
100.00% covered (success)
100.00%
1 / 1
100.00% covered (success)
100.00%
1 / 1
1
 registerTicketActivity
100.00% covered (success)
100.00%
1 / 1
100.00% covered (success)
100.00%
1 / 1
1
 registerTicketbaiActivity
100.00% covered (success)
100.00%
1 / 1
100.00% covered (success)
100.00%
1 / 1
1
1<?php
2
3declare(strict_types=1);
4
5namespace UppServices;
6
7/**
8 * Registry (regstr) service: adds log entries for tickets, drawer, login/guest events, TicketBAI, TicketSII.
9 * Delegates to scripts in App/Services/regstr/ (registry, login, drawer, ticket, ticketbai).
10 * Callers pass ConxHelper; the service does not create or release connections.
11 */
12class RegstService
13{
14    private const REGSTR_DIR = __DIR__.'/regstr';
15
16    public function __construct()
17    {
18        require_once self::REGSTR_DIR.'/registry.php';
19        require_once self::REGSTR_DIR.'/login.php';
20        require_once self::REGSTR_DIR.'/drawer.php';
21        require_once self::REGSTR_DIR.'/ticket.php';
22        require_once self::REGSTR_DIR.'/ticketbai.php';
23    }
24
25    /**
26     * Register user login/logout event. Uses central DB.
27     *
28     * @param \ConxHelper $conx Connection helper (->global used).
29     * @param string $session Session objid.
30     * @param array $event Event with 'place', 'login', 'created'.
31     * @return int ApplicationError code.
32     */
33    public function registerLoginEvent(\ConxHelper $conx, string $session, array &$event): int
34    {
35        return \register_login_event($conx, $session, $event);
36    }
37
38    /**
39     * Register guest login/logout event. Uses central DB.
40     *
41     * @param \ConxHelper $conx Connection helper (->global used).
42     * @param string $session Session objid.
43     * @param array $event Event with 'qrcode', 'login', 'created'.
44     * @return int ApplicationError code.
45     */
46    public function registerGuestEvent(\ConxHelper $conx, string $session, array &$event): int
47    {
48        return \register_guest_event($conx, $session, $event);
49    }
50
51    /**
52     * Register drawer event. Uses tenant (PRINTER, RASPPI) and global (PLACE).
53     *
54     * @param \ConxHelper $conx Connection helper (->tenant must be set for device's place).
55     * @param string $session Session objid.
56     * @param array $event Event with 'printer', 'created'.
57     * @return int ApplicationError code.
58     */
59    public function registerDrawerEvent(\ConxHelper $conx, string $session, array &$event): int
60    {
61        return \register_drawer_event($conx, $session, $event);
62    }
63
64    /**
65     * Register ticket activity. Uses tenant DB.
66     *
67     * @param \ConxHelper $conx Connection helper (->tenant must be set).
68     * @param string $session Session objid.
69     * @param array $entrynfo Ticket entry info with 'place' and optionally 'objid'.
70     * @return int ApplicationError code.
71     */
72    public function registerTicketActivity(\ConxHelper $conx, string $session, array $entrynfo): int
73    {
74        return \register_ticket_activity($conx, $session, $entrynfo);
75    }
76
77    /**
78     * Register TicketBAI activity. Uses tenant DB.
79     *
80     * @param \ConxHelper $conx Connection helper (->tenant must be set).
81     * @param string $session Session objid.
82     * @param array $ticketbai Entry with 'tckchg' or 'invceac'.
83     * @return int ApplicationError code.
84     */
85    public function registerTicketbaiActivity(\ConxHelper $conx, string $session, array &$ticketbai): int
86    {
87        return \register_ticketbai_activity($conx, $session, $ticketbai);
88    }
89
90}