( ! ) Warning: file_put_contents(/var/www/html/storage/logs/app_2026-06-27.log): Failed to open stream: Permission denied in /var/www/html/src/Services/Logger.php on line 157
Call Stack
#TimeMemoryFunctionLocation
10.0258443448{main}( ).../view_images.php:0
20.0266547568CanhotoRepository->__construct( ).../view_images.php:11
30.0266547680Connection::getInstance( $type = 'local' ).../CanhotoRepository.php:19
40.0266547792Connection->__construct( $type = 'local' ).../Connection.php:32
50.0266548280Connection->connect( ).../Connection.php:26
60.0266551200Logger->info( $message = 'Tentando conexão com método: padrão', $context = ??? ).../Connection.php:120
70.0266551200Logger->log( $level = 'INFO', $message = 'Tentando conexão com método: padrão', $context = [] ).../Logger.php:88
80.0268553392Logger->writeToFile( $file = '/var/www/html/storage/logs/app_2026-06-27.log', $content = '[2026-06-27 20:54:58] [INFO] Tentando conexão com método: padrão\n' ).../Logger.php:134
90.0268553392file_put_contents( $filename = '/var/www/html/storage/logs/app_2026-06-27.log', $data = '[2026-06-27 20:54:58] [INFO] Tentando conexão com método: padrão\n', $flags = 10 ).../Logger.php:157

( ! ) Warning: file_put_contents(/var/www/html/storage/logs/app_2026-06-27.log): Failed to open stream: Permission denied in /var/www/html/src/Services/Logger.php on line 157
Call Stack
#TimeMemoryFunctionLocation
10.0258443448{main}( ).../view_images.php:0
20.0266547568CanhotoRepository->__construct( ).../view_images.php:11
30.0266547680Connection::getInstance( $type = 'local' ).../CanhotoRepository.php:19
40.0266547792Connection->__construct( $type = 'local' ).../Connection.php:32
50.0266548280Connection->connect( ).../Connection.php:26
60.0823595624Logger->info( $message = 'Conexão estabelecida com método \'padrão\': chevaliertech02', $context = ??? ).../Connection.php:126
70.0823595624Logger->log( $level = 'INFO', $message = 'Conexão estabelecida com método \'padrão\': chevaliertech02', $context = [] ).../Logger.php:88
80.0823596088Logger->writeToFile( $file = '/var/www/html/storage/logs/app_2026-06-27.log', $content = '[2026-06-27 20:54:58] [INFO] Conexão estabelecida com método \'padrão\': chevaliertech02\n' ).../Logger.php:134
90.0823596088file_put_contents( $filename = '/var/www/html/storage/logs/app_2026-06-27.log', $data = '[2026-06-27 20:54:58] [INFO] Conexão estabelecida com método \'padrão\': chevaliertech02\n', $flags = 10 ).../Logger.php:157

( ! ) Warning: file_put_contents(/var/www/html/storage/logs/app_2026-06-27.log): Failed to open stream: Permission denied in /var/www/html/src/Services/Logger.php on line 157
Call Stack
#TimeMemoryFunctionLocation
10.0258443448{main}( ).../view_images.php:0
20.0266547568CanhotoRepository->__construct( ).../view_images.php:11
30.0829593048Connection::getInstance( $type = 'origem' ).../CanhotoRepository.php:22
40.0829593144Connection->__construct( $type = 'origem' ).../Connection.php:32
50.0829593552Connection->connect( ).../Connection.php:26
60.0829594456LegacyConnection->connect( ).../Connection.php:75
71.1681637624Logger->info( $message = 'Conexão Legacy estabelecida com sucesso', $context = ['host' => '3.216.240.216', 'database' => 'erp_hlog_notas', 'mysql_version' => '5.6.46'] ).../LegacyConnection.php:50
81.1681637624Logger->log( $level = 'INFO', $message = 'Conexão Legacy estabelecida com sucesso', $context = ['host' => '3.216.240.216', 'database' => 'erp_hlog_notas', 'mysql_version' => '5.6.46'] ).../Logger.php:88
91.1681638264Logger->writeToFile( $file = '/var/www/html/storage/logs/app_2026-06-27.log', $content = '[2026-06-27 20:54:59] [INFO] Conexão Legacy estabelecida com sucesso {"host":"3.216.240.216","database":"erp_hlog_notas","mysql_version":"5.6.46"}\n' ).../Logger.php:134
101.1681638264file_put_contents( $filename = '/var/www/html/storage/logs/app_2026-06-27.log', $data = '[2026-06-27 20:54:59] [INFO] Conexão Legacy estabelecida com sucesso {"host":"3.216.240.216","database":"erp_hlog_notas","mysql_version":"5.6.46"}\n', $flags = 10 ).../Logger.php:157

( ! ) Warning: file_put_contents(/var/www/html/storage/logs/app_2026-06-27.log): Failed to open stream: Permission denied in /var/www/html/src/Services/Logger.php on line 157
Call Stack
#TimeMemoryFunctionLocation
10.0258443448{main}( ).../view_images.php:0
20.0266547568CanhotoRepository->__construct( ).../view_images.php:11
30.0829593048Connection::getInstance( $type = 'origem' ).../CanhotoRepository.php:22
40.0829593144Connection->__construct( $type = 'origem' ).../Connection.php:32
50.0829593552Connection->connect( ).../Connection.php:26
61.1686636872Logger->info( $message = 'Conexão estabelecida com LegacyConnection: erp_hlog_notas', $context = ??? ).../Connection.php:77
71.1686636872Logger->log( $level = 'INFO', $message = 'Conexão estabelecida com LegacyConnection: erp_hlog_notas', $context = [] ).../Logger.php:88
81.1686637336Logger->writeToFile( $file = '/var/www/html/storage/logs/app_2026-06-27.log', $content = '[2026-06-27 20:54:59] [INFO] Conexão estabelecida com LegacyConnection: erp_hlog_notas\n' ).../Logger.php:134
91.1686637336file_put_contents( $filename = '/var/www/html/storage/logs/app_2026-06-27.log', $data = '[2026-06-27 20:54:59] [INFO] Conexão estabelecida com LegacyConnection: erp_hlog_notas\n', $flags = 10 ).../Logger.php:157

