PageSourceSearch

https://cbtkd.org.br/assets/LancamentoTaxa1Dan2026Page-808cf725.js

js cbtkd.org.br collected 2026-10-10 00:49:04 UTC 21,067 bytes, 13 lines download raw bytes

1import{j as o}from"./vendor-ui-bootstrap-613dad89.js";import{r as I}from"./vendor-react-4c7f50f2.js";import{u as ka,B as c,C as _a,b as J,d as ua}from"./main-722823a7.js";import{c as La}from"./contas.service-6aadb11a.js";import{d as pa,_ as fa,b as p,e as ga,i as ta}from"./vendor-firebase-7ea6fd91.js";import{C as Ka}from"./Container-99ae107f.js";import{P as Wa}from"./ButtonBase-aebc3c53.js";import{T as d}from"./Typography-7e18e40c.js";import{C as xa,a as ha}from"./CardContent-d261ee65.js";import{L as Ja}from"./List-732f0ca7.js";import{L as M,a as Y}from"./ListItemText-934c8795.js";import{F as qa}from"./FormLabel-13e89012.js";import{I as Qa,S as Ha}from"./Select-7efa736e.js";import{M as va}from"./MenuItem-fa30ac1b.js";import{I as Ga}from"./Info-177a8ab7.js";import{E as Xa}from"./Error-9933be95.js";import{B as Za}from"./Button-9ccc7ef4.js";import{P as ao}from"./PlayArrow-b360d7db.js";import{L as Va}from"./LinearProgress-471f9073.js";import{C as oo}from"./CheckCircle-ee0378c0.js";import{C as q}from"./Chip-12d45e9c.js";import"./vendor-ui-material-b69ee68f.js";import"./vendor-utils-de6b936e.js";import"./dateForFirebaseUtils-3ebf0ebf.js";import"./consoleLog.service-ad7ab1b1.js";import"./index-dea1fe03.js";import"./index-50a5cdf9.js";import"./vendor-charts-6c028842.js";import"./NumberFormatsUtil-381d6edf.js";import"./descontoPagamento-edd21b0f.js";import"./styled-34fdcde1.js";import"./useThemeProps-6ed395b3.js";import"./isFocusVisible-fa0e9c8b.js";import"./useSlot-bf09d74c.js";import"./mergeSlotProps-72e11b7d.js";import"./isMuiElement-afa3f862.js";import"./listItemTextClasses-99dc0fba.js";import"./useFormControl-78a3dfb5.js";import"./useControlled-f71f4f62.js";import"./useSlotProps-b6b8ff79.js";import"./utils-dc4d713d.js";import"./Grow-ca1ac142.js";import"./mergeSlotProps-65df1b6b.js";import"./createSvgIcon-000f2b16.js";import"./dividerClasses-6591c999.js";import"./listItemIconClasses-7beae250.js";function qo(){var ya,ba;const{currentUser:G}=ka(),Q="4X8eTXc3fCjlGFQPJ3gi",sa=["V9GMPMhdYshO7FgA7yrz","jIlsPrjD28QFs0juJ0re"],H="AY5mdIz1WhEyZya2ChZO",Ua=["AY5mdIz1WhEyZya2ChZO","danOG5uM7YFGkVLX6Ra5"],ra="Taxa abonada conforme presente da CBTKD aos praticantes com exame 1º DAN em Dez/2025",Aa=new Date("2026-01-01T00:00:00"),[x,Fa]=I.useState("PRODUÇÃO"),[k,Ea]=I.useState(!1),[Ca,na]=I.useState(0),[Ra,ia]=I.useState(0),[Sa,ja]=I.useState([]),[O,ca]=I.useState(null),[s,Ba]=I.useState(null),[Da,$a]=I.useState(!1),a=(r,l="info")=>{const A={timestamp:new Date().toLocaleTimeString(),mensagem:`${l==="success"?"✅":l==="error"?"❌":l==="warning"?"⚠️":"ℹ️"} ${r}`,tipo:l};ja(e=>{const E=[...e,A];return E.length%500===0&&(console.clear(),console.log(`🧹 Console limpo automaticamente após ${E.length} logs`)),E.slice(-500)})},Ta=async(r,l)=>{var D,$,A;console.log(`🔵 [ATIVAR-START] Iniciando ativação de ${l} (ID: ${r})`);try{console.log("🔵 [ATIVAR-BUSCA] Buscando praticante...");const e=await J.getOne("praticantes",r);if(!e){console.error(`❌ [ATIVAR-ERRO] Praticante não encontrado: ${r}`),a(`⚠️ Praticante ${l} não encontrado para ativação`,"warning");return}console.log("✅ [ATIVAR-ENCONTRADO] Praticante:",{id:r,nome:e.name,activeAtual:(D=e.metadados)==null?void 0:D.active,ativoAnoAtual:e.ativoAno});const E=e.ativoAno||[],V=(($=e.metadados)==null?void 0:$.active)!==!0,P=!E.includes(2026);if(console.log("🔍 [ATIVAR-VERIFICACAO]",{precisaAtivar:V,precisaAdicionarAno:P}),!V&&!P){console.log("✅ [ATIVAR-SKIP] Já ativo com ano 2026"),a("   ↳ Praticante já ativo com ano 2026 ✓","success");return}console.log("🔧 [ATIVAR-UPDATE] Preparando atualização..."),a(`   ↳ Atualizando praticante (active: ${(A=e.metadados)==null?void 0:A.active} → true, ativoAno: ${JSON.stringify(E)} → [..., 2026])`,"info");const U={...e};if(U.metadados={...e.metadados,active:!0},P){const _=[...new Set([...E,2026])].sort();U.ativoAno=_,console.log("📅 [ATIVAR-ANO] Novos anos:",_)}console.log("💾 [ATIVAR-SAVE] Chamando GenericService.update...");const X=await J.update("praticantes",r,U);console.log("✅ [ATIVAR-SAVE-OK] Update concluído:",X);const N=[];V?N.push("ativado"):N.push("confirmado ativo"),P&&N.push("ano 2026 adicionado"),a(`      ↳ Praticante ${N.join(" e ")} ✓`,"success"),console.log("🎉 [ATIVAR-SUCESSO] Ativação concluída")}
1catch(e){throw console.error(`❌ [ATIVAR-ERRO] Erro ao ativar ${l}:`,e),console.error("❌ [ATIVAR-ERRO-STACK]",e.stack),a(`   ↳ Erro ao ativar praticante: ${e.message}`,"error"),e}};I.useEffect(()=>{(async()=>{var l,D,$,A;$a(!0),a("Carregando configuração da taxa a ser lançada...");try{const e=await J.getOne("services",H);if(!e)throw new Error(`Taxa com ID ${H} não encontrada!`);Ba(e),console.log("📋 [SERVICO-CARREGADO] Detalhes:",{id:H,nome:(l=e.dadosGerais)==null?void 0:l.name,valor:(D=e.dadosGerais)==null?void 0:D.value,servicoCategory:e.servicoCategory,categoria:e.categoria}),a(`Taxa carregada: ${(($=e.dadosGerais)==null?void 0:$.name)||"Sem nome"}`,"success"),a(`Valor: R$ ${((A=e.dadosGerais)==null?void 0:A.value)||"0.00"}`,"info"),a(`Categoria: ${e.servicoCategory||e.categoria||"Não definida"}`,"info")}catch(e){console.error("Erro ao carregar taxa:",e),a(`Erro ao carregar taxa: ${e.message}`,"error")}finally{$a(!1)}})()},[]);const za=async()=>{var l,D,$,A,e,E,V,P,U,X,N,_;if(!s){alert("Aguarde o carregamento da configuração da taxa!");return}if(x==="PRODUÇÃO"&&!window.confirm(`⚠️ ATENÇÃO!
2
3Você está prestes a EXECUTAR EM PRODUÇÃO.
4Isso irá:
5- Buscar praticantes com Registro 1DAN pago (qualquer data)
6- Filtrar por data de exame do 1º DAN:
7  • PADRÃO: 01/12/2025 a 31/12/2025
8  • SC/RS: 01/11/2025 a 31/12/2025
9- Lançar ou abonar taxa de R$ 199,99
10- Enviar emails de confirmação
11
12Deseja continuar?`)){a("Operação cancelada pelo usuário","warning");return}Ea(!0),na(0),ia(0),ja([]),ca(null);const r=Date.now();try{a("═══════════════════════════════════════════","info"),a(`🚀 Iniciando execução em modo: ${x}`,"info"),a("═══════════════════════════════════════════","info"),a("📊 ETAPA 1/3: Buscando praticantes elegíveis...","info");const F=new Date("2025-12-01T00:00:00"),Ia=new Date("2025-11-01T00:00:00"),wa=new Date("2025-12-31T23:59:59");a("🔍 Buscando contas Registro 1DAN com:","info"),a("   • pagamento.pago = true (qualquer data)","info"),a("   • Filtrar por data de exame 1º DAN:","info"),a("     - PADRÃO: 01/12/2025 a 31/12/2025","info"),a("     - SC/RS: 01/11/2025 a 31/12/2025","info");const Ma=pa(fa(ua,"contas"),p("idServico","in",sa),p("vinculo.beneficiarioId","==",Q),p("metadados.active","==",!0),p("metadados.successorId","==",""),p("pagamento.pago","==",!0)),Oa=await ga(Ma);a(`✅ ${Oa.size} contas encontradas com critério inicial`,"success");const Pa=new Map;Oa.docs.forEach(t=>{var C,v;const n=t.data();(C=n.vinculo)!=null&&C.idEntidade&&Pa.set(n.vinculo.idEntidade,{id:n.vinculo.idEntidade,name:((v=n.vinculo)==null?void 0:v.name)||"Nome não disponível"})});const Na=Array.from(Pa.values());a(`✅ ${Na.length} praticantes únicos com Registro 1DAN pago`,"success"),a("","info"),a("🎓 Verificando data de exame do 1º DAN...","info"),a("   • PADRÃO: 01/12/2025 a 31/12/2025","info"),a("   • SC/RS: 01/11/2025 a 31/12/2025","info");const K=[];let da=0,Z=0,aa=0,oa=0;for(const t of Na)try{const n=await J.getOne("praticantes",t.id);if(!n){a(`   ⚠️ Praticante ${t.name} não encontrado no banco`,"warning"),oa++;continue}const C=(l=n.dadosTaekwondo)==null?void 0:l.historicoGraduacoes;if(!C||C.length<11){a(`   ⚠️ ${t.name}: sem histórico de graduação para 1º DAN`,"warning"),aa++;continue}const v=C[10];if(!v||!v.data){a(`   ⚠️ ⚠️ ${t.name}: sem data de exame no histórico`,"warning");try{const T=pa(fa(ua,"contas"),p("idServico","in",sa),p("vinculo.idEntidade","==",t.id),p("vinculo.beneficiarioId","==",Q),p("metadados.active","==",!0),p("metadados.successorId","==",""),p("pagamento.pago","==",!0));if((await ga(T)).size>0)if(a("      🔧 Encontrada taxa de registro - corrigindo cadastro com data 15/12/2025","info"),x!=="DRY-RUN"){const m={...n};m.dadosTaekwondo||(m.dadosTaekwondo={}),m.dadosTaekwondo.historicoGraduacoes||(m.dadosTaekwondo.historicoGraduacoes=[]),m.dadosTaekwondo.historicoGraduacoes[10]||(m.dadosTaekwondo.historicoGraduacoes[10]={}),m.dadosTaekwondo.historicoGraduacoes[10]={...m.dadosTaekwondo.historicoGraduacoes[10],data:ta.fromDate(new Date("2025-12-15T12:00:00"))},await J.update("praticantes",t.id,m),a("      ✅ Cadastro atualizado com sucesso!","success");const j=new Date("2025-12-15T12:00:00"),g=((D=n.dadosEndereco)==null?void 0:D.logradouroUF)||"",y=g==="SC"||g==="RS"?Ia:F,u=g==="SC"||g==="RS";if(j>=y&&j<=wa){K.push({...t,dataExame:j,uf:g,isSCRS:u}),da++,u&&Z++;continue}}else a("      🔍 DRY-RUN: Cadastro SERIA atualizado","info");else a("      ℹ️ Sem taxa de registro - não será corrigido","info")}catch(T){console.error(`Erro ao tentar corrigir praticante ${t.name}:`,T),a(`      ⚠️ Erro ao tentar corrigir: ${T.message}`,"warning")}aa++;continue}let w;v.data.toDate?w=v.data.toDate():v.data instanceof Date?w=v.data:w=new Date(v.data);const R=(($=n.dadosEndereco)==null?void 0:$.logradouroUF)||"",i=R==="SC"||R==="RS"?Ia:F,S=R==="SC"||R==="RS";w>=i&&w<=wa?(K.push({...t,dataExame:w,uf:R,isSCRS:S}
12),da++,S&&Z++):aa++}catch(n){console.error(`Erro ao verificar praticante ${t.name}:`,n),a(`   ⚠️ Erro ao verificar ${t.name}: ${n.message}`,"warning"),oa++}if(a(`✅ ${da} praticantes elegíveis`,"success"),Z>0&&a(`   • ${Z} de SC/RS (período Nov-Dez/2025)`,"info"),a(`   • ${aa} praticantes fora do período ou sem data`,"info"),oa>0&&a(`   • ${oa} praticantes com erro na verificação`,"warning"),K.length===0){a("⚠️ Nenhum praticante encontrado com os critérios especificados","warning"),ca({total:0,lancados:0,abonados:0,jaExistentes:0,erros:0});return}const h=x==="TESTE"?K.slice(0,10):K;a(`📋 Processando ${h.length} praticantes (modo: ${x})`,"info"),a("","info"),a("📊 ETAPA 2/3: Processando lançamentos em lotes...","info");const ea=30,la=Math.ceil(h.length/ea);let f={total:h.length,lancados:0,abonados:0,jaExistentes:0,erros:0};for(let t=0;t<h.length;t+=ea){const n=h.slice(t,t+ea),C=Math.floor(t/ea)+1;a("","info"),a(`🔄 Processando lote ${C}/${la} (${n.length} praticantes)...`,"info");const v=Date.now();for(let R=0;R<n.length;R++){const i=n[R],S=t+R+1;try{na(Math.round(S/h.length*100));const T=pa(fa(ua,"contas"),p("idServico","in",Ua),p("vinculo.idEntidade","==",i.id),p("metadados.active","==",!0),p("metadados.successorId","==",""),p("vinculo.beneficiarioId","==",Q)),L=await ga(T);if(a(`   ↳ Busca de contas existentes: ${L.size} encontrada(s)`,"info"),L.size>0){let m=!0,j=!1,g=!1;for(let z=0;z<L.docs.length;z++){const W=L.docs[z],ma=W.data();a(`   ↳ Conta ${z+1}/${L.size}: ${W.id} | Pago: ${((A=ma.pagamento)==null?void 0:A.pago)||!1} | Active: ${(e=ma.metadados)==null?void 0:e.active}`,"info"),(E=ma.pagamento)!=null&&E.pago?j=!0:(m=!1,x!=="DRY-RUN"?(await La.abonarCobranca(W.id,ra,Aa),g=!0,a(`      ↳ Taxa ${W.id} abonada`,"success")):a(`      ↳ Taxa ${W.id} seria abonada (DRY-RUN)`,"info"))}if(m){a(`[${S}/${h.length}] ${i.name}: ✓ Taxa já paga - PULANDO`,"info"),f.jaExistentes++;continue}g&&(a(`[${S}/${h.length}] ${i.name}: ${g?"Taxas abonadas":"Taxas seriam abonadas"}`,"success"),f.abonados++);const y=((V=s.dadosGerais)==null?void 0:V.category)||s.servicoCategory||s.categoria,u=((P=s.dadosGerais)==null?void 0:P.name)||"",B=y==="Anuidade"||y==="Anuidade colorida"||u.toUpperCase().includes("ANUIDADE"),b=L.docs.map(z=>z.id).join(", ");console.log("🔍 [CATEGORIA-CHECK] Categoria:",y,"| Nome:",u,"| É anuidade?",B),a(`   ↳ Serviço: "${u}" (Categoria: ${y||"não definida"}) | Contas: ${b}`,"info"),B?(a("   ↳ Verificando ativação do praticante...","info"),await Ta(i.id,i.name)):a(`   ⚠️ Serviço "${u}" não é anuidade - praticante NÃO será ativado`,"warning")}else{let m="N/A (DRY-RUN)";if(x!=="DRY-RUN"){const u={ano:2026,numero:0,tipo:"receber",tipoCobranca:"tipoCobrancaNormal",periodo:"",dataDoTermino:"",parcela:1,totalParcelas:1,descricao:s.dadosGerais.name,valor:parseFloat(s.dadosGerais.value),vencimento:"",mesCompetencia:"",categoriaId:"",categoria:"",numeroDocumento:"",dataDocumento:"",pagarViaId:"",pagarVia:"",fornecedorId:"",fornecedor:"",centroCustosId:"",centroCustos:"",vinculo:{vincularAoEvento:"",vinculoDaCobranca:"praticante",idEntidade:i.id,name:i.name,searchableName:i.name.toLowerCase(),trigam:"",local:"",graduacao:"",beneficiarioId:Q,beneficiario:"CONFEDERAÇÃO BRASILEIRA DE TAEKWONDO"},pagamento:{pago:!0,dataPagamento:ta.fromDate(Aa),multa:0,juros:0,desconto:0,totalPago:parseFloat(s.dadosGerais.value),totalRecebido:parseFloat(s.dadosGerais.value)},observacao:ra,documentos:[],contasVinculadas:[],taxaVinculadora:"",metadados:{ownerid:(G==null?void 0:G.uid)||"system",owner:(G==null?void 0:G.displayName)||"System",creation:ta.now(),date:ta.now(),successorId:"",version:0,active:!0},dadosCertificacao:{idServico:H,numero:"",dataEmissao:"",dataRecusa:"",dataCarencia:"",dataValidade:"",orgaoEmissor:"",urlFrente:"",urlVerso:"",fazerEmissao:!1,graduacao:""},servicoCategory:((U=s.dadosGerais)==null?void 0:U.category)||s.servicoCategory||"Geral",isPix:1,dependencias:{ativoFederacao:!1,ativoCBTKD:!1}},B=(X=u.pagamento)==null?void 0:X.dataPagamento;B&&((!u.vencimento||u.vencimento==="")&&(u.vencimento=B),(!u.dataDocumento||u.dataDocumento==="")&&(u.dataDocumento=B));try{const b=await La.createOnly(u);m=(b==null?void 0:b.id)||"ID não disponível",a(`[${S}/${h.length}] ${i.name}: Taxa lançada e abonada (ID: ${m})`,"success"),f.lancados++}catch(b){if(b.message&&b.message.includes("Document already exists"))a(`[${S}/${h.length}] ${i.name}
12: ⚠️ Documento já existe (cache inconsistente) - PULANDO`,"warning"),f.jaExistentes++;else throw b}}else a(`[${S}/${h.length}] ${i.name}: Taxa seria lançada e abonada (DRY-RUN)`,"info"),f.lancados++;const j=((N=s.dadosGerais)==null?void 0:N.category)||s.servicoCategory||s.categoria,g=((_=s.dadosGerais)==null?void 0:_.name)||"",y=j==="Anuidade"||j==="Anuidade colorida"||g.toUpperCase().includes("ANUIDADE");console.log("🔍 [CATEGORIA-CHECK-NEW] Categoria:",j,"| Nome:",g,"| É anuidade?",y),a(`   ↳ Serviço: "${g}" (Categoria: ${j||"não definida"}) | Conta: ${m}`,"info"),y?(a("   ↳ Verificando ativação do praticante...","info"),await Ta(i.id,i.name)):a(`   ⚠️ Serviço "${g}" não é anuidade - praticante NÃO será ativado`,"warning")}}catch(T){console.error(`Erro ao processar ${i.name}:`,T),a(`[${S}/${h.length}] ${i.name}: ERRO - ${T.message}`,"error"),f.erros++}}const w=((Date.now()-v)/1e3).toFixed(2);ia(Math.round(C/la*100)),a(`✅ Lote ${C}/${la} concluído em ${w}s`,"success")}const Ya=((Date.now()-r)/1e3).toFixed(2);a("","info"),a("═══════════════════════════════════════════","info"),a("📊 ESTATÍSTICAS FINAIS","info"),a("═══════════════════════════════════════════","info"),a(`Total de praticantes: ${f.total}`,"info"),a(`✅ Taxas lançadas: ${f.lancados}`,"success"),a(`🔄 Taxas abonadas: ${f.abonados}`,"info"),a(`ℹ️  Já existentes (pagas): ${f.jaExistentes}`,"info"),a(`❌ Erros: ${f.erros}`,f.erros>0?"error":"info"),a(`⏱️  Tempo total: ${Ya}s`,"info"),a("═══════════════════════════════════════════","info"),ca(f),x!=="DRY-RUN"&&(f.lancados>0||f.abonados>0)?(a("✅ Processo concluído com sucesso!","success"),a("📧 Emails de confirmação serão enviados automaticamente","info")):x==="DRY-RUN"&&a("ℹ️  Simulação concluída - Nenhuma alteração realizada","info")}catch(F){console.error("Erro na execução:",F),a(`❌ ERRO CRÍTICO: ${F.message}`,"error")}finally{Ea(!1),na(100),ia(100)}};return o.jsx(Ka,{maxWidth:"lg",sx:{mt:4,mb:4},children:o.jsxs(Wa,{elevation:3,sx:{p:3},children:[o.jsxs(c,{sx:{mb:3},children:[o.jsx(d,{variant:"h4",gutterBottom:!0,children:"🎉 Lançamento de Taxa - Presente Exame 1º DAN Dez/2025"}),o.jsx(d,{variant:"body2",color:"text.secondary",children:"Ferramenta para lançamento automático de taxa aos praticantes com exame de 1º DAN"}),o.jsx(d,{variant:"body2",color:"text.secondary",sx:{mt:.5},children:"• Período padrão: 01/12/2025 a 31/12/2025 | • SC/RS: 01/11/2025 a 31/12/2025"})]}),o.jsx(xa,{sx:{mb:3,bgcolor:"#e3f2fd"},children:o.jsxs(ha,{children:[o.jsx(d,{variant:"h6",gutterBottom:!0,children:"📋 Informações da Operação"}),o.jsxs(Ja,{dense:!0,children:[o.jsx(M,{children:o.jsx(Y,{primary:"Critério de Busca",secondary:`Praticantes com Registro 1DAN (${sa}) PAGO (qualquer data) + data de exame do 1º DAN`})}),o.jsx(M,{children:o.jsx(Y,{primary:"Período de Exame",secondary:"PADRÃO: 01/12/2025 a 31/12/2025 | SC e RS: 01/11/2025 a 31/12/2025"})}),o.jsx(M,{children:o.jsx(Y,{primary:"Taxa a Lançar",secondary:s?`${(ya=s.dadosGerais)==null?void 0:ya.name} - R$ ${(ba=s.dadosGerais)==null?void 0:ba.value}`:"Carregando..."})}),o.jsx(M,{children:o.jsx(Y,{primary:"Lógica de Duplicatas",secondary:"Se taxa já existe e NÃO está paga → Abonar | Se JÁ está paga → Ignorar | Se não existe → Criar e abonar"})}),o.jsx(M,{children:o.jsx(Y,{primary:"Observação",secondary:ra})}),o.jsx(M,{children:o.jsx(Y,{primary:"Data de Pagamento/Abono",secondary:"01/01/2026"})})]})]})}),o.jsx(c,{sx:{mb:3},children:o.jsxs(qa,{fullWidth:!0,children:[o.jsx(Qa,{children:"Modo de Execução"}),o.jsxs(Ha,{value:x,onChange:r=>Fa(r.target.value),disabled:k,label:"Modo de Execução",children:[o.jsx(va,{value:"DRY-RUN",children:o.jsxs(c,{sx:{display:"flex",alignItems:"center",gap:1},children:[o.jsx(Ga,{color:"info"}),o.jsxs(c,{children:[o.jsx(d,{variant:"body1",children:"DRY-RUN (Simulação)"}),o.jsx(d,{variant:"caption",color:"text.secondary",children:"Apenas simula as operações, sem alterar dados reais"})]})]})}),o.jsx(va,{value:"TESTE",children:o.jsxs(c,{sx:{display:"flex",alignItems:"center",gap:1},children:[o.jsx(Ga,{color:"warning"}),o.jsxs(c,{children:[o.jsx(d,{variant:"body1",children:"TESTE (Limitado a 10)"}),o.jsx(d,{variant:"caption",color:"text.secondary",children:"Processa apenas os primeiros 10 praticantes"})]})]})}),o.jsx(va,{value:"PRODUÇÃO",children:o.jsxs(c,{sx:{display:"flex",alignItems:"center",gap:1},children:[o.jsx(Xa,{color:"error"}),o.jsxs(c,{children:[o.jsx(d,{variant:"body1",children:"PRODUÇÃO (Completo)"}),o.jsx(d,{variant:"caption",color:"text.secondary",children:"Processa todos os praticantes e modifica dados reais"})]})]})})]})]})}),o.jsx(c,{sx:{mb:3},children:o.jsx(Za,{variant:"contained",size:"large",fullWidth:!0,startIcon:k?o.jsx(_a,{size:20,color:"inherit"}):o.jsx(ao,{}),onClick:za,disabled:k||Da,color:x==="PRODUÇÃO"?"error":x==="TESTE"?"warning":"primary",children:k?"Executando...":Da?"Carregando configuração...":`Executar em modo ${x}`})}),k&&o.jsxs(c,{sx:{mb:3},children:[o.jsxs(c,{sx:{mb:2},children:[o.jsxs(c,{sx:{display:"flex",justifyContent:"space-between",mb:1},children:[o.jsx(d,{variant:"body2",children:"Progresso Individual"}),o.jsxs(d,{variant:"body2",children:[Ca,"%"]})]}),o.jsx(Va,{variant:"determinate",value:Ca})]}),o.jsxs(c,{children:[o.jsxs(c,{sx:{display:"flex",justifyContent:"space-between",mb:1},children:[o.jsx(d,{variant:"body2",color:"success.main",children:"Progresso de Lotes"}),o.jsxs(d,{variant:"body2",color:"success.main",children:[Ra,"%"]})]}),o.jsx(Va,{variant:"determinate",value:Ra,color:"success"})]})]}),Sa.length>0&&o.jsx(xa,{sx:{mb:3},children:o.jsxs(ha,{children:[o.jsx(d,{variant:"h6",gutterBottom:!0,children:"📝 Logs de Execução"}),o.jsx(c,{sx:{maxHeight:400,overflow:"auto",bgcolor:"#f5f5f5",p:2,borderRadius:1,fontFamily:"monospace",fontSize:"0.875rem"},children:Sa.map((r,l)=>o.jsxs(c,{sx:{color:r.tipo==="error"?"error.main":r.tipo==="success"?"success.main":r.tipo==="warning"?"warning.main":"text.primary",mb:.5},children:[o.jsx(d,{variant:"caption",component:"span",sx:{color:"text.secondary",mr:1},children:r.timestamp}),r.mensagem]},l))})]})}),O&&o.jsx(xa,{sx:{bgcolor:"success.light"},children:o.jsxs(ha,{children:[o.jsxs(d,{variant:"h6",gutterBottom:!0,sx:{display:"flex",alignItems:"center",gap:1},children:[o.jsx(oo,{}),"Estatísticas Finais"]}),o.jsxs(c,{sx:{display:"flex",flexWrap:"wrap",gap:2,mt:2},children:[o.jsx(q,{label:`Total: ${O.total}`,color:"default"}),o.jsx(q,{label:`Lançados: ${O.lancados}`,color:"success"}),o.jsx(q,{label:`Abonados: ${O.abonados}`,color:"info"}),o.jsx(q,{label:`Já Existentes: ${O.jaExistentes}`,color:"default"}),O.erros>0&&o.jsx(q,{label:`Erros: ${O.erros}`,color:"error"})]})]})})]})})}export{qo as default};
13//# sourceMappingURL=LancamentoTaxa1Dan2026Page-808cf725.js.map

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.