예제 #1
0
        internal async Task <HuiswerkList> Read(int amount = 5)
        {
            HuiswerkList result = new HuiswerkList(5);

            try
            {
                await OpenAsync();

                MySqlCommand command = new MySqlCommand
                {
                    Connection  = this._connection,
                    CommandText =
                        $"SELECT * FROM `huiswerk` WHERE deadline > CURDATE() AND finished = 0 ORDER BY `deadline` ASC LIMIT 0,  ?amount"
                };

                // Add value to parameter
                command.Parameters.AddWithValue("?amount", amount);

                // Prepare query.
                await command.PrepareAsync();

                MySqlDataReader reader = command.ExecuteReader();
                int             i      = 0;
                while (await reader.ReadAsync())
                {
                    Huiswerk huiswerk = new Huiswerk
                    {
                        ID           = reader["hw_id"],
                        Subject      = reader["subject"],
                        Description  = reader["description"],
                        Deadline     = reader["deadline"],
                        Author       = reader["author"],
                        AuthorGroup  = reader["author_group"],
                        AuthorAvatar = reader["author_avatar"],
                        CreationDate = reader["creation_date"],
                        Finished     = reader["finished"],
                        FinishedDate = reader["finished_date"],
                    };
                    result[i] = huiswerk;

                    Console.WriteLine($"huiswerk: {huiswerk.ID}");
                    Console.WriteLine($"result: {result[i].ID}");
                    i++;
                }

                reader.Close();
                this._connection.Close();
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
            }

            return(result);
        }
예제 #2
0
        public async Task SeeHomework(int amount = 5)
        {
            HuiswerkList hw = await Services.Database.Read();

            foreach (Huiswerk huiswerk in hw)
            {
                EmbedBuilder builder = new EmbedBuilder()
                {
                    //Title = "Opdrachten",
                    ThumbnailUrl = (string)huiswerk.AuthorAvatar,
                    Fields       =
                    {
                        new EmbedFieldBuilder
                        {
                            Name     = "Vak",
                            Value    = huiswerk.Subject,
                            IsInline = true
                        },
                        new EmbedFieldBuilder
                        {
                            Name     = "Deadline",
                            Value    = huiswerk.Deadline,
                            IsInline = true
                        },
                        new EmbedFieldBuilder
                        {
                            Name     = "Made By",
                            Value    = huiswerk.Author,
                            IsInline = true
                        },
                        new EmbedFieldBuilder
                        {
                            Name     = "Description",
                            Value    = huiswerk.Description,
                            IsInline = false
                        },
                    },
                    Color = new Color(0),
                };
                await this.Context.Channel.SendMessageAsync("", false, builder.Build());
            }
        }