( ! ) Warning: file_put_contents(/var/www/html/storage/logs/app_2026-06-27.log): Failed to open stream: Permission denied in /var/www/html/src/Services/Logger.php on line 157
Call Stack
#TimeMemoryFunctionLocation
10.0258443448{main}( ).../view_images.php:0
20.0266547568CanhotoRepository->__construct( ).../view_images.php:11
30.0829593048Connection::getInstance( $type = 'origem' ).../CanhotoRepository.php:22
40.0829593144Connection->__construct( $type = 'origem' ).../Connection.php:32
51.1690636776LegacyConnection->__destruct( ).../Connection.php:26
61.1690636776LegacyConnection->close( ).../LegacyConnection.php:205
71.1690636776Logger->info( $message = 'Conexão Legacy fechada', $context = ??? ).../LegacyConnection.php:197
81.1690636776Logger->log( $level = 'INFO', $message = 'Conexão Legacy fechada', $context = [] ).../Logger.php:88
91.1690637192Logger->writeToFile( $file = '/var/www/html/storage/logs/app_2026-06-27.log', $content = '[2026-06-27 20:54:59] [INFO] Conexão Legacy fechada\n' ).../Logger.php:134
101.1690637192file_put_contents( $filename = '/var/www/html/storage/logs/app_2026-06-27.log', $data = '[2026-06-27 20:54:59] [INFO] Conexão Legacy fechada\n', $flags = 10 ).../Logger.php:157

( ! ) Warning: file_put_contents(/var/www/html/storage/logs/app_2026-06-27.log): Failed to open stream: Permission denied in /var/www/html/src/Services/Logger.php on line 157
Call Stack
#TimeMemoryFunctionLocation
10.0258443448{main}( ).../view_images.php:0
21.1694636680Connection->fetchOne( $sql = 'SELECT COUNT(*) as total FROM canhotos_processamento WHERE caminho_imagem IS NOT NULL', $params = [] ).../view_images.php:76
31.1694636680Connection->query( $sql = 'SELECT COUNT(*) as total FROM canhotos_processamento WHERE caminho_imagem IS NOT NULL', $params = [] ).../Connection.php:214
41.1893675424Logger->debug( $message = 'Query executada', $context = ['sql' => 'SELECT COUNT(*) as total FROM canhotos_processamento WHERE caminho_imagem IS NOT NULL', 'params' => [], 'execution_time' => 0.019932985305786133] ).../Connection.php:181
51.1893675424Logger->log( $level = 'DEBUG', $message = 'Query executada', $context = ['sql' => 'SELECT COUNT(*) as total FROM canhotos_processamento WHERE caminho_imagem IS NOT NULL', 'params' => [], 'execution_time' => 0.019932985305786133] ).../Logger.php:76
61.1894676176Logger->writeToFile( $file = '/var/www/html/storage/logs/app_2026-06-27.log', $content = '[2026-06-27 20:54:59] [DEBUG] Query executada {"sql":"SELECT COUNT(*) as total FROM canhotos_processamento WHERE caminho_imagem IS NOT NULL","params":[],"execution_time":0.019932985305786133}\n' ).../Logger.php:134
71.1894676176file_put_contents( $filename = '/var/www/html/storage/logs/app_2026-06-27.log', $data = '[2026-06-27 20:54:59] [DEBUG] Query executada {"sql":"SELECT COUNT(*) as total FROM canhotos_processamento WHERE caminho_imagem IS NOT NULL","params":[],"execution_time":0.019932985305786133}\n', $flags = 10 ).../Logger.php:157

