Beispiel #1
0
        public HttpResponseMessage OppdaterMappe(MappeType mappe)
        {
            if (mappe != null)
            {
                //TODO rettigheter og lagring til DB el.l
                var url     = HttpContext.Current.Request.Url;
                var baseUri =
                    new UriBuilder(
                        url.Scheme,
                        url.Host,
                        url.Port).Uri;

                mappe.oppdatertAv            = "pålogget bruker";
                mappe.oppdatertDato          = DateTime.Now;
                mappe.oppdatertDatoSpecified = true;
                mappe.referanseOppdatertAv   = Guid.NewGuid().ToString();
                mappe.LinkList.Clear();
                mappe.RepopulateHyperMedia();

                HttpResponseMessage response = Request.CreateResponse(HttpStatusCode.OK, mappe);
                response.Headers.Location = new Uri(baseUri + "api/arkivstruktur/Mappe/" + mappe.systemID);
                return(response);
            }
            else
            {
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState));
            }
        }
Beispiel #2
0
        public MappeType InitialiserMappeIArkivdel(string Id)
        {
            var url     = HttpContext.Current.Request.Url;
            var baseUri =
                new UriBuilder(
                    url.Scheme,
                    url.Host,
                    url.Port).Uri;
            //Legger på standardtekster feks for pålogget bruker
            MappeType m = new MappeType();

            m.tittel         = "angi tittel på mappe";
            m.dokumentmedium = new DokumentmediumType()
            {
                kode = "E", beskrivelse = "Elektronisk arkiv"
            };
            m.mappetype = new MappetypeType()
            {
                kode = "BYGG", beskrivelse = "Byggesak"
            };

            m.LinkList.Clear();
            m.LinkList.Add(new LinkType("http://rel.arkivverket.no/noark5/v4/api/administrasjon/dokumentmedium", baseUri + "api/kodelister/Dokumentmedium{?$filter&$orderby&$top&$skip}"));
            m.LinkList.Add(new LinkType("http://rel.arkivverket.no/noark5/v4/api/administrasjon/mappetype", baseUri + "api/kodelister/Mappetype{?$filter&$orderby&$top&$skip}"));

            if (m == null)
            {
                throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.NotFound));
            }

            return(m);
        }
Beispiel #3
0
        public MappeType InitialiserMappeIKlasse(string Id)
        {
            var url     = HttpContext.Current.Request.Url;
            var baseUri =
                new UriBuilder(
                    url.Scheme,
                    url.Host,
                    url.Port).Uri;
            //Legger på standardtekster feks for pålogget bruker
            MappeType m = new MappeType();

            m.tittel         = "angi tittel på mappe";
            m.dokumentmedium = new DokumentmediumType()
            {
                kode = "E", beskrivelse = "Elektronisk arkiv"
            };


            //List<LinkType> linker = new List<LinkType>();
            //linker.Add(Set.addTempLink(baseUri, "api/kodelister/Dokumentmedium", Set._REL + "/administrasjon/dokumentmedium", "?$filter&$orderby&$top&$skip"));
            //linker.Add(Set.addTempLink(baseUri, "api/kodelister/Mappetype", Set._REL + "/administrasjon/mappetype", "?$filter&$orderby&$top&$skip"));


            //m._links = linker.ToArray();
            if (m == null)
            {
                throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.NotFound));
            }

            return(m);
        }
Beispiel #4
0
        // GET api/Mappe/ND 234234
        public IEnumerable <MappeType> GetMappeByTittel(string tittel)
        {
            List <MappeType> testdata = new List <MappeType>();

            MappeType m = MockNoarkDatalayer.Mapper.First();

            m.tittel = tittel;
            testdata.Add(m);
            return(testdata.AsEnumerable());
        }
Beispiel #5
0
        public MappeType AvsluttMappe(string Id)
        {
            //TODO hvis det er en saksmappe eller møtemappe skal det sendes videre til riktig kontroller? På Saksmappe settes status i tillegg, mm

            MappeType avsl = MockNoarkDatalayer.GetMappeById(Id);

            avsl.avsluttetAv            = "tor";
            avsl.avsluttetDatoSpecified = true;
            avsl.avsluttetDato          = DateTime.Now;
            return(avsl);
        }
