Det må etableres at API-endepunkt med operasjoner for å kunne migrere aktuelle data fra Altinn 2 Correpondence til Altinn (3) Correpondence.
Dette vil være en forenklet versjon av Correpondence-controller, med tilsvarende Auth* oppsett som andre Legacy-endepunkt, da det vil kalles av Migreringskomponenten som lages i #123
Et forenklet "CreateCorrespondence"-kall
CreateCorrespondence skal ikke opprette nye varslinger, kun ta med varslingslogg.
Migrert element må inneholde referanse til gammelt A2-element sin CorrespondenceID
TODO: må detaljeres litt mer konkrete data/felter som skal migreres.
Altinn 3 API for migrering:
InitializeCorrespondence
Kall som initialiserer melding, et objekt som inneholder
a. InitializeCorrespondenceExt fra vanlig bruk
b. Altinn 2 CorrespondenceId referanse
c. Muligens Notificationhistory?
d. EventHistorikk for Correspondence. (CorrespondenceStatuses)
Gjenbruk av kode bør gjennomgås for å verifisere at vi ikke gjør kall til EventBus og lignende.
Returnerer en liste med AttachmentStatuser med AttachmentId-er for opplasting, eller en detaljert feilmelding.
GetAttachmentOverview
Returnerer status objekt med liste av attachment som tilhører en melding og deres statuser. Skal brukes dersom overførsel er blitt avbrutt under opplasting av attachments.
UploadAttachment
Skal brukes for å laste opp meldingsvedlegg. UploadAttachment burde ha en ekstra variabel som forteller Altinn 3 at dette er siste attachment og at melding derfor kan publiseres. Dette bør gjøres eksplisitt siden Altinn 2 alltid vil måtte vite status på melding/attachment før den begynner opplasting, istedet for at vi da i tillegg vil måtte gjøre ekstra sjekker av attatchment statuser internt på Altinn 3 etter hvert eneste attachment upload. (Eller la FinalizeMigration være et eget kall)
FinalizeMigration
Enten ha dette som et eget kall, eller la UploadAttachment ha med en variabel for å si ifra om dette er siste attachment.
Dette virker mindre hensiktsmessig. Finalisering av migrering burde fungere på 2 måter:
a. Initialisering av Correspondence uten attachment betyr at melding blir Finalisert umiddelbart.
b. Initialisering av Correspondence med attachment betyr at melding blir Finalisert når siste attachment uploades. Dette bør derfor gjøres som del av UploadAttachment kallet istedte for å ha et eget kall for det.
MigrationPublishedToDialogPorten
Det må være funksjonalitet som gjør det klart at en melding er Migrert til Altinn 3 Correspondence, og at den i tillegg er Migrert til DialogPorten i tillegg.
### Tasks
- [ ] https://github.com/Altinn/altinn-correspondence/issues/248
- [ ] https://github.com/Altinn/altinn-correspondence/issues/249
- [ ] https://github.com/Altinn/altinn-correspondence/issues/250
- [ ] https://github.com/Altinn/altinn-correspondence/issues/251
- [ ] Legge på Altinn2ArchiveUnitReference som mulig ExternalReference
- [ ] Migrering av attachments burde ikke malware scannes. Alle legges på NoScan filområdet?
- [ ] Resultat av opplasting er status objekt. Teknisk sett ingen grunn til det.
- [x] Er GetAttachmentOverview godt nok til å mappe Attachments fra Altinn 2 til Altinn 3?
Det må etableres at API-endepunkt med operasjoner for å kunne migrere aktuelle data fra Altinn 2 Correpondence til Altinn (3) Correpondence. Dette vil være en forenklet versjon av Correpondence-controller, med tilsvarende Auth* oppsett som andre Legacy-endepunkt, da det vil kalles av Migreringskomponenten som lages i #123
TODO: må detaljeres litt mer konkrete data/felter som skal migreres.
Altinn 3 API for migrering:
InitializeCorrespondence Kall som initialiserer melding, et objekt som inneholder a. InitializeCorrespondenceExt fra vanlig bruk b. Altinn 2 CorrespondenceId referanse c. Muligens Notificationhistory? d. EventHistorikk for Correspondence. (CorrespondenceStatuses) Gjenbruk av kode bør gjennomgås for å verifisere at vi ikke gjør kall til EventBus og lignende. Returnerer en liste med AttachmentStatuser med AttachmentId-er for opplasting, eller en detaljert feilmelding.
GetAttachmentOverview Returnerer status objekt med liste av attachment som tilhører en melding og deres statuser. Skal brukes dersom overførsel er blitt avbrutt under opplasting av attachments.
UploadAttachment Skal brukes for å laste opp meldingsvedlegg. UploadAttachment burde ha en ekstra variabel som forteller Altinn 3 at dette er siste attachment og at melding derfor kan publiseres. Dette bør gjøres eksplisitt siden Altinn 2 alltid vil måtte vite status på melding/attachment før den begynner opplasting, istedet for at vi da i tillegg vil måtte gjøre ekstra sjekker av attatchment statuser internt på Altinn 3 etter hvert eneste attachment upload. (Eller la FinalizeMigration være et eget kall)
FinalizeMigration Enten ha dette som et eget kall, eller la UploadAttachment ha med en variabel for å si ifra om dette er siste attachment. Dette virker mindre hensiktsmessig. Finalisering av migrering burde fungere på 2 måter: a. Initialisering av Correspondence uten attachment betyr at melding blir Finalisert umiddelbart. b. Initialisering av Correspondence med attachment betyr at melding blir Finalisert når siste attachment uploades. Dette bør derfor gjøres som del av UploadAttachment kallet istedte for å ha et eget kall for det.
MigrationPublishedToDialogPorten Det må være funksjonalitet som gjør det klart at en melding er Migrert til Altinn 3 Correspondence, og at den i tillegg er Migrert til DialogPorten i tillegg.