( ! ) Warning: file_put_contents(/var/www/html/storage/logs/app_2026-06-27.log): Failed to open stream: Permission denied in /var/www/html/src/Services/Logger.php on line 157
Call Stack
#TimeMemoryFunctionLocation
10.0258443448{main}( ).../view_images.php:0
21.1899637376Connection->fetchAll( $sql = '\r\n SELECT id, idt_nota_benassi, idt_movimento, nome_tabela, nota, serie, cnpj, caminho_imagem, status_processamento, obs_ia, data_inc\r\n FROM canhotos_processamento \r\n WHERE caminho_imagem IS NOT NULL\r\n ORDER BY id DESC \r\n LIMIT 12 OFFSET 70200\r\n', $params = [] ).../view_images.php:89
31.1899637376Connection->query( $sql = '\r\n SELECT id, idt_nota_benassi, idt_movimento, nome_tabela, nota, serie, cnpj, caminho_imagem, status_processamento, obs_ia, data_inc\r\n FROM canhotos_processamento \r\n WHERE caminho_imagem IS NOT NULL\r\n ORDER BY id DESC \r\n LIMIT 12 OFFSET 70200\r\n', $params = [] ).../Connection.php:208
41.2531676824Logger->debug( $message = 'Query executada', $context = ['sql' => '\r\n SELECT id, idt_nota_benassi, idt_movimento, nome_tabela, nota, serie, cnpj, caminho_imagem, status_processamento, obs_ia, data_inc\r\n FROM canhotos_processamento \r\n WHERE caminho_imagem IS NOT NULL\r\n ORDER BY id DESC \r\n LIMIT 12 OFFSET 70200\r\n', 'params' => [], 'execution_time' => 0.06310391426086426] ).../Connection.php:181
51.2531676824Logger->log( $level = 'DEBUG', $message = 'Query executada', $context = ['sql' => '\r\n SELECT id, idt_nota_benassi, idt_movimento, nome_tabela, nota, serie, cnpj, caminho_imagem, status_processamento, obs_ia, data_inc\r\n FROM canhotos_processamento \r\n WHERE caminho_imagem IS NOT NULL\r\n ORDER BY id DESC \r\n LIMIT 12 OFFSET 70200\r\n', 'params' => [], 'execution_time' => 0.06310391426086426] ).../Logger.php:76
61.2531677992Logger->writeToFile( $file = '/var/www/html/storage/logs/app_2026-06-27.log', $content = '[2026-06-27 20:54:59] [DEBUG] Query executada {"sql":"\\r\\n SELECT id, idt_nota_benassi, idt_movimento, nome_tabela, nota, serie, cnpj, caminho_imagem, status_processamento, obs_ia, data_inc\\r\\n FROM canhotos_processamento \\r\\n WHERE caminho_imagem IS NOT NULL\\r\\n ORDER BY id DESC \\r\\n LIMIT 12 OFFSET 70200\\r\\n","params":[],"execution_time":0.06310391426086426}\n' ).../Logger.php:134
71.2531677992file_put_contents( $filename = '/var/www/html/storage/logs/app_2026-06-27.log', $data = '[2026-06-27 20:54:59] [DEBUG] Query executada {"sql":"\\r\\n SELECT id, idt_nota_benassi, idt_movimento, nome_tabela, nota, serie, cnpj, caminho_imagem, status_processamento, obs_ia, data_inc\\r\\n FROM canhotos_processamento \\r\\n WHERE caminho_imagem IS NOT NULL\\r\\n ORDER BY id DESC \\r\\n LIMIT 12 OFFSET 70200\\r\\n","params":[],"execution_time":0.06310391426086426}\n', $flags = 10 ).../Logger.php:157

( ! ) Warning: file_put_contents(/var/www/html/storage/logs/app_2026-06-27.log): Failed to open stream: Permission denied in /var/www/html/src/Services/Logger.php on line 157
Call Stack
#TimeMemoryFunctionLocation
10.0258443448{main}( ).../view_images.php:0
21.2536645848Connection->fetchOne( $sql = 'SELECT \r\n COUNT(*) as total,\r\n SUM(CASE WHEN status_processamento = \'Processado\' THEN 1 ELSE 0 END) as pendente_recorte,\r\n SUM(CASE WHEN status_processamento = \'Pendente IA\' THEN 1 ELSE 0 END) as pendente_ia,\r\n SUM(CASE WHEN status_processamento = \'Validado\' THEN 1 ELSE 0 END) as validados,\r\n SUM(CASE WHEN status_processamento = \'Rejeitado\' THEN 1 ELSE 0 END) as rejeitados,\r\n SUM(CASE WHEN status_processamento = \'Processando\' THEN 1 ELSE 0 END) as processando,\r\n SUM(CASE WHEN status_pro'..., $params = ??? ).../view_images.php:103
31.2536645848Connection->query( $sql = 'SELECT \r\n COUNT(*) as total,\r\n SUM(CASE WHEN status_processamento = \'Processado\' THEN 1 ELSE 0 END) as pendente_recorte,\r\n SUM(CASE WHEN status_processamento = \'Pendente IA\' THEN 1 ELSE 0 END) as pendente_ia,\r\n SUM(CASE WHEN status_processamento = \'Validado\' THEN 1 ELSE 0 END) as validados,\r\n SUM(CASE WHEN status_processamento = \'Rejeitado\' THEN 1 ELSE 0 END) as rejeitados,\r\n SUM(CASE WHEN status_processamento = \'Processando\' THEN 1 ELSE 0 END) as processando,\r\n SUM(CASE WHEN status_pro'..., $params = [] ).../Connection.php:214
41.2706684968Logger->debug( $message = 'Query executada', $context = ['sql' => 'SELECT \r\n COUNT(*) as total,\r\n SUM(CASE WHEN status_processamento = \'Processado\' THEN 1 ELSE 0 END) as pendente_recorte,\r\n SUM(CASE WHEN status_processamento = \'Pendente IA\' THEN 1 ELSE 0 END) as pendente_ia,\r\n SUM(CASE WHEN status_processamento = \'Validado\' THEN 1 ELSE 0 END) as validados,\r\n SUM(CASE WHEN status_processamento = \'Rejeitado\' THEN 1 ELSE 0 END) as rejeitados,\r\n SUM(CASE WHEN status_processamento = \'Processando\' THEN 1 ELSE 0 END) as processando,\r\n SUM(CASE WHEN status_pro'..., 'params' => [], 'execution_time' => 0.01701807975769043] ).../Connection.php:181
51.2706684968Logger->log( $level = 'DEBUG', $message = 'Query executada', $context = ['sql' => 'SELECT \r\n COUNT(*) as total,\r\n SUM(CASE WHEN status_processamento = \'Processado\' THEN 1 ELSE 0 END) as pendente_recorte,\r\n SUM(CASE WHEN status_processamento = \'Pendente IA\' THEN 1 ELSE 0 END) as pendente_ia,\r\n SUM(CASE WHEN status_processamento = \'Validado\' THEN 1 ELSE 0 END) as validados,\r\n SUM(CASE WHEN status_processamento = \'Rejeitado\' THEN 1 ELSE 0 END) as rejeitados,\r\n SUM(CASE WHEN status_processamento = \'Processando\' THEN 1 ELSE 0 END) as processando,\r\n SUM(CASE WHEN status_pro'..., 'params' => [], 'execution_time' => 0.01701807975769043] ).../Logger.php:76
61.2707686968Logger->writeToFile( $file = '/var/www/html/storage/logs/app_2026-06-27.log', $content = '[2026-06-27 20:54:59] [DEBUG] Query executada {"sql":"SELECT \\r\\n COUNT(*) as total,\\r\\n SUM(CASE WHEN status_processamento = \'Processado\' THEN 1 ELSE 0 END) as pendente_recorte,\\r\\n SUM(CASE WHEN status_processamento = \'Pendente IA\' THEN 1 ELSE 0 END) as pendente_ia,\\r\\n SUM(CASE WHEN status_processamento = \'Validado\' THEN 1 ELSE 0 END) as validados,\\r\\n SUM(CASE WHEN status_processamento = \'Rejeitado\' THEN 1 ELSE 0 END) as rejeitados,\\r\\n SUM(CASE WHEN status_processamento = \'Processando'... ).../Logger.php:134
71.2707686968file_put_contents( $filename = '/var/www/html/storage/logs/app_2026-06-27.log', $data = '[2026-06-27 20:54:59] [DEBUG] Query executada {"sql":"SELECT \\r\\n COUNT(*) as total,\\r\\n SUM(CASE WHEN status_processamento = \'Processado\' THEN 1 ELSE 0 END) as pendente_recorte,\\r\\n SUM(CASE WHEN status_processamento = \'Pendente IA\' THEN 1 ELSE 0 END) as pendente_ia,\\r\\n SUM(CASE WHEN status_processamento = \'Validado\' THEN 1 ELSE 0 END) as validados,\\r\\n SUM(CASE WHEN status_processamento = \'Rejeitado\' THEN 1 ELSE 0 END) as rejeitados,\\r\\n SUM(CASE WHEN status_processamento = \'Processando'..., $flags = 10 ).../Logger.php:157

