public void TestSkjerming() { //Fagsystem definerer ønsket struktur ArkivmeldingForenkletInnkommende inng = new ArkivmeldingForenkletInnkommende(); inng.sluttbrukerIdentifikator = "Fagsystemets brukerid"; inng.nyInnkommendeJournalpost = new InnkommendeJournalpost { tittel = "Tittel som skal skjermes", mottattDato = DateTime.Today, dokumentetsDato = DateTime.Today.AddDays(-2), offentlighetsvurdertDato = DateTime.Today, skjermetTittel = true, offentligTittel = "Skjermet tittel som kan offentliggjøres", skjerming = new Skjerming() { skjermingshjemmel = "Offl. § 26.1" } }; //Begrunnelse for skjerming må hjemles - Offentleglova kapittel 3 https://lovdata.no/dokument/NL/lov/2006-05-19-16/KAPITTEL_3#KAPITTEL_3 inng.nyInnkommendeJournalpost.referanseEksternNøkkel = new EksternNøkkel { fagsystem = "Fagsystem X", nøkkel = "e4712424-883c-4068-9cb7-97ac679d7232" }; inng.nyInnkommendeJournalpost.internMottaker = new List <KorrespondansepartIntern> { new KorrespondansepartIntern() { administrativEnhet = "Oppmålingsetaten", referanseAdministrativEnhet = "b631f24b-48fb-4b5c-838e-6a1f7d56fae2" } }; inng.nyInnkommendeJournalpost.mottaker = new List <Korrespondansepart> { new Korrespondansepart() { navn = "Test kommune", enhetsidentifikator = new Enhetsidentifikator() { organisasjonsnummer = "123456789" }, postadresse = new EnkelAdresse() { adresselinje1 = "Oppmålingsetaten", adresselinje2 = "Rådhusgate 1", postnr = "3801", poststed = "Bø" } } }; inng.nyInnkommendeJournalpost.avsender = new List <Korrespondansepart> { new Korrespondansepart() { navn = "Anita Avsender", skjermetKorrespondansepart = true, personid = new Personidentifikator() { personidentifikatorType = "F", personidentifikatorNr = "12345678901" }, postadresse = new EnkelAdresse() { adresselinje1 = "Gate 1", postnr = "3801", poststed = "Bø" } } }; inng.nyInnkommendeJournalpost.hoveddokument = new ForenkletDokument { tittel = "Sensitiv info", filnavn = "brev.pdf", skjermetDokument = true }; inng.nyInnkommendeJournalpost.vedlegg = new List <ForenkletDokument> { new ForenkletDokument() { tittel = "Vedlegg 1", filnavn = "vedlegg.pdf" } }; //osv... //Konverterer til arkivmelding xml var arkivmelding = Arkivintegrasjon.ConvertForenkletInnkommendeToArkivmelding(inng); string payload = Arkivintegrasjon.Serialize(arkivmelding); Assert.Pass(); }
public void TestMapperIMappe() { //Fagsystem definerer ønsket struktur ArkivmeldingForenkletInnkommende inng = new ArkivmeldingForenkletInnkommende(); inng.sluttbrukerIdentifikator = "Fagsystemets brukerid"; inng.referanseSaksmappe = new Saksmappe() { saksaar = 2018, sakssekvensnummer = 123456 }; inng.nyInnkommendeJournalpost = new InnkommendeJournalpost { tittel = "Tittel journalpost", mottattDato = DateTime.Today, dokumentetsDato = DateTime.Today.AddDays(-2), offentlighetsvurdertDato = DateTime.Today }; inng.nyInnkommendeJournalpost.referanseEksternNøkkel = new EksternNøkkel { fagsystem = "Fagsystem X", nøkkel = "e4712424-883c-4068-9cb7-97ac679d7232" }; inng.nyInnkommendeJournalpost.internMottaker = new List <KorrespondansepartIntern> { new KorrespondansepartIntern() { administrativEnhet = "Oppmålingsetaten", referanseAdministrativEnhet = "b631f24b-48fb-4b5c-838e-6a1f7d56fae2" } }; inng.nyInnkommendeJournalpost.mottaker = new List <Korrespondansepart> { new Korrespondansepart() { navn = "Test kommune", enhetsidentifikator = new Enhetsidentifikator() { organisasjonsnummer = "123456789" }, postadresse = new EnkelAdresse() { adresselinje1 = "Oppmålingsetaten", adresselinje2 = "Rådhusgate 1", postnr = "3801", poststed = "Bø" } } }; inng.nyInnkommendeJournalpost.avsender = new List <Korrespondansepart> { new Korrespondansepart() { navn = "Anita Avsender", personid = new Personidentifikator() { personidentifikatorType = "F", personidentifikatorNr = "12345678901" }, postadresse = new EnkelAdresse() { adresselinje1 = "Gate 1", postnr = "3801", poststed = "Bø" } } }; inng.nyInnkommendeJournalpost.hoveddokument = new ForenkletDokument { tittel = "Rekvisisjon av oppmålingsforretning", filnavn = "rekvisisjon.pdf" }; inng.nyInnkommendeJournalpost.vedlegg = new List <ForenkletDokument> { new ForenkletDokument() { tittel = "Vedlegg 1", filnavn = "vedlegg.pdf" } }; //Konverterer til arkivmelding xml var arkivmelding = Arkivintegrasjon.ConvertForenkletInnkommendeToArkivmelding(inng); //Legge til basismappe mappe basismappe = new mappe(); basismappe.mappeID = "2020/12345"; basismappe.systemID = "f3fd5a87-8703-4771-834f-5bba65df0223"; //basismappe.saksbehandler //ligger på saksmappe basismappe.tittel = "Hovedmappe tittel"; foreach (var item in arkivmelding.Items) { if (item is saksmappe) { ((saksmappe)item).ReferanseForeldermappe = "f3fd5a87-8703-4771-834f-5bba65df0223"; } } string payload = Arkivintegrasjon.Serialize(arkivmelding); Assert.Pass(); }
public void TestSaksmappeKlasse() { //Fagsystem definerer ønsket struktur ArkivmeldingForenkletInnkommende inng = new ArkivmeldingForenkletInnkommende(); inng.sluttbrukerIdentifikator = "Fagsystemets brukerid"; inng.referanseSaksmappe = new Saksmappe() { tittel = "Tittel mappe", klasse = new List <Klasse> { new Klasse() { klassifikasjonssystem = "GID", klasseID = "0822-1/23" }, new Klasse() { klassifikasjonssystem = "Personnummer", klasseID = "19085830948", tittel = "Hans Hansen" }, new Klasse() { klassifikasjonssystem = "KK", klasseID = "L3", tittel = "Byggesaksbehandling" }, }, referanseEksternNøkkel = new EksternNøkkel { fagsystem = "Fagsystem X", nøkkel = "752f5e31-75e0-4359-bdcb-c612ba7a04eb" } //Ny matrikkel og Ny bygning }; inng.nyInnkommendeJournalpost = new InnkommendeJournalpost { tittel = "Tittel journalpost", mottattDato = DateTime.Today, dokumentetsDato = DateTime.Today.AddDays(-2), offentlighetsvurdertDato = DateTime.Today, }; inng.nyInnkommendeJournalpost.referanseEksternNøkkel = new EksternNøkkel { fagsystem = "Fagsystem X", nøkkel = "e4712424-883c-4068-9cb7-97ac679d7232" }; inng.nyInnkommendeJournalpost.internMottaker = new List <KorrespondansepartIntern> { new KorrespondansepartIntern() { administrativEnhet = "Oppmålingsetaten", referanseAdministrativEnhet = "b631f24b-48fb-4b5c-838e-6a1f7d56fae2" } }; inng.nyInnkommendeJournalpost.mottaker = new List <Korrespondansepart> { new Korrespondansepart() { navn = "Test kommune", enhetsidentifikator = new Enhetsidentifikator() { organisasjonsnummer = "123456789" }, postadresse = new EnkelAdresse() { adresselinje1 = "Oppmålingsetaten", adresselinje2 = "Rådhusgate 1", postnr = "3801", poststed = "Bø" } } }; inng.nyInnkommendeJournalpost.avsender = new List <Korrespondansepart> { new Korrespondansepart() { navn = "Anita Avsender", personid = new Personidentifikator() { personidentifikatorType = "F", personidentifikatorNr = "12345678901" }, postadresse = new EnkelAdresse() { adresselinje1 = "Gate 1", postnr = "3801", poststed = "Bø" } } }; inng.nyInnkommendeJournalpost.hoveddokument = new ForenkletDokument { tittel = "Rekvisisjon av oppmålingsforretning", filnavn = "rekvisisjon.pdf" }; inng.nyInnkommendeJournalpost.vedlegg = new List <ForenkletDokument> { new ForenkletDokument() { tittel = "Vedlegg 1", filnavn = "vedlegg.pdf" } }; //Konverterer til arkivmelding xml var arkivmelding = Arkivintegrasjon.ConvertForenkletInnkommendeToArkivmelding(inng); string payload = Arkivintegrasjon.Serialize(arkivmelding); Assert.Pass(); }
public void TestBrukerhistorie3_2() { //Fagsystem definerer ønsket struktur ArkivmeldingForenkletInnkommende inng = new ArkivmeldingForenkletInnkommende(); inng.sluttbrukerIdentifikator = "9hs2ir"; inng.referanseSaksmappe = new Saksmappe() { referanseEksternNøkkel = new EksternNøkkel { fagsystem = "Fagsystem X", nøkkel = "e4reke" } }; inng.nyInnkommendeJournalpost = new InnkommendeJournalpost { tittel = "Startlån ettersendt vedlegg(Ref=e4reke, SakId=e4reke)", mottattDato = DateTime.Today, dokumentetsDato = DateTime.Today.AddDays(-2), offentlighetsvurdertDato = DateTime.Today }; inng.nyInnkommendeJournalpost.referanseEksternNøkkel = new EksternNøkkel { fagsystem = "Fagsystem X", nøkkel = "e4reke" }; inng.nyInnkommendeJournalpost.mottaker = new List <Korrespondansepart> { new Korrespondansepart() { navn = "Test kommune", enhetsidentifikator = new Enhetsidentifikator() { organisasjonsnummer = "123456789" }, postadresse = new EnkelAdresse() { adresselinje1 = "Startlån avd", adresselinje2 = "Rådhusgate 1", postnr = "3801", poststed = "Bø" } } }; inng.nyInnkommendeJournalpost.avsender = new List <Korrespondansepart> { new Korrespondansepart() { navn = "Anita Søker", personid = new Personidentifikator() { personidentifikatorType = "F", personidentifikatorNr = "12345678901" }, postadresse = new EnkelAdresse() { adresselinje1 = "Gate 1", postnr = "3801", poststed = "Bø" } } }; inng.nyInnkommendeJournalpost.hoveddokument = new ForenkletDokument { tittel = "Beskrivelse av ettersendte vedlegg", filnavn = "vedleggbeskrivelse.pdf" }; inng.nyInnkommendeJournalpost.vedlegg = new List <ForenkletDokument> { new ForenkletDokument() { tittel = "Vedlegg 2", filnavn = "vedlegg.pdf" } }; //Konverterer til arkivmelding xml var arkivmelding = Arkivintegrasjon.ConvertForenkletInnkommendeToArkivmelding(inng); string payload = Arkivintegrasjon.Serialize(arkivmelding); Assert.Pass(); }
private void SendInngåendeBrukerhistorie3_1() { var receiverId = appSettings.FiksIOConfig.SendToAccountId; // Receiver id as Guid var senderId = appSettings.FiksIOConfig.FiksIoAccountId; // Sender id as Guid var konto = client.Lookup(new LookupRequest("KOMM:0825", "no.geointegrasjon.arkiv.oppdatering.basis.v1", 3)); //TODO for å finne receiverId //Prosess også? var messageRequest = new MeldingRequest( mottakerKontoId: receiverId, avsenderKontoId: senderId, meldingType: "no.geointegrasjon.arkiv.oppdatering.basis.arkivmelding.v1"); // Message type as string //Se oversikt over meldingstyper på https://github.com/ks-no/fiks-io-meldingstype-katalog/tree/test/schema //Fagsystem definerer ønsket struktur var inng = new ArkivmeldingForenkletInnkommende { sluttbrukerIdentifikator = "9hs2ir", nyInnkommendeJournalpost = new InnkommendeJournalpost { tittel = "Startlån søknad(Ref=e4reke, SakId=e4reke)", mottattDato = DateTime.Today, dokumentetsDato = DateTime.Today.AddDays(-2), offentlighetsvurdertDato = DateTime.Today, referanseEksternNoekkel = new EksternNoekkel { fagsystem = "Fagsystem X", noekkel = "e4reke" }, mottaker = new List <Korrespondansepart> { new Korrespondansepart() { navn = "Test kommune", enhetsidentifikator = new Enhetsidentifikator() { organisasjonsnummer = "123456789" }, postadresse = new EnkelAdresse() { adresselinje1 = "Startlån avd", adresselinje2 = "Rådhusgate 1", postnr = "3801", poststed = "Bø" } } }, avsender = new List <Korrespondansepart> { new Korrespondansepart() { navn = "Anita Søker", personid = new Personidentifikator() { personidentifikatorType = "F", personidentifikatorNr = "12345678901" }, postadresse = new EnkelAdresse() { adresselinje1 = "Gate 1", postnr = "3801", poststed = "Bø" } } }, hoveddokument = new ForenkletDokument { tittel = "Søknad om startlån", filnavn = "søknad.pdf" }, vedlegg = new List <ForenkletDokument> { new ForenkletDokument() { tittel = "Vedlegg 1", filnavn = "vedlegg.pdf" } } } }; //Konverterer til arkivmelding xml var arkivmelding = ArkivmeldingFactory.GetArkivmelding(inng); var payload = ArkivmeldingSerializeHelper.Serialize(arkivmelding); //Lager FIKS IO melding var payloads = new List <IPayload> { new StringPayload(payload, "innkommendejournalpost.xml"), new FilePayload(Path.Combine("samples", "søknad.pdf")), new FilePayload(Path.Combine("samples", "vedlegg.pdf")) }; //Sender til FIKS IO (arkiv løsning) var msg = client.Send(messageRequest, payloads).Result; Console.WriteLine("Melding " + msg.MeldingId.ToString() + " sendt..." + msg.MeldingType + "...med 2 vedlegg"); Console.WriteLine(payload); }
private void SendInngående() { var receiverId = appSettings.FiksIOConfig.SendToAccountId; // Receiver id as Guid var senderId = appSettings.FiksIOConfig.FiksIoAccountId; // Sender id as Guid var konto = client.Lookup(new LookupRequest("KOMM:0825", "no.ks.fiks.gi.arkivintegrasjon.oppdatering.forenklet.v1", 3)); //TODO for å finne receiverId //Prosess også? //Fagsystem definerer ønsket struktur var inng = new ArkivmeldingForenkletInnkommende { sluttbrukerIdentifikator = "Fagsystemets brukerid", nyInnkommendeJournalpost = new InnkommendeJournalpost { tittel = "Bestilling av oppmålingsforretning ...", mottattDato = DateTime.Today, dokumentetsDato = DateTime.Today.AddDays(-2), offentlighetsvurdertDato = DateTime.Today, referanseEksternNoekkel = new EksternNoekkel { fagsystem = "Fagsystem X", noekkel = "e4712424-883c-4068-9cb7-97ac679d7232" }, internMottaker = new List <KorrespondansepartIntern> { new KorrespondansepartIntern() { administrativEnhet = "Oppmålingsetaten", referanseAdministrativEnhet = "b631f24b-48fb-4b5c-838e-6a1f7d56fae2" } }, mottaker = new List <Korrespondansepart> { new Korrespondansepart() { navn = "Test kommune", enhetsidentifikator = new Enhetsidentifikator() { organisasjonsnummer = "123456789" }, postadresse = new EnkelAdresse() { adresselinje1 = "Oppmålingsetaten", adresselinje2 = "Rådhusgate 1", postnr = "3801", poststed = "Bø" } } }, avsender = new List <Korrespondansepart> { new Korrespondansepart() { navn = "Anita Avsender", personid = new Personidentifikator() { personidentifikatorType = "F", personidentifikatorNr = "12345678901" }, postadresse = new EnkelAdresse() { adresselinje1 = "Gate 1", postnr = "3801", poststed = "Bø" } } }, hoveddokument = new ForenkletDokument { tittel = "Rekvisisjon av oppmålingsforretning", filnavn = "rekvisisjon.pdf" }, vedlegg = new List <ForenkletDokument> { new ForenkletDokument() { tittel = "Vedlegg 1", filnavn = "vedlegg.pdf" } }, } }; //osv... //Konverterer til arkivmelding xml var arkivmelding = ArkivmeldingFactory.GetArkivmelding(inng); var payload = ArkivmeldingSerializeHelper.Serialize(arkivmelding); //Lager FIKS IO melding var payloads = new List <IPayload> { new StringPayload(payload, "innkommendejournalpost.xml"), new FilePayload(Path.Combine("samples", "rekvisisjon.pdf")), new FilePayload(Path.Combine("samples", "vedlegg.pdf")) }; var messageRequest = new MeldingRequest( mottakerKontoId: receiverId, avsenderKontoId: senderId, meldingType: "no.ks.fiks.gi.arkivintegrasjon.oppdatering.basis.arkivmelding.v1"); // Message type as string //Se oversikt over meldingstyper på https://github.com/ks-no/fiks-io-meldingstype-katalog/tree/test/schema //Sender til FIKS IO (arkiv løsning) var msg = client.Send(messageRequest, payloads).Result; Console.WriteLine("Melding ny inngående journalpost " + msg.MeldingId.ToString() + " sendt..." + msg.MeldingType + "...med 2" + " vedlegg"); Console.WriteLine(payload); }
public static arkivmelding ConvertForenkletInnkommendeToArkivmelding(ArkivmeldingForenkletInnkommende input) { if (input.nyInnkommendeJournalpost == null) { throw new Exception("Badrequest - journalpost må være angitt"); } var arkivmld = new arkivmelding(); int antFiler = 0; saksmappe mappe = null; if (input.referanseSaksmappe != null) { mappe = ConvertSaksmappe(input.referanseSaksmappe); } if (input.nyInnkommendeJournalpost != null) { var journalpst = new journalpost(); journalpst.tittel = input.nyInnkommendeJournalpost.tittel; journalpst.journalposttype = "I"; if (input.nyInnkommendeJournalpost.mottattDato != null) { journalpst.mottattDato = input.nyInnkommendeJournalpost.mottattDato.Value; journalpst.mottattDatoSpecified = true; } if (input.nyInnkommendeJournalpost.dokumentetsDato != null) { journalpst.dokumentetsDato = input.nyInnkommendeJournalpost.dokumentetsDato.Value; journalpst.dokumentetsDatoSpecified = true; } if (input.nyInnkommendeJournalpost.offentlighetsvurdertDato != null) { journalpst.offentlighetsvurdertDato = input.nyInnkommendeJournalpost.offentlighetsvurdertDato.Value; journalpst.offentlighetsvurdertDatoSpecified = true; } journalpst.offentligTittel = input.nyInnkommendeJournalpost.offentligTittel; //skjerming if (input.nyInnkommendeJournalpost.skjermetTittel) { journalpst.skjerming = new skjerming() { skjermingshjemmel = input.nyInnkommendeJournalpost.skjerming?.skjermingshjemmel, skjermingMetadata = new List <string> { "tittel", "korrespondansepart" }.ToArray() }; } //Håndtere alle filer List <dokumentbeskrivelse> dokbliste = new List <dokumentbeskrivelse>(); if (input.nyInnkommendeJournalpost.hoveddokument != null) { var dokbesk = new dokumentbeskrivelse { dokumentstatus = "F", tilknyttetRegistreringSom = "H", tittel = input.nyInnkommendeJournalpost.hoveddokument.tittel }; if (input.nyInnkommendeJournalpost.hoveddokument.skjermetDokument) { dokbesk.skjerming = new skjerming() { skjermingshjemmel = input.nyInnkommendeJournalpost.skjerming?.skjermingshjemmel, skjermingDokument = "Hele" }; } var dok = new dokumentobjekt { referanseDokumentfil = input.nyInnkommendeJournalpost.hoveddokument.filnavn }; List <dokumentobjekt> dokliste = new List <dokumentobjekt>(); dokliste.Add(dok); dokbesk.dokumentobjekt = dokliste.ToArray(); dokbliste.Add(dokbesk); antFiler++; } foreach (var item in input.nyInnkommendeJournalpost.vedlegg) { var dokbesk = new dokumentbeskrivelse(); dokbesk.dokumentstatus = "F"; dokbesk.tilknyttetRegistreringSom = "V"; dokbesk.tittel = item.tittel; var dok = new dokumentobjekt(); dok.referanseDokumentfil = item.filnavn; List <dokumentobjekt> dokliste = new List <dokumentobjekt>(); dokliste.Add(dok); dokbesk.dokumentobjekt = dokliste.ToArray(); dokbliste.Add(dokbesk); antFiler++; } journalpst.dokumentbeskrivelse = dokbliste.ToArray(); //Korrespondanseparter List <korrespondansepart> partsListe = new List <korrespondansepart>(); foreach (var mottaker in input.nyInnkommendeJournalpost.mottaker) { korrespondansepart korrpart = KorrespondansepartToArkivPart(_mottakerKode, mottaker); partsListe.Add(korrpart); } foreach (var avsender in input.nyInnkommendeJournalpost.avsender) { korrespondansepart korrpart = KorrespondansepartToArkivPart(_avsenderKode, avsender); partsListe.Add(korrpart); } foreach (var internMottaker in input.nyInnkommendeJournalpost.internMottaker) { korrespondansepart korrpart = InternKorrespondansepartToArkivPart(_internmottakerKode, internMottaker); partsListe.Add(korrpart); } journalpst.korrespondansepart = partsListe.ToArray(); List <journalpost> jliste = new List <journalpost> { journalpst }; if (mappe != null) { var mappeliste = new List <saksmappe>(); mappe.Items = jliste.ToArray(); mappeliste.Add(mappe); arkivmld.Items = mappeliste.ToArray(); } else { arkivmld.Items = jliste.ToArray(); } } arkivmld.antallFiler = antFiler; arkivmld.system = input.nyInnkommendeJournalpost.referanseEksternNøkkel.fagsystem; arkivmld.meldingId = input.nyInnkommendeJournalpost.referanseEksternNøkkel.nøkkel; arkivmld.tidspunkt = DateTime.Now; return(arkivmld); }