示例#1
0
            public static ExcelPost Create(PostIMatch postIMatch)
            {
                if (postIMatch.Post == null)
                {
                    throw new InvalidOperationException("Kan ikke eksportere uten at postIMatch.Post er satt. Bruk Include(...)");
                }

                var post = postIMatch.Post;

                var excelPost = new ExcelPost
                {
                    PostId            = post.PostId,
                    Navn              = post.Navn,
                    Omraade           = post.Omraade,
                    Beskrivelse       = post.Beskrivelse,
                    Image             = post.Image,
                    Latitude          = post.Latitude,
                    Longitude         = post.Longitude,
                    Altitude          = post.Altitude,
                    DefaultPoengArray = post.DefaultPoengArray,
                    HemmeligKode      = post.HemmeligKode,
                    SynligFra         = postIMatch.SynligFraTid,
                    SynligTil         = postIMatch.SynligTilTid
                };

                return(excelPost);
            }
示例#2
0
        private List <ExcelPost> LesFra(ExcelWorksheet excelWorksheet, MatchImport.ExcelMatch excelMatch)
        {
            var poster = new Dictionary <string, ExcelPost>();

            var sheet = excelWorksheet;

            for (int row = 2; row <= sheet.Dimension.End.Row; row++)
            {
                var post = new ExcelPost
                {
                    PostId            = Guid.NewGuid(),
                    Navn              = sheet.GetValue(ExcelSheet.Poster.Navn, row),
                    Beskrivelse       = sheet.GetValue(ExcelSheet.Poster.Beskrivelse, row),
                    HemmeligKode      = sheet.GetValue(ExcelSheet.Poster.HemmeligKode, row),
                    Omraade           = sheet.GetValue(ExcelSheet.Poster.Område, row),
                    Latitude          = double.Parse(sheet.GetValue <string>(ExcelSheet.Poster.Latitude, row)),
                    Longitude         = double.Parse(sheet.GetValue <string>(ExcelSheet.Poster.Longitude, row)),
                    Image             = sheet.GetValue <string>(ExcelSheet.Poster.BildeUrl, row),
                    DefaultPoengArray = sheet.GetValue <string>(ExcelSheet.Poster.PoengFordeling, row),
                };

                var altitude = sheet.GetValue <string>(ExcelSheet.Poster.Altitude, row);

                if (!string.IsNullOrEmpty(altitude))
                {
                    post.Altitude = double.Parse(altitude);
                }

                if (string.IsNullOrEmpty(post.DefaultPoengArray) && !string.IsNullOrEmpty(excelMatch.DefaultPoengFordeling))
                {
                    post.DefaultPoengArray = excelMatch.DefaultPoengFordeling;
                }

                var synligFra = sheet.GetValue <string>(ExcelSheet.Poster.SynligFra, row);
                var synligTil = sheet.GetValue <string>(ExcelSheet.Poster.SynligTil, row);

                if (!string.IsNullOrEmpty(synligFra))
                {
                    post.SynligFra = DateTime.Parse(synligFra);
                }

                if (!string.IsNullOrEmpty(synligTil))
                {
                    post.SynligTil = DateTime.Parse(synligTil);
                }

                // Siste rad gjelder hvis duplikater
                var nøkkel = LagNøkkel(post);
                if (poster.ContainsKey(nøkkel))
                {
                    poster.Remove(nøkkel);
                }

                poster.Add(nøkkel, post);
            }

            return(poster.Values.ToList());
        }
示例#3
0
        private List<ExcelPost> LesFra(ExcelWorksheet excelWorksheet, MatchImport.ExcelMatch excelMatch)
        {
            var poster = new Dictionary<string, ExcelPost>();

            var sheet = excelWorksheet;

            for (int row = 2; row <= sheet.Dimension.End.Row; row++)
            {
                var post = new ExcelPost
                {
                    PostId = Guid.NewGuid(),
                    Navn = sheet.GetValue(ExcelSheet.Poster.Navn, row),
                    Beskrivelse = sheet.GetValue(ExcelSheet.Poster.Beskrivelse, row),
                    HemmeligKode = sheet.GetValue(ExcelSheet.Poster.HemmeligKode, row),
                    Omraade = sheet.GetValue(ExcelSheet.Poster.Område, row),
                    Latitude = double.Parse(sheet.GetValue<string>(ExcelSheet.Poster.Latitude, row)),
                    Longitude = double.Parse(sheet.GetValue<string>(ExcelSheet.Poster.Longitude, row)),
                    Image = sheet.GetValue<string>(ExcelSheet.Poster.BildeUrl, row),
                    DefaultPoengArray = sheet.GetValue<string>(ExcelSheet.Poster.PoengFordeling, row),
                };

                var altitude = sheet.GetValue<string>(ExcelSheet.Poster.Altitude, row);

                if (!string.IsNullOrEmpty(altitude))
                    post.Altitude = double.Parse(altitude);

                if (string.IsNullOrEmpty(post.DefaultPoengArray) && !string.IsNullOrEmpty(excelMatch.DefaultPoengFordeling))
                    post.DefaultPoengArray = excelMatch.DefaultPoengFordeling;

                var synligFra = sheet.GetValue<string>(ExcelSheet.Poster.SynligFra, row);
                var synligTil = sheet.GetValue<string>(ExcelSheet.Poster.SynligTil, row);

                if (!string.IsNullOrEmpty(synligFra))
                    post.SynligFra = DateTime.Parse(synligFra);

                if (!string.IsNullOrEmpty(synligTil))
                    post.SynligTil = DateTime.Parse(synligTil);

                // Siste rad gjelder hvis duplikater
                var nøkkel = LagNøkkel(post);
                if (poster.ContainsKey(nøkkel))
                    poster.Remove(nøkkel);

                poster.Add(nøkkel, post);
            }

            return poster.Values.ToList();
        }
示例#4
0
 private string LagNøkkel(ExcelPost post)
 {
     return string.Join("@#¤", post.Navn, post.Omraade);
 }
示例#5
0
            public static ExcelPost Create(PostIMatch postIMatch)
            {
                if(postIMatch.Post == null)
                    throw new InvalidOperationException("Kan ikke eksportere uten at postIMatch.Post er satt. Bruk Include(...)");

                var post = postIMatch.Post;

                var excelPost = new ExcelPost
                {
                    PostId = post.PostId,
                    Navn = post.Navn,
                    Omraade = post.Omraade,
                    Beskrivelse = post.Beskrivelse,
                    Image = post.Image,
                    Latitude = post.Latitude,
                    Longitude = post.Longitude,
                    Altitude = post.Altitude,
                    DefaultPoengArray = post.DefaultPoengArray,
                    HemmeligKode = post.HemmeligKode,
                    SynligFra = postIMatch.SynligFraTid,
                    SynligTil = postIMatch.SynligTilTid
                };

                return excelPost;
            }
示例#6
0
 private string LagNøkkel(ExcelPost post)
 {
     return(string.Join("@#¤", post.Navn, post.Omraade));
 }