( ! ) Warning: file_put_contents(/var/www/html/storage/logs/app_2026-06-27.log): Failed to open stream: Permission denied in /var/www/html/src/Services/Logger.php on line 157
Call Stack
#TimeMemoryFunctionLocation
10.0258443448{main}( ).../view_images.php:0
21.2714646328Connection->fetchOne( $sql = 'SELECT COUNT(CASE WHEN status_processamento = \'Documento a Receber\' THEN 1 END) as pendente_imagem FROM canhotos_processamento', $params = ??? ).../view_images.php:107
31.2714646328Connection->query( $sql = 'SELECT COUNT(CASE WHEN status_processamento = \'Documento a Receber\' THEN 1 END) as pendente_imagem FROM canhotos_processamento', $params = [] ).../Connection.php:214
41.2890685072Logger->debug( $message = 'Query executada', $context = ['sql' => 'SELECT COUNT(CASE WHEN status_processamento = \'Documento a Receber\' THEN 1 END) as pendente_imagem FROM canhotos_processamento', 'params' => [], 'execution_time' => 0.017585039138793945] ).../Connection.php:181
51.2890685072Logger->log( $level = 'DEBUG', $message = 'Query executada', $context = ['sql' => 'SELECT COUNT(CASE WHEN status_processamento = \'Documento a Receber\' THEN 1 END) as pendente_imagem FROM canhotos_processamento', 'params' => [], 'execution_time' => 0.017585039138793945] ).../Logger.php:76
61.2890685952Logger->writeToFile( $file = '/var/www/html/storage/logs/app_2026-06-27.log', $content = '[2026-06-27 20:54:59] [DEBUG] Query executada {"sql":"SELECT COUNT(CASE WHEN status_processamento = \'Documento a Receber\' THEN 1 END) as pendente_imagem FROM canhotos_processamento","params":[],"execution_time":0.017585039138793945}\n' ).../Logger.php:134
71.2890685952file_put_contents( $filename = '/var/www/html/storage/logs/app_2026-06-27.log', $data = '[2026-06-27 20:54:59] [DEBUG] Query executada {"sql":"SELECT COUNT(CASE WHEN status_processamento = \'Documento a Receber\' THEN 1 END) as pendente_imagem FROM canhotos_processamento","params":[],"execution_time":0.017585039138793945}\n', $flags = 10 ).../Logger.php:157
Visualizar Imagens - Sistema de Canhotos de Frete

🖼️ Visualizar Imagens

Consulte e valide as imagens processadas pelo sistema

🔄 Limpar

70207

Total de Imagens

70044

Pendente Recorte

0

Pendente IA

163

Validadas (IA/Humano)

0

Rejeitadas

0

Pendente Imagem

Mostrando 70201 a 70207 de 70207 imagens
Página 5851 de 5851
Canhoto 145714893

Canhoto #145714893

Tabela: canhoto_frete_202604

Nota: 7792

Série: 1

CNPJ: 73.336.133/0001-07

Data: 17/04/2026 12:57

Status: Processado

