示例#1
0
    public void PrintList(List <WikipediaSong> songList, string worksheetName)
    {
        DataTable table = new DataTable(worksheetName);

        table.Columns.Add(GetColumnForSongProperty(nameof(WikipediaSong.Artist)));
        table.Columns.Add(GetColumnForSongProperty(nameof(WikipediaSong.Song)));
        table.Columns.Add(GetColumnForSongProperty(nameof(WikipediaSong.Year)));
        table.Columns.Add(GetColumnForSongProperty(nameof(WikipediaSong.YouTubeName)));
        table.Columns.Add(GetColumnForSongProperty(nameof(WikipediaSong.YouTubeViews)));
        table.Columns.Add(GetColumnForSongProperty(nameof(WikipediaSong.YouTubeId)));

        foreach (WikipediaSong song in songList)
        {
            object[] values = new List <object>()
            {
                song.Artist,
                song.Song,
                song.Year,
                song.YouTubeName,
                song.YouTubeViews,
                $"https://www.youtube.com/watch?v={song.YouTubeId}"
            }.ToArray();
            table.Rows.Add(values);
        }

        using (Package = new ExcelPackage())
        {
            AddTableToWorksheet(table);
            Package.SaveAs(new FileInfo($@"Music_{ExtensionsAndStaticFunctions.GetDateTimeNowString()}.xlsx"));
        }
    }
        private void WriteChampJsonFile(List <Champion> champs)
        {
            string fullFileName = $"{LeagueAPISettingsFile.APIResultsPath}\\{$@"champs_{ExtensionsAndStaticFunctions.GetDateTimeNowString()}.txt"}";

            File.WriteAllText(fullFileName, JsonConvert.SerializeObject(champs, Formatting.None));
        }
        private void WriteItemSetJsonFile(List <Champion> champs)
        {
            // put champs file here
            ItemSet set = new ItemSet
            {
                title          = $"ItemSet_{ExtensionsAndStaticFunctions.GetDateTimeNowString()}",
                associatedMaps = new List <int>()
                {
                    11, 12
                },
                associatedChampions = new List <object>(),
                blocks = new List <ItemSet_Block>()
            };
            ItemSet_Block mythics50PlusWR = new ItemSet_Block()
            {
                type = "Mythics 50+ WR", items = new List <Block_Item>()
            };

            set.blocks.Add(mythics50PlusWR);
            ItemSet_Block mythics50MinusWR = new ItemSet_Block()
            {
                type = "Mythics 50- WR", items = new List <Block_Item>()
            };

            set.blocks.Add(mythics50MinusWR);
            ItemSet_Block legendaries50PlusWR = new ItemSet_Block()
            {
                type = "Legendaries 50+ WR", items = new List <Block_Item>()
            };

            set.blocks.Add(legendaries50PlusWR);
            ItemSet_Block legendaries50MinusWR = new ItemSet_Block()
            {
                type = "Legendaries 50- WR", items = new List <Block_Item>()
            };

            set.blocks.Add(legendaries50MinusWR);

            DataTable stats = GetItemStatsFromChamps(champs);
            List <ItemSet_ItemEntry> itemEntries = new List <ItemSet_ItemEntry>();

            ItemCollection itemCollection = LeagueAPISettingsFile.GetItemCollection();


            for (int i = 0; i < stats.Rows.Count; i++)
            {
                DataRow row = stats.Rows[i];
                int     id  = (int)row[10];
                if (!itemCollection.data.ContainsKey(id))
                {
                    continue;
                }

                ItemSet_ItemEntry itemEntry = new ItemSet_ItemEntry()
                {
                    id = id, name = (string)row[0], winRate = (double)row[5], moreThan2000G = (bool)row[7]
                };
                if (!itemEntry.moreThan2000G)
                {
                    continue;
                }

                itemEntries.Add(itemEntry);
            }

            itemEntries = itemEntries.OrderByDescending(i => i.winRate).ToList();
            foreach (var itemEntry in itemEntries)
            {
                Block_Item item = new Block_Item()
                {
                    id = itemEntry.id.ToString(), count = 1
                };
                if (itemEntry.winRate > 50)
                {
                    if (Globals.MythicItems.Contains((ItemEnum)itemEntry.id))
                    {
                        mythics50PlusWR.items.Add(item);
                    }
                    else
                    {
                        legendaries50PlusWR.items.Add(item);
                    }
                }
                else
                {
                    if (Globals.MythicItems.Contains((ItemEnum)itemEntry.id))
                    {
                        mythics50MinusWR.items.Add(item);
                    }
                    else
                    {
                        legendaries50MinusWR.items.Add(item);
                    }
                }
            }
            File.WriteAllText($"{LeagueAPISettingsFile.APIResultsPath}\\{$@"itemSet_{ExtensionsAndStaticFunctions.GetDateTimeNowString()}.json"}", JsonConvert.SerializeObject(set, Formatting.None));
        }
 public bool PrintStatsTables(IEnumerable <DataTable> statTables, string resultsPath, string descriptor = null)
 {
     if (!Directory.Exists(resultsPath))
     {
         Directory.CreateDirectory(resultsPath);
     }
     descriptor = descriptor == null ? "All" : descriptor;
     using (Package = new ExcelPackage())
     {
         foreach (DataTable statTable in statTables)
         {
             AddTableToWorksheet(statTable);
         }
         Package.SaveAs(new FileInfo(Path.Combine(resultsPath, $"Stats{descriptor}_{ExtensionsAndStaticFunctions.GetDateTimeNowString()}.xlsx")));
     }
     return(true);
 }
示例#5
0
        public async Task <string> CreatePlaylist()
        {
            HttpRequestMessage request = await CreateSpotifyRequestMessage(HttpMethod.Post, $"https://api.spotify.com/v1/users/{Credentials.UserId}/playlists");

            string json = "{" + $"\"name\": \"Top Ten All\",\n\"public\": false,\n\"description\": \"{ExtensionsAndStaticFunctions.GetDateTimeNowString()}\"\n" + "}";

            AddJsonAsBodyDataToRequest(json, request);
            string result = await GetResponseContent(request);

            JObject jo = JObject.Parse(result);

            return((string)jo["id"]);
        }