Legado → Novo — referência rápida
D2U.NET · Legado: D2U · Review: Code-Review-Fluxos-Externos
Spec completa: C:\Projetos\D2U.NET\D2U.NET\d2u.net\Docs_New\architecture\legacy-mapping.md
Paridade com legado
| Negócio | Sim — 22 flows, ~162 actions, ~47 DWR, integrações, 43 tabelas |
| Código Java 1:1 | Não — ~796 classes → ~150–200 tipos .NET consolidados |
| Stack técnica | Não — Struts/DWR/Hibernate removidos de propósito |
| Homolog dual-MySQL (2026-07-25) | ~93% — Code-Review-Paridade-2026-07-25 · Homologacao |
Detalhe: docs_New/architecture/architecture-patterns.md
Stack
| Legado | D2U.NET |
|---|---|
| Java 8 + Struts 2 | C# / .NET 10 |
| JSP | Razor .cshtml |
| Spring DI | Program.cs DI |
| Hibernate 3 | EF Core 10 |
| DWR Ajax | Minimal APIs REST |
| Tomcat 8 | Kestrel / IIS |
Camadas
| Java package | Projeto .NET |
|---|---|
action.medtrans.* |
D2U.Web/Pages/MedTrans/ |
ajax.dwr.impl.* |
D2U.Web/Endpoints/DwrCompat/ |
database.delegate.* |
D2U.Application/Services/ |
database.entity.* |
D2U.Domain/ |
helpers.job.* |
JobService, JobWorkflowService |
task.* |
D2U.Workers/ |
report.* |
D2U.Infrastructure/Reports/ |
executor.* / runnable.* |
D2U.Workers/ vendor egress |
Endpoints críticos (UI)
| Legado | Novo |
|---|---|
login-login.do |
POST /MedTrans/Account/Login |
createjob.do |
POST /MedTrans/Jobs/Create |
chunkAssembler.do |
POST /api/mobile/chunk-assembler |
finishjob.do |
POST /MedTrans/Jobs/{id}/Workflow |
checkout.do |
/MedTrans/Account/Checkout |
Endpoints externos (integrações)
| Legado | Novo | Flow |
|---|---|---|
/dwr/* |
/api/dwr/* |
vários |
/webhook Stripe |
POST /webhooks/stripe |
05 |
postjob.do |
POST /api/integrations/http-post |
16 |
/api/audioReceiver.do |
POST /api/integrations/audio-receiver |
16 |
/SPSUpload/* |
POST /api/integrations/speechlive/upload |
21 |
/SPSDownload/* |
GET /api/integrations/speechlive/download |
21 |
/SPS/AccountCreditTransactions/* |
POST /api/integrations/speechlive/credit-transaction |
21 |
/xmlrpc/ |
POST /xmlrpc (wire protocol) + /api/integrations/xmlrpc |
17 |
postresult.do |
sunset ou webhook Google | 20 |
account-confirmrealexpayment.do |
POST /webhooks/realex |
20 |
outside-report.do |
/Outside/Report |
22 |
clientInformation*.do |
POST /api/integrations/regus/client-info |
11 |
| Mobile servlets | /api/mobile/* |
16 |
Workers legado → .NET
| Legado | Worker .NET | Flow |
|---|---|---|
MailReader |
MailReaderWorker |
09 |
AudioFilesScanner |
FtpScannerWorker |
09 |
FTPFileDownloader |
BigHandIngressWorker |
21b |
LexacomDownloader/Checker |
Lexacom workers | 10 |
SpeechLiveRetrySender |
SpeechLiveRetryWorker |
21 |
JobXMLFileTransfer |
BigHandEgressWorker |
19 |
JobFileTransferExecutor |
VendorFtpEgressService |
19 |
JobAudioFileDownloader |
BlogTalk download worker | 17 |
Código morto — não portar
Dictate2UsHttpPostListenerSpeechLiveZipUploadServiceAction(não wired)testpaypal,testftp,regusTestButton
Ver Code-Review-Fluxos-Externos
Base de dados ✅
Decisão jun/2026: PostgreSQL 16 + schema d2u (4NF).
| Motor | PostgreSQL 16 (Npgsql + EF Core) |
| Cutover | D2U.Tools.Etl — 15 core + 5 fase 2 migrators |
| Legado | MySQL 43 tabelas — referência + ETL |
Ver Base-de-Dados · Docs_New/database/postgresql-schema-design.md · cutover-etl.md
Fluxos
22 flows + FSM em docs_New/flows/ — índice Roadmap
Segurança
Padrão normativo: Seguranca · docs_New/security/project-security-standards.md
Código legado
C:\Projetos\D2U\dict2us-app\src\com\ivant\cms\