🤖 Análise IA: Imagem processada com sucesso. Análise por IA será implementada posteriormente.

( ! ) Warning: file_put_contents(/var/www/html/storage/logs/app_2026-06-27.log): Failed to open stream: Permission denied in /var/www/html/src/Services/Logger.php on line 157
Call Stack
#TimeMemoryFunctionLocation
10.0258443448{main}( ).../view_images.php:0
21.2902655872Connection->fetchAll( $sql = 'SELECT id, tipo, caminho_imagem FROM canhotos_validacao_visoes WHERE id_canhoto = ? ORDER BY id ASC', $params = [0 => 6451] ).../view_images.php:942
31.2902655872Connection->query( $sql = 'SELECT id, tipo, caminho_imagem FROM canhotos_validacao_visoes WHERE id_canhoto = ? ORDER BY id ASC', $params = [0 => 6451] ).../Connection.php:208
41.3087695224Logger->debug( $message = 'Query executada', $context = ['sql' => 'SELECT id, tipo, caminho_imagem FROM canhotos_validacao_visoes WHERE id_canhoto = ? ORDER BY id ASC', 'params' => [0 => 6451], 'execution_time' => 0.01842188835144043] ).../Connection.php:181
51.3087695224Logger->log( $level = 'DEBUG', $message = 'Query executada', $context = ['sql' => 'SELECT id, tipo, caminho_imagem FROM canhotos_validacao_visoes WHERE id_canhoto = ? ORDER BY id ASC', 'params' => [0 => 6451], 'execution_time' => 0.01842188835144043] ).../Logger.php:76
61.3087696008Logger->writeToFile( $file = '/var/www/html/storage/logs/app_2026-06-27.log', $content = '[2026-06-27 20:54:59] [DEBUG] Query executada {"sql":"SELECT id, tipo, caminho_imagem FROM canhotos_validacao_visoes WHERE id_canhoto = ? ORDER BY id ASC","params":[6451],"execution_time":0.01842188835144043}\n' ).../Logger.php:134
71.3087696008file_put_contents( $filename = '/var/www/html/storage/logs/app_2026-06-27.log', $data = '[2026-06-27 20:54:59] [DEBUG] Query executada {"sql":"SELECT id, tipo, caminho_imagem FROM canhotos_validacao_visoes WHERE id_canhoto = ? ORDER BY id ASC","params":[6451],"execution_time":0.01842188835144043}\n', $flags = 10 ).../Logger.php:157
Arquivo: canhoto_20260403_183612_7792_1_73336133000107.jpg
Tamanho: 267.96 KB
⬇️ Download
Canhoto 145714993

Canhoto #145714993

Tabela: canhoto_frete_202604

Nota: 7791

Série: 1

CNPJ: 73.336.133/0001-07

Data: 17/04/2026 12:57

Status: Processado

🤖 Análise IA: Imagem processada com sucesso. Análise por IA será implementada posteriormente.

( ! ) Warning: file_put_contents(/var/www/html/storage/logs/app_2026-06-27.log): Failed to open stream: Permission denied in /var/www/html/src/Services/Logger.php on line 157
Call Stack
#TimeMemoryFunctionLocation
10.0258443448{main}( ).../view_images.php:0
21.3099655960Connection->fetchAll( $sql = 'SELECT id, tipo, caminho_imagem FROM canhotos_validacao_visoes WHERE id_canhoto = ? ORDER BY id ASC', $params = [0 => 6450] ).../view_images.php:942
31.3099655960Connection->query( $sql = 'SELECT id, tipo, caminho_imagem FROM canhotos_validacao_visoes WHERE id_canhoto = ? ORDER BY id ASC', $params = [0 => 6450] ).../Connection.php:208
41.3276695312Logger->debug( $message = 'Query executada', $context = ['sql' => 'SELECT id, tipo, caminho_imagem FROM canhotos_validacao_visoes WHERE id_canhoto = ? ORDER BY id ASC', 'params' => [0 => 6450], 'execution_time' => 0.017679929733276367] ).../Connection.php:181
51.3276695312Logger->log( $level = 'DEBUG', $message = 'Query executada', $context = ['sql' => 'SELECT id, tipo, caminho_imagem FROM canhotos_validacao_visoes WHERE id_canhoto = ? ORDER BY id ASC', 'params' => [0 => 6450], 'execution_time' => 0.017679929733276367] ).../Logger.php:76
61.3276696096Logger->writeToFile( $file = '/var/www/html/storage/logs/app_2026-06-27.log', $content = '[2026-06-27 20:54:59] [DEBUG] Query executada {"sql":"SELECT id, tipo, caminho_imagem FROM canhotos_validacao_visoes WHERE id_canhoto = ? ORDER BY id ASC","params":[6450],"execution_time":0.017679929733276367}\n' ).../Logger.php:134
71.3276696096file_put_contents( $filename = '/var/www/html/storage/logs/app_2026-06-27.log', $data = '[2026-06-27 20:54:59] [DEBUG] Query executada {"sql":"SELECT id, tipo, caminho_imagem FROM canhotos_validacao_visoes WHERE id_canhoto = ? ORDER BY id ASC","params":[6450],"execution_time":0.017679929733276367}\n', $flags = 10 ).../Logger.php:157
Arquivo: canhoto_20260403_183633_7791_1_73336133000107.jpg
Tamanho: 284.18 KB
⬇️ Download
Canhoto 145742893

Canhoto #145742893

Tabela: canhoto_frete_202604

Nota: 7785

Série: 1

CNPJ: 73.336.133/0001-07

