Added .todo commands and added toned down version of .fairplay

This commit is contained in:
Kwoth
2024-04-25 22:33:12 +00:00
parent b34f383649
commit 6bc8e4b7d2
30 changed files with 12293 additions and 148 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,77 @@
using System;
using Microsoft.EntityFrameworkCore.Metadata;
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace NadekoBot.Db.Migrations.Mysql
{
/// <inheritdoc />
public partial class todolist : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.CreateTable(
name: "todosarchive",
columns: table => new
{
id = table.Column<int>(type: "int", nullable: false)
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn),
userid = table.Column<ulong>(type: "bigint unsigned", nullable: false),
name = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4")
},
constraints: table =>
{
table.PrimaryKey("pk_todosarchive", x => x.id);
})
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.CreateTable(
name: "todos",
columns: table => new
{
id = table.Column<int>(type: "int", nullable: false)
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn),
userid = table.Column<ulong>(type: "bigint unsigned", nullable: false),
todo = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4"),
dateadded = table.Column<DateTime>(type: "datetime(6)", nullable: false),
isdone = table.Column<bool>(type: "tinyint(1)", nullable: false),
archiveid = table.Column<int>(type: "int", nullable: true)
},
constraints: table =>
{
table.PrimaryKey("pk_todos", x => x.id);
table.ForeignKey(
name: "fk_todos_todosarchive_archiveid",
column: x => x.archiveid,
principalTable: "todosarchive",
principalColumn: "id",
onDelete: ReferentialAction.Cascade);
})
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.CreateIndex(
name: "ix_todos_archiveid",
table: "todos",
column: "archiveid");
migrationBuilder.CreateIndex(
name: "ix_todos_userid",
table: "todos",
column: "userid");
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropTable(
name: "todos");
migrationBuilder.DropTable(
name: "todosarchive");
}
}
}

View File

@@ -2800,6 +2800,30 @@ namespace NadekoBot.Db.Migrations.Mysql
b.ToTable("xpsettings", (string)null);
});
modelBuilder.Entity("NadekoBot.Db.Models.ArchivedTodoListModel", b =>
{
b.Property<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("int")
.HasColumnName("id");
MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property<int>("Id"));
b.Property<string>("Name")
.IsRequired()
.HasColumnType("longtext")
.HasColumnName("name");
b.Property<ulong>("UserId")
.HasColumnType("bigint unsigned")
.HasColumnName("userid");
b.HasKey("Id")
.HasName("pk_todosarchive");
b.ToTable("todosarchive", (string)null);
});
modelBuilder.Entity("NadekoBot.Db.Models.AutoPublishChannel", b =>
{
b.Property<int>("Id")
@@ -3246,6 +3270,48 @@ namespace NadekoBot.Db.Migrations.Mysql
b.ToTable("streamonlinemessages", (string)null);
});
modelBuilder.Entity("NadekoBot.Db.Models.TodoModel", b =>
{
b.Property<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("int")
.HasColumnName("id");
MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property<int>("Id"));
b.Property<int?>("ArchiveId")
.HasColumnType("int")
.HasColumnName("archiveid");
b.Property<DateTime>("DateAdded")
.HasColumnType("datetime(6)")
.HasColumnName("dateadded");
b.Property<bool>("IsDone")
.HasColumnType("tinyint(1)")
.HasColumnName("isdone");
b.Property<string>("Todo")
.IsRequired()
.HasColumnType("longtext")
.HasColumnName("todo");
b.Property<ulong>("UserId")
.HasColumnType("bigint unsigned")
.HasColumnName("userid");
b.HasKey("Id")
.HasName("pk_todos");
b.HasIndex("ArchiveId")
.HasDatabaseName("ix_todos_archiveid");
b.HasIndex("UserId")
.HasDatabaseName("ix_todos_userid");
b.ToTable("todos", (string)null);
});
modelBuilder.Entity("NadekoBot.Db.Models.XpShopOwnedItem", b =>
{
b.Property<int>("Id")
@@ -3781,6 +3847,15 @@ namespace NadekoBot.Db.Migrations.Mysql
.HasConstraintName("fk_giveawayuser_giveawaymodel_giveawayid");
});
modelBuilder.Entity("NadekoBot.Db.Models.TodoModel", b =>
{
b.HasOne("NadekoBot.Db.Models.ArchivedTodoListModel", null)
.WithMany("Items")
.HasForeignKey("ArchiveId")
.OnDelete(DeleteBehavior.Cascade)
.HasConstraintName("fk_todos_todosarchive_archiveid");
});
modelBuilder.Entity("Nadeko.Bot.Db.Models.AntiSpamSetting", b =>
{
b.Navigation("IgnoredChannels");
@@ -3889,6 +3964,11 @@ namespace NadekoBot.Db.Migrations.Mysql
b.Navigation("RoleRewards");
});
modelBuilder.Entity("NadekoBot.Db.Models.ArchivedTodoListModel", b =>
{
b.Navigation("Items");
});
modelBuilder.Entity("NadekoBot.Db.Models.ClubInfo", b =>
{
b.Navigation("Applicants");