Backlog Unificado
Projeto: RioNoTeatro. Fonte principal: /www/wwwroot/rionoteatro.com.br/docs/BACKLOG.md.
Modo read-only: ações de escrita ficam disponíveis apenas para o Cérebro.
Sem itens pendentes em /www/wwwroot/rionoteatro.com.br/docs/BACKLOG.md.
Especificações Disponíveis (fora da fila pendente)
- BK-136
- BK-137
- BK-138
- BK-147
- BK-148
- BK-149
- BK-150
- BK-151
- BK-156
- BK-158
- BK-159
- BK-160
- BK-161
- BK-162
- BK-163
- BK-164
- BK-165
- BK-166
- BK-170
- BK-171
- BK-172
- BK-177
- BK-183
- BK-186
- BK-187
- BK-189
- BK-190
- BK-191
- BK-192
- BK-193
- BK-195
- BK-196
- BK-197
- BK-198
- BK-199
- BK-201
- BK-205
- BK-207
- BK-208
- BK-209
- BK-210
- BK-211
- BK-212
- BK-213
- BK-214
- BK-215
- BK-216
- BK-217
- BK-218
- BK-219
- BK-220
- BK-221
- BK-229
- BK-230
- BK-231
- BK-232
- BK-233
- BK-234
- BK-235
- BK-236
- BK-239
- BK-240
- BK-241
- BK-242
- BK-243
- BK-244
- BK-245
- BK-246
- BK-248
- BK-249
- BK-250
- BK-251
- BK-252
- BK-253
- BK-254
- BK-255
- BK-256
- BK-257
- BK-258
- BK-259
- BK-260
- BK-261
- BK-262
- BK-263
- BK-264
- BK-265
- BK-266
- BK-267
- BK-268
- BK-269
- BK-270
- BK-271
- BK-272
- BK-275
- BK-276
- BK-277
- BK-278
- BK-279
- BK-280
- BK-295
- BK-313
Detalhe do BK Selecionado
BK-258 - Detalhe Mercado Pago no admin de pedidos_2
Objetivo
Melhorar admin/modulos/pedidos_2/ para o admin ter uma experiência próxima da conveniência que hoje existe com o link de transação do PagSeguro/PagBank.
Contexto
Hoje o helper de transação do módulo faz isto:
- PagSeguro/Moip/PagBank:
pedido_url($transaction_id)gera URL externa- Mercado Pago:
- o helper retorna string vazia
- o admin só vê o
payment_idem texto, sem navegação contextual
Trecho atual em admin/modulos/pedidos_2/bootstrap.php:
```php
if (strpos((string)$metodo_pagamento, 'MERCADO_PAGO_') === 0) {
return '';
}
```
Leitura técnica desta rodada
O que já existe no banco para Mercado Pago
No pedido:
transaction_id- hoje guarda o
payment_iddo Mercado Pago metodo_pagamento- ex.:
MERCADO_PAGO_PIX,MERCADO_PAGO_CREDIT_CARD
No fluxo:
action.php- grava
external_reference = PED-<pedido_id> - grava
transaction_id = api_response['id'] webhook_mp_ingressos.php- também trabalha com
external_reference - também mapeia
statusestatus_detail
Limite atual
Não encontrei, nesta rodada, uma URL pública/documentada e estável do painel do Mercado Pago equivalente ao transaction/details.jhtml do PagSeguro que possa ser montada só com payment_id.
Então a solução correta para o RNT é:
- detalhe interno no admin com dados live da API
- atalho externo secundário para a área de Atividades do Mercado Pago
Escopo da implementação
admin/modulos/pedidos_2/bootstrap.phpadmin/modulos/pedidos_2/index.phpadmin/modulos/pedidos_2/detalhe.phpadmin/modulos/pedidos_2/action.phpadmin/modulos/pedidos_2/mercadopago_detalhe.php
Resultado esperado
Na listagem e no detalhe
Quando metodo_pagamento começar com MERCADO_PAGO_:
- a transação deve virar link
- esse link deve abrir uma página interna do admin
Na página interna
Buscar live via API do MP e mostrar:
payment_idexternal_referencestatusstatus_detailpayment_method_idpayment_type_iddate_createddate_approved- valores principais
- dados do pagador quando disponíveis
- payload útil para atendimento
Atalho externo
Adicionar botão secundário para:
- abrir
https://www.mercadopago.com.br/activities - com o
payment_idclaramente visível para busca manual no painel do MP
Regra de produto
Melhor um detalhe interno confiável com dados live do MP do que um deep-link externo quebradiço inventado.
Implementado nesta rodada
Arquivos alterados:
admin/modulos/pedidos_2/bootstrap.phpadmin/modulos/pedidos_2/index.phpadmin/modulos/pedidos_2/detalhe.phpadmin/modulos/pedidos_2/action.phpadmin/modulos/pedidos_2/mercadopago_detalhe.php
Decisão de UX
- para Mercado Pago, o
payment_idna listagem agora abre um detalhe interno do admin - ao lado, há um atalho externo para
Atividades MP - no detalhe do pedido, o admin ganhou:
- botão
Detalhe MP - botão
Atividades MP
Conteúdo do detalhe interno
Busca live na API do Mercado Pago e mostra:
payment_idexternal_referencestatusstatus_detailpayment_method_idpayment_type_id- valor da transação
- total pago
- valor líquido
- datas principais
- nome/e-mail/documento do pagador quando disponíveis
ticket_url/ QR quando existir
Motivo da escolha
Não encontrei, nesta rodada, uma URL pública/documentada e estável do Mercado Pago equivalente ao detalhe direto do PagSeguro que pudesse ser montada com segurança só a partir do payment_id.
Então a escolha correta foi:
- link interno confiável
- atalho externo genérico
em vez de deep-link quebradiço inventado.
Hardening final aplicado
- o bloco
Resposta bruta da APIfoi removido - a tela agora mostra só campos estruturados úteis para atendimento
- quando a API falha, aparece apenas alerta resumido
Validação local executada
php -l admin/modulos/pedidos_2/bootstrap.phpphp -l admin/modulos/pedidos_2/index.phpphp -l admin/modulos/pedidos_2/detalhe.phpphp -l admin/modulos/pedidos_2/action.phpphp -l admin/modulos/pedidos_2/mercadopago_detalhe.php