Data: 17/04/2026 12:57

Status: Processado

🤖 Análise IA: Imagem processada com sucesso. Análise por IA será implementada posteriormente.

( ! ) Warning: file_put_contents(/var/www/html/storage/logs/app_2026-06-27.log): Failed to open stream: Permission denied in /var/www/html/src/Services/Logger.php on line 157
Call Stack
#TimeMemoryFunctionLocation
10.0258443448{main}( ).../view_images.php:0
21.3284655960Connection->fetchAll( $sql = 'SELECT id, tipo, caminho_imagem FROM canhotos_validacao_visoes WHERE id_canhoto = ? ORDER BY id ASC', $params = [0 => 6449] ).../view_images.php:942
31.3284655960Connection->query( $sql = 'SELECT id, tipo, caminho_imagem FROM canhotos_validacao_visoes WHERE id_canhoto = ? ORDER BY id ASC', $params = [0 => 6449] ).../Connection.php:208
41.3491695312Logger->debug( $message = 'Query executada', $context = ['sql' => 'SELECT id, tipo, caminho_imagem FROM canhotos_validacao_visoes WHERE id_canhoto = ? ORDER BY id ASC', 'params' => [0 => 6449], 'execution_time' => 0.020753145217895508] ).../Connection.php:181
51.3491695312Logger->log( $level = 'DEBUG', $message = 'Query executada', $context = ['sql' => 'SELECT id, tipo, caminho_imagem FROM canhotos_validacao_visoes WHERE id_canhoto = ? ORDER BY id ASC', 'params' => [0 => 6449], 'execution_time' => 0.020753145217895508] ).../Logger.php:76
61.3492696096Logger->writeToFile( $file = '/var/www/html/storage/logs/app_2026-06-27.log', $content = '[2026-06-27 20:54:59] [DEBUG] Query executada {"sql":"SELECT id, tipo, caminho_imagem FROM canhotos_validacao_visoes WHERE id_canhoto = ? ORDER BY id ASC","params":[6449],"execution_time":0.020753145217895508}\n' ).../Logger.php:134
71.3492696096file_put_contents( $filename = '/var/www/html/storage/logs/app_2026-06-27.log', $data = '[2026-06-27 20:54:59] [DEBUG] Query executada {"sql":"SELECT id, tipo, caminho_imagem FROM canhotos_validacao_visoes WHERE id_canhoto = ? ORDER BY id ASC","params":[6449],"execution_time":0.020753145217895508}\n', $flags = 10 ).../Logger.php:157
Arquivo: canhoto_20260402_080920_7785_1_73336133000107.jpg
Tamanho: 423.76 KB
⬇️ Download
Canhoto 145663493

Canhoto #145663493

Tabela: canhoto_frete_202604

Nota: 1561

Série: 1

CNPJ: 32.944.178/0001-87

Data: 17/04/2026 12:57

Status: Processado

🤖 Análise IA: Imagem processada com sucesso. Análise por IA será implementada posteriormente.

( ! ) Warning: file_put_contents(/var/www/html/storage/logs/app_2026-06-27.log): Failed to open stream: Permission denied in /var/www/html/src/Services/Logger.php on line 157
Call Stack
#TimeMemoryFunctionLocation
10.0258443448{main}( ).../view_images.php:0
21.3499655960Connection->fetchAll( $sql = 'SELECT id, tipo, caminho_imagem FROM canhotos_validacao_visoes WHERE id_canhoto = ? ORDER BY id ASC', $params = [0 => 6448] ).../view_images.php:942
31.3499655960Connection->query( $sql = 'SELECT id, tipo, caminho_imagem FROM canhotos_validacao_visoes WHERE id_canhoto = ? ORDER BY id ASC', $params = [0 => 6448] ).../Connection.php:208
41.3677695312Logger->debug( $message = 'Query executada', $context = ['sql' => 'SELECT id, tipo, caminho_imagem FROM canhotos_validacao_visoes WHERE id_canhoto = ? ORDER BY id ASC', 'params' => [0 => 6448], 'execution_time' => 0.017851829528808594] ).../Connection.php:181
51.3677695312Logger->log( $level = 'DEBUG', $message = 'Query executada', $context = ['sql' => 'SELECT id, tipo, caminho_imagem FROM canhotos_validacao_visoes WHERE id_canhoto = ? ORDER BY id ASC', 'params' => [0 => 6448], 'execution_time' => 0.017851829528808594] ).../Logger.php:76
61.3678696096Logger->writeToFile( $file = '/var/www/html/storage/logs/app_2026-06-27.log', $content = '[2026-06-27 20:54:59] [DEBUG] Query executada {"sql":"SELECT id, tipo, caminho_imagem FROM canhotos_validacao_visoes WHERE id_canhoto = ? ORDER BY id ASC","params":[6448],"execution_time":0.017851829528808594}\n' ).../Logger.php:134
71.3678696096file_put_contents( $filename = '/var/www/html/storage/logs/app_2026-06-27.log', $data = '[2026-06-27 20:54:59] [DEBUG] Query executada {"sql":"SELECT id, tipo, caminho_imagem FROM canhotos_validacao_visoes WHERE id_canhoto = ? ORDER BY id ASC","params":[6448],"execution_time":0.017851829528808594}\n', $flags = 10 ).../Logger.php:157
Arquivo: canhoto_20260402_175118_1561_1_32944178000187.jpg
Tamanho: 185.03 KB
⬇️ Download
Canhoto 145667493

Canhoto #145667493

Tabela: canhoto_frete_202604

Nota: 1558

