• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

chico-rei / correios-php / 20378555642

19 Dec 2025 06:10PM UTC coverage: 4.758% (-0.5%) from 5.302%
20378555642

push

github

Matheus Marques
Add /v1/prepostagens/postada endpoint

0 of 123 new or added lines in 3 files covered. (0.0%)

57 of 1198 relevant lines covered (4.76%)

0.06 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

0.0
/src/Handler/PrePostagemHandler.php
1
<?php
2

3
namespace ChicoRei\Packages\Correios\Handler;
4

5
use ChicoRei\Packages\Correios\Client;
6
use ChicoRei\Packages\Correios\Exception\CorreiosAPIException;
7
use ChicoRei\Packages\Correios\Exception\CorreiosClientException;
8
use ChicoRei\Packages\Correios\Request\CreatePrePostagemRequest;
9
use ChicoRei\Packages\Correios\Request\DeletePrePostagemByCodeRequest;
10
use ChicoRei\Packages\Correios\Request\GetPrePostagemPostadaRequest;
11
use ChicoRei\Packages\Correios\Request\QueryPrePostagemRequest;
12
use ChicoRei\Packages\Correios\Response\CreatePrePostagemResponse;
13
use ChicoRei\Packages\Correios\Response\DeletePrePostagemByCodeResponse;
14
use ChicoRei\Packages\Correios\Response\GetPrePostagemPostadaResponse;
15
use ChicoRei\Packages\Correios\Response\QueryPrePostagemResponse;
16
use RuntimeException;
17

18
class PrePostagemHandler
19
{
20
    /**
21
     * @var Client
22
     */
23
    private $client;
24

25
    /**
26
     * @param Client $client
27
     */
28
    public function __construct(Client $client)
29
    {
30
        $this->client = $client;
×
31
    }
32

33
    /**
34
     * Busca Pré Postagem
35
     *
36
     * @param string|array|QueryPrePostagemRequest $payload
37
     * @throws CorreiosAPIException
38
     * @throws CorreiosClientException
39
     */
40
    public function query($payload): QueryPrePostagemResponse
41
    {
42
        if (is_string($payload)) {
×
43
            $payload = QueryPrePostagemRequest::create(['codigoObjeto' => $payload]);
×
44
        } elseif (is_array($payload)) {
×
45
            $payload = QueryPrePostagemRequest::create($payload);
×
46
        }
47

48
        if (!$payload instanceof QueryPrePostagemRequest) {
×
49
            throw new RuntimeException(
×
50
                'Payload must be a string, an array or an instance of QueryPrePostagemRequest'
×
51
            );
×
52
        }
53

54
        $response = $this->client->sendRequest($payload);
×
55

56
        return QueryPrePostagemResponse::create($response);
×
57
    }
58

59
    /**
60
     * Cria Pré Postagem
61
     *
62
     * @param array|CreatePrePostagemRequest $payload
63
     * @throws CorreiosAPIException
64
     * @throws CorreiosClientException
65
     */
66
    public function create($payload): CreatePrePostagemResponse
67
    {
68
        if (is_array($payload)) {
×
69
            $payload = CreatePrePostagemRequest::create($payload);
×
70
        }
71

72
        if (!$payload instanceof CreatePrePostagemRequest) {
×
73
            throw new RuntimeException('Payload must be an array or an instance of CreatePrePostagemRequest');
×
74
        }
75

76
        $response = $this->client->sendRequest($payload);
×
77

78
        return CreatePrePostagemResponse::create($response);
×
79
    }
80

81
    /**
82
     * Cancela Pré Postagem pelo Código do Objeto
83
     *
84
     * @param string|array|DeletePrePostagemByCodeRequest $payload
85
     * @throws CorreiosAPIException
86
     * @throws CorreiosClientException
87
     */
88
    public function deleteByCode($payload): DeletePrePostagemByCodeResponse
89
    {
90
        if (is_string($payload)) {
×
91
            $payload = DeletePrePostagemByCodeRequest::create(['codigoObjeto' => $payload]);
×
92
        } elseif (is_array($payload)) {
×
93
            $payload = DeletePrePostagemByCodeRequest::create($payload);
×
94
        }
95

96
        if (!$payload instanceof DeletePrePostagemByCodeRequest) {
×
97
            throw new RuntimeException(
×
98
                'Payload must be a string, an array or an instance of DeletePrePostagemByCodeRequest'
×
99
            );
×
100
        }
101

102
        $response = $this->client->sendRequest($payload);
×
103

104
        return DeletePrePostagemByCodeResponse::create($response);
×
105
    }
106

107
    /**
108
     * Busca Pré Postagem postada
109
     *
110
     * @param string|array|GetPrePostagemPostadaRequest $payload
111
     * @throws CorreiosAPIException
112
     * @throws CorreiosClientException
113
     */
114
    public function getPosted($payload): GetPrePostagemPostadaResponse
115
    {
NEW
116
        if (is_string($payload)) {
×
NEW
117
            $payload = GetPrePostagemPostadaRequest::create(['codigoObjeto' => $payload]);
×
NEW
118
        } elseif (is_array($payload)) {
×
NEW
119
            $payload = GetPrePostagemPostadaRequest::create($payload);
×
120
        }
121

NEW
122
        if (!$payload instanceof GetPrePostagemPostadaRequest) {
×
NEW
123
            throw new RuntimeException(
×
NEW
124
                'Payload must be a string, an array or an instance of GetPrePostagemPostadaRequest'
×
NEW
125
            );
×
126
        }
127

NEW
128
        $response = $this->client->sendRequest($payload);
×
129

NEW
130
        return GetPrePostagemPostadaResponse::create($response);
×
131
    }
132
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc