Ejemplo n.º 1
0
        //[System.Web.Http.Authorize(Roles = AuthConfig.RegisterProviderRole)]
        //[ApiExplorerSettings(IgnoreApi = true)]
        //[System.Web.Http.Route("api/codelist/update/kommunereform-2020")]
        //[System.Web.Http.HttpGet]
        //public IHttpActionResult UpdateMunicipalities()
        //{
        //    try
        //    {
        //        new UpdateCodelistService(db).UpdateMunicipalitiesAllStatus();
        //        new UpdateCodelistService(db).UpdateCountiesAllStatus();
        //        new UpdateCodelistService(db).UpdateMunicipalities();
        //        try
        //        {
        //            new UpdateCodelistService(db).UpdateOrganizationsAll();
        //        }
        //        catch (Exception ex)
        //        {
        //            Log.Error(ex);
        //        }

        //        new UpdateCodelistService(db).UpdateCenterPoint();
        //        new UpdateCodelistService(db).UpdateBbox();
        //    }
        //    catch (Exception ex){
        //        Log.Error(ex);
        //    }

        //    return Ok();
        //}

        //[System.Web.Http.Authorize(Roles = AuthConfig.RegisterProviderRole)]
        //[ApiExplorerSettings(IgnoreApi = true)]
        //[System.Web.Http.Route("api/codelist/update/kommunereform-gyldig-dato")]
        //[System.Web.Http.HttpGet]
        //public IHttpActionResult UpdateMunicipalitiesValidDate()
        //{
        //    try
        //    {
        //        new UpdateCodelistService(db).UpdateMunicipalitiesAllValidDate();
        //        new UpdateCodelistService(db).UpdateCountiesAllValidDate();
        //    }
        //    catch (Exception ex)
        //    {
        //        Log.Error(ex);
        //    }

        //    return Ok();
        //}

        /// <summary>
        /// Get all Geolett
        /// </summary>
        /// <remarks>
        /// Med GeoLett skal vi forbedre datagrunnlaget for plan- og byggesaksprosessen. Det gjør vi ved å fremme innovasjon av metodebruk og digitale verktøy, legge til rette for effektiv deling av informasjon og støtte kommuner og sektormyndigheter for å forbedre kvaliteten på grunndata.
        /// </remarks>
        /// <returns></returns>
        //[ResponseType(typeof(GeoLett))]
        //[System.Web.Http.Route("api/geolett")]
        //[System.Web.Http.HttpGet]
        //[SwaggerResponseExample(HttpStatusCode.OK, typeof(GeoLettModelExample))]
        //public IHttpActionResult GetGeoLettRegister()
        //{
        //    try
        //    {
        //        var geolettRegister = new GeoLettService().Get();
        //        return Ok(geolettRegister);
        //    }
        //    catch (Exception ex)
        //    {
        //        Log.Error(ex);
        //    }

        //    return Ok();
        //}


        // **** HJELPEMETODER ****

        private Registeritem ConvertCurrentAndVersions(Models.Register register, string itemSystemId = null)
        {
            Registeritem currentVersion = null;
            var          versjoner      = _registerItemService.GetAllVersionsOfRegisterItem(register, itemSystemId);

            if (versjoner != null)
            {
                foreach (var v in versjoner)
                {
                    if (v.versioning.currentVersion == v.systemId)
                    {
                        currentVersion = ConvertRegisterItem(v);

                        foreach (var ve in versjoner)
                        {
                            if (v.versionNumber != ve.versionNumber)
                            {
                                currentVersion.versions.Add(ConvertRegisterItem(ve));
                            }
                        }
                    }
                }
            }
            return(currentVersion);
        }
        private string GetContent(Registeritem u)
        {
            var content = u.description;

            if (u.itemclass == "Alert")
            {
                if (!string.IsNullOrEmpty(content))
                {
                    content = content + "<br>";
                }

                if (!string.IsNullOrEmpty(u.owner))
                {
                    content = content + "Dataeier: " + u.owner + "<br>";
                }

                if (!string.IsNullOrEmpty(u.AlertType))
                {
                    content = content + "Type varsel: " + u.AlertType + "<br>";
                }

                if (!string.IsNullOrEmpty(u.ServiceType))
                {
                    content = content + "Tjenestetype: " + u.ServiceType + "<br>";
                }

                if (u.AlertDate != null)
                {
                    content = content + "Siste varsel: " + u.AlertDate.ToString("dd.MM.yyyy") + "<br>";
                }

                if (u.EffectiveDate != null)
                {
                    content = content + "Ikrafttredelse: " + u.EffectiveDate.ToString("dd.MM.yyyy") + "<br>";
                }

                if (!string.IsNullOrEmpty(u.Note))
                {
                    content = content + "Varselet gjelder: " + u.Note + "<br>";
                }

                if (!string.IsNullOrEmpty(u.id))
                {
                    content = content + "Link til tjenestevarsel: " + "<a href='" + u.id + "'>" + u.label + "</a><br>";
                }

                if (!string.IsNullOrEmpty(u.MetadataUrl))
                {
                    content = content + "Link til tjenestebeskrivelse: " + "<a href='" + u.MetadataUrl + "'>" + u.MetadataUrl + "</a>";
                }
            }

            return(content);
        }
Ejemplo n.º 3
0
        private Registeritem ConvertRegisterItem(RegisterItemV2 item, FilterParameters filter = null)
        {
            string registerId = System.Web.Configuration.WebConfigurationManager.AppSettings["RegistryUrl"];  //uri.Scheme + "://" + uri.Authority;

            if (registerId.Substring(registerId.Length - 1, 1) == "/")
            {
                registerId = registerId.Remove(registerId.Length - 1);
            }
            var tmp = new Registeritem(item, registerId, filter);

            return(tmp);
        }
Ejemplo n.º 4
0
        private object GetCodespace(Registeritem register)
        {
            var    idArray = register.id.Split('/');
            string id      = "";

            for (int i = 0; i < idArray.Length - 2; i++)
            {
                id = id + idArray[i];
                if (i < idArray.Length - 3)
                {
                    id = id + "/";
                }
            }

            return(id);
        }
Ejemplo n.º 5
0
        private string GetGmlId(Registeritem register)
        {
            var idArray = register.id.Split('/');

            if (idArray.Length > 4)
            {
                var gmlId = idArray[4];
                if (!string.IsNullOrEmpty(register.codevalue))
                {
                    gmlId = gmlId + "." + register.codevalue;
                }

                return(gmlId);
            }
            else if (!string.IsNullOrEmpty(register.codevalue))
            {
                return(register.codevalue);
            }

            return(register.id);
        }
Ejemplo n.º 6
0
        private static XElement GetValidTime(Registeritem register, XNamespace gmlNs)
        {
            XElement vaildTime = null;

            if (register.ValidFrom.HasValue || register.ValidTo.HasValue)
            {
                XElement beginPosition = null;
                XElement endPosition   = null;

                if (register.ValidFrom.HasValue)
                {
                    beginPosition = new XElement("beginPosition", register.ValidFrom.Value);
                }

                if (register.ValidTo.HasValue)
                {
                    endPosition = new XElement("endPosition", register.ValidTo.Value);
                }

                vaildTime = new XElement("validTime", new XElement("TimePeriod", new XAttribute(gmlNs + "id", "timeperiod_" + register.uuid), beginPosition, endPosition));
            }

            return(vaildTime);
        }