Série: 1

CNPJ: 32.944.178/0001-87

Data: 17/04/2026 12:57

Status: Processado

🤖 Análise IA: Imagem processada com sucesso. Análise por IA será implementada posteriormente.

( ! ) Warning: file_put_contents(/var/www/html/storage/logs/app_2026-06-27.log): Failed to open stream: Permission denied in /var/www/html/src/Services/Logger.php on line 157
Call Stack
#TimeMemoryFunctionLocation
10.0258443448{main}( ).../view_images.php:0
21.3687655960Connection->fetchAll( $sql = 'SELECT id, tipo, caminho_imagem FROM canhotos_validacao_visoes WHERE id_canhoto = ? ORDER BY id ASC', $params = [0 => 6447] ).../view_images.php:942
31.3687655960Connection->query( $sql = 'SELECT id, tipo, caminho_imagem FROM canhotos_validacao_visoes WHERE id_canhoto = ? ORDER BY id ASC', $params = [0 => 6447] ).../Connection.php:208
41.3886695312Logger->debug( $message = 'Query executada', $context = ['sql' => 'SELECT id, tipo, caminho_imagem FROM canhotos_validacao_visoes WHERE id_canhoto = ? ORDER BY id ASC', 'params' => [0 => 6447], 'execution_time' => 0.01990795135498047] ).../Connection.php:181
51.3886695312Logger->log( $level = 'DEBUG', $message = 'Query executada', $context = ['sql' => 'SELECT id, tipo, caminho_imagem FROM canhotos_validacao_visoes WHERE id_canhoto = ? ORDER BY id ASC', 'params' => [0 => 6447], 'execution_time' => 0.01990795135498047] ).../Logger.php:76
61.3887696096Logger->writeToFile( $file = '/var/www/html/storage/logs/app_2026-06-27.log', $content = '[2026-06-27 20:54:59] [DEBUG] Query executada {"sql":"SELECT id, tipo, caminho_imagem FROM canhotos_validacao_visoes WHERE id_canhoto = ? ORDER BY id ASC","params":[6447],"execution_time":0.01990795135498047}\n' ).../Logger.php:134
71.3887696096file_put_contents( $filename = '/var/www/html/storage/logs/app_2026-06-27.log', $data = '[2026-06-27 20:54:59] [DEBUG] Query executada {"sql":"SELECT id, tipo, caminho_imagem FROM canhotos_validacao_visoes WHERE id_canhoto = ? ORDER BY id ASC","params":[6447],"execution_time":0.01990795135498047}\n', $flags = 10 ).../Logger.php:157
Arquivo: canhoto_20260402_075346_1558_1_32944178000187.jpg
Tamanho: 228.08 KB
⬇️ Download
Canhoto 145666093

Canhoto #145666093

Tabela: canhoto_frete_202604

Nota: 1555

Série: 1

CNPJ: 32.944.178/0001-87

Data: 17/04/2026 12:57

Status: Processado

🤖 Análise IA: Imagem processada com sucesso. Análise por IA será implementada posteriormente.

( ! ) Warning: file_put_contents(/var/www/html/storage/logs/app_2026-06-27.log): Failed to open stream: Permission denied in /var/www/html/src/Services/Logger.php on line 157
Call Stack
#TimeMemoryFunctionLocation
10.0258443448{main}( ).../view_images.php:0
21.3894655960Connection->fetchAll( $sql = 'SELECT id, tipo, caminho_imagem FROM canhotos_validacao_visoes WHERE id_canhoto = ? ORDER BY id ASC', $params = [0 => 6446] ).../view_images.php:942
31.3894655960Connection->query( $sql = 'SELECT id, tipo, caminho_imagem FROM canhotos_validacao_visoes WHERE id_canhoto = ? ORDER BY id ASC', $params = [0 => 6446] ).../Connection.php:208
41.4101695312Logger->debug( $message = 'Query executada', $context = ['sql' => 'SELECT id, tipo, caminho_imagem FROM canhotos_validacao_visoes WHERE id_canhoto = ? ORDER BY id ASC', 'params' => [0 => 6446], 'execution_time' => 0.020691871643066406] ).../Connection.php:181
51.4101695312Logger->log( $level = 'DEBUG', $message = 'Query executada', $context = ['sql' => 'SELECT id, tipo, caminho_imagem FROM canhotos_validacao_visoes WHERE id_canhoto = ? ORDER BY id ASC', 'params' => [0 => 6446], 'execution_time' => 0.020691871643066406] ).../Logger.php:76
61.4101696096Logger->writeToFile( $file = '/var/www/html/storage/logs/app_2026-06-27.log', $content = '[2026-06-27 20:54:59] [DEBUG] Query executada {"sql":"SELECT id, tipo, caminho_imagem FROM canhotos_validacao_visoes WHERE id_canhoto = ? ORDER BY id ASC","params":[6446],"execution_time":0.020691871643066406}\n' ).../Logger.php:134
71.4101696096file_put_contents( $filename = '/var/www/html/storage/logs/app_2026-06-27.log', $data = '[2026-06-27 20:54:59] [DEBUG] Query executada {"sql":"SELECT id, tipo, caminho_imagem FROM canhotos_validacao_visoes WHERE id_canhoto = ? ORDER BY id ASC","params":[6446],"execution_time":0.020691871643066406}\n', $flags = 10 ).../Logger.php:157
Arquivo: canhoto_20260402_110045_1555_1_32944178000187.jpg
Tamanho: 186.21 KB
⬇️ Download
Canhoto 145807593