Beispiel #6
0
        public IHttpActionResult UtvidTilSaksmappe(string id, SaksmappeType saksmappeOppdatert)
        {
            MappeType mappe = MockNoarkDatalayer.GetMappeById(id);

            if (mappe == null)
            {
                return(BadRequest("Invalid saksmappe id, saksmappe could not be found"));
            }
            if (saksmappeOppdatert.saksdato == DateTime.MinValue)
            {
                return(BadRequest("saksdato is required to upgrade mappe to saksmappe."));
            }
            if (string.IsNullOrWhiteSpace(saksmappeOppdatert.saksansvarlig))
            {
                return(BadRequest("saksansvarlig is required to upgrade mappe to saksmappe."));
            }
            if (string.IsNullOrWhiteSpace(saksmappeOppdatert.saksstatus?.kode))
            {
                return(BadRequest("saksstatus is required to upgrade mappe to saksmappe."));
            }

            var saksmappe = new SaksmappeType();

            saksmappe.saksdato      = saksmappeOppdatert.saksdato;
            saksmappe.saksansvarlig = saksmappeOppdatert.saksansvarlig;
            saksmappe.saksstatus    = saksmappeOppdatert.saksstatus;

            saksmappe.oppdatertDato          = DateTime.Now;
            saksmappe.oppdatertDatoSpecified = true;

            // copy fields from mappe
            saksmappe.tittel                 = mappe.tittel;
            saksmappe.offentligTittel        = mappe.offentligTittel;
            saksmappe.systemID               = mappe.systemID;
            saksmappe.opprettetDato          = mappe.opprettetDato;
            saksmappe.opprettetDatoSpecified = mappe.opprettetDatoSpecified;
            saksmappe.oppdatertAv            = mappe.oppdatertAv;
            saksmappe.mappeID                = mappe.mappeID;
            saksmappe.gradering              = mappe.gradering;
            saksmappe.klasse                 = mappe.klasse;
            saksmappe.merknad                = mappe.merknad;

            saksmappe.RepopulateHyperMedia();

            MockNoarkDatalayer.Saksmapper.RemoveAll(x => x.systemID == id);
            MockNoarkDatalayer.Saksmapper.Add(saksmappe);

            return(Ok(saksmappe));
        }
Beispiel #7
0
        private static MappeType OpprettMappe(string id)
        {
            MappeType m = new MappeType();

            m.tittel                 = GetRandomAdjective() + " testmappe " + id;
            m.offentligTittel        = "Dette er en offentlig tittel ****";
            m.systemID               = id;
            m.opprettetDato          = DateTime.Now;
            m.opprettetDatoSpecified = true;
            m.opprettetAv            = OpprettetAv();
            m.mappeID                = id + "/2014";
            m.gradering              = new GraderingType
            {
                graderingskode = new GraderingskodeType {
                    kode = "B"
                },
                graderingsdato = DateTime.Now
            };
            m.klasse = new KlasseType()
            {
                klasseID = "12345678901", tittel = "12345678901", klassifikasjonssystem = new KlassifikasjonssystemType {
                    klassifikasjonstype = new KlassifikasjonstypeType {
                        kode = "PNR", beskrivelse = "Personnr"
                    }
                }
            };                                                                                                                                                                                                                                        //klassifikasjonssystem? rekkefølge?
            List <MerknadType> merknader = new List <MerknadType>
            {
                new MerknadType
                {
                    merknadstype = new MerknadstypeType {
                        kode = "B"
                    },
                    merknadstekst = "test"
                }
            };

            m.merknad = merknader.ToArray();
            m.LinkList.Clear();
            m.RepopulateHyperMedia();
            return(m);
        }
Beispiel #8
0
        public HttpResponseMessage PostMappeIKlasse(MappeType mappe)
        {
            if (mappe != null)
            {
                //TODO rettigheter og lagring til DB el.l
                var url     = HttpContext.Current.Request.Url;
                var baseUri =
                    new UriBuilder(
                        url.Scheme,
                        url.Host,
                        url.Port).Uri;
                mappe.systemID = Guid.NewGuid().ToString();



                HttpResponseMessage response = Request.CreateResponse(HttpStatusCode.Created);
                response.Headers.Location = new Uri(baseUri + "api/arkivstruktur/Arkiv/" + mappe.systemID);
                return(response);
            }
            else
            {
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState));
            }
        }
Beispiel #9
0
 public HttpResponseMessage PostMappe(MappeType mappe)
 {
     return(null);
 }
Beispiel #10
0
 public MappeType OppdaterMappeFraKlasse(MappeType mappe)
 {
     return(null);
 }
Beispiel #11
0
 public MappeType OppdaterMappeFraArkivdel(MappeType mappe)
 {
     return(null);
 }
Beispiel #12
0
 public HttpResponseMessage OppdaterUndermappe(MappeType undermappe)
 {
     return(null);
 }
Beispiel #13
0
 public HttpResponseMessage PostUndermapper(MappeType undermappe)
 {
     return(null);
 }