Canhoto #145807593

Tabela: canhoto_frete_202604

Nota: 40

Série: 1

CNPJ: 10.452.972/0004-13

Data: 17/04/2026 12:57

Status: Validado

🤖 Análise IA: Status: VÁLIDO Motivo: Presença de assinatura manual e carimbo legível. Pensamento: 1. Box de Assinatura: Com riscos de caneta 2. Carimbo: Tinta física detectada 3. Contraste: Há traços que não são da impressão original? Sim. Lógica: A assinatura está localizada no canto inferior direito do canhoto, com traços de caneta azul. O carimbo está localizado no canto superior direito, apresentando marcas de tinta física. Data: Ausente NF nº: 40 Série: 1 Assinatura: Manuscrita Coordenadas_Assinatura: [ymin: 287, xmin: 612

( ! ) Warning: file_put_contents(/var/www/html/storage/logs/app_2026-06-27.log): Failed to open stream: Permission denied in /var/www/html/src/Services/Logger.php on line 157
Call Stack
#TimeMemoryFunctionLocation
10.0258443448{main}( ).../view_images.php:0
21.4108655944Connection->fetchAll( $sql = 'SELECT id, tipo, caminho_imagem FROM canhotos_validacao_visoes WHERE id_canhoto = ? ORDER BY id ASC', $params = [0 => 6445] ).../view_images.php:942
31.4108655944Connection->query( $sql = 'SELECT id, tipo, caminho_imagem FROM canhotos_validacao_visoes WHERE id_canhoto = ? ORDER BY id ASC', $params = [0 => 6445] ).../Connection.php:208
41.4286695296Logger->debug( $message = 'Query executada', $context = ['sql' => 'SELECT id, tipo, caminho_imagem FROM canhotos_validacao_visoes WHERE id_canhoto = ? ORDER BY id ASC', 'params' => [0 => 6445], 'execution_time' => 0.017779111862182617] ).../Connection.php:181
51.4286695296Logger->log( $level = 'DEBUG', $message = 'Query executada', $context = ['sql' => 'SELECT id, tipo, caminho_imagem FROM canhotos_validacao_visoes WHERE id_canhoto = ? ORDER BY id ASC', 'params' => [0 => 6445], 'execution_time' => 0.017779111862182617] ).../Logger.php:76
61.4286696080Logger->writeToFile( $file = '/var/www/html/storage/logs/app_2026-06-27.log', $content = '[2026-06-27 20:54:59] [DEBUG] Query executada {"sql":"SELECT id, tipo, caminho_imagem FROM canhotos_validacao_visoes WHERE id_canhoto = ? ORDER BY id ASC","params":[6445],"execution_time":0.017779111862182617}\n' ).../Logger.php:134
71.4286696080file_put_contents( $filename = '/var/www/html/storage/logs/app_2026-06-27.log', $data = '[2026-06-27 20:54:59] [DEBUG] Query executada {"sql":"SELECT id, tipo, caminho_imagem FROM canhotos_validacao_visoes WHERE id_canhoto = ? ORDER BY id ASC","params":[6445],"execution_time":0.017779111862182617}\n', $flags = 10 ).../Logger.php:157
Arquivo: canhoto_20260402_075901_40_1_10452972000413.jpg
Tamanho: 104.82 KB
⬇️ Download

Validar Canhoto

💡 Dica de Memória: Para treinar a IA, siga o formato:
Pensamento: [O que viu]
Status: [VÁLIDO/INVÁLIDO]
Motivo: [Por que]

✂️ Revisão de Recorte Inteligente

Compare o original com a sugestão da IA e aprove as coordenadas.

Original

Original
--

Sugestão de Recorte

📜 Histórico de Versões

📋 Changelog - Sistema de Canhotos de Frete



Todas as mudanças notáveis neste projeto serão documentadas neste arquivo.

O formato é baseado em Keep a Changelog,
e este projeto adere ao Versionamento Semântico.

🚀 Versão 1.2 - Padronização de Layout & Componentes 2026-04-20


🚀 Adicionado

  • Arquitetura de Componentes: Extração de Topo, Menu de Navegação e Rodapé para componentes PHP reutilizáveis.

  • Identidade Visual Unificada: Padronização da interface em todas as páginas do sistema (Dashboard, Processamento, Logs e Visualização).

  • CSS Centralizado: Criação do `common.css` unificando estilos globais e reduzindo redundância de código.


🛠️ Corrigido

  • Correção de sintaxe em tags de script em páginas refatoradas.

  • Ajuste no balanço de fechamento de divs (DOM) após migração para componentes.

  • Validação de consistência visual entre as páginas 'index', 'dashboard', 'process' e 'logs'.


🚀 Versão 1.1 - Smart Crop & Correções 2026-04-20


🚀 Adicionado

  • Implementação da função de recorte inteligente (AICrop) utilizando IA para otimizar a visualização dos canhotos.

  • Integração de recorte automático no fluxo de visualização de imagens.


🛠️ Corrigido

  • Ajustes e correções na lógica de status de processamento (ex: diferenciação entre 'Processado' e 'Pendente Recorte').

  • Melhoria na exibição e filtragem de status na interface web.


🚀 Versão 1.0 - Validação Humana 2026-04-16


🚀 Adicionado

  • Liberado para produção.

  • Implementação de modal interativo de Changelog global.

  • Validação IA expandida para canhotos com preenchimento manual de 'Liberação Canhoto' (vistos locais).

  • Ajuste e correção da gravação das aprovações da IA como status 'Validado'.