diff --git a/.github/workflows/push_docker_image.yml b/.github/workflows/push_docker_image.yml
index 28a5708c..2137a075 100644
--- a/.github/workflows/push_docker_image.yml
+++ b/.github/workflows/push_docker_image.yml
@@ -8,6 +8,7 @@ on:
- rc-*
- 2023q1-previewnet
- release/*
+ - feature/irregular-alarm
tags:
- "*"
diff --git a/NineChronicles.DataProvider.Executable/Migrations/20241202131743_AddHackAndSlashAvatarLevel.Designer.cs b/NineChronicles.DataProvider.Executable/Migrations/20241202131743_AddHackAndSlashAvatarLevel.Designer.cs
new file mode 100644
index 00000000..7f6a69f9
--- /dev/null
+++ b/NineChronicles.DataProvider.Executable/Migrations/20241202131743_AddHackAndSlashAvatarLevel.Designer.cs
@@ -0,0 +1,4548 @@
+//
+using System;
+using Microsoft.EntityFrameworkCore;
+using Microsoft.EntityFrameworkCore.Infrastructure;
+using Microsoft.EntityFrameworkCore.Migrations;
+using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
+using NineChronicles.DataProvider.Store;
+
+#nullable disable
+
+namespace NineChronicles.DataProvider.Executable.Migrations
+{
+ [DbContext(typeof(NineChroniclesContext))]
+ [Migration("20241202131743_AddHackAndSlashAvatarLevel")]
+ partial class AddHackAndSlashAvatarLevel
+ {
+ protected override void BuildTargetModel(ModelBuilder modelBuilder)
+ {
+#pragma warning disable 612, 618
+ modelBuilder
+ .HasAnnotation("ProductVersion", "6.0.1")
+ .HasAnnotation("Relational:MaxIdentifierLength", 64);
+
+ modelBuilder.Entity("NineChronicles.DataProvider.Store.Models.AbilityRankingModel", b =>
+ {
+ b.Property("AgentAddress")
+ .HasColumnType("longtext");
+
+ b.Property("ArmorId")
+ .HasColumnType("int");
+
+ b.Property("AvatarAddress")
+ .HasColumnType("longtext");
+
+ b.Property("AvatarLevel")
+ .HasColumnType("int");
+
+ b.Property("Cp")
+ .HasColumnType("int");
+
+ b.Property("Name")
+ .HasColumnType("longtext");
+
+ b.Property("Ranking")
+ .HasColumnType("int");
+
+ b.Property("TitleId")
+ .HasColumnType("int");
+
+ b.ToTable("AbilityRanking");
+ });
+
+ modelBuilder.Entity("NineChronicles.DataProvider.Store.Models.ActivateCollectionModel", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ b.Property("ActionId")
+ .IsRequired()
+ .HasColumnType("longtext");
+
+ b.Property("AvatarAddress")
+ .IsRequired()
+ .HasColumnType("varchar(255)");
+
+ b.Property("BlockIndex")
+ .HasColumnType("bigint");
+
+ b.Property("CollectionId")
+ .HasColumnType("int");
+
+ b.Property("CreatedAt")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("datetime(6)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("AvatarAddress", "CollectionId")
+ .IsUnique();
+
+ b.ToTable("ActivateCollections");
+ });
+
+ modelBuilder.Entity("NineChronicles.DataProvider.Store.Models.AdventureBoss.AdventureBossChallengeModel", b =>
+ {
+ b.Property("Id")
+ .HasColumnType("varchar(255)");
+
+ b.Property("AvatarAddress")
+ .HasColumnType("varchar(255)");
+
+ b.Property("BlockIndex")
+ .HasColumnType("bigint");
+
+ b.Property("Date")
+ .HasColumnType("date");
+
+ b.Property("EndFloor")
+ .HasColumnType("int");
+
+ b.Property("Point")
+ .HasColumnType("int");
+
+ b.Property("Season")
+ .HasColumnType("bigint");
+
+ b.Property("StartFloor")
+ .HasColumnType("int");
+
+ b.Property("TimeStamp")
+ .HasColumnType("datetime(6)");
+
+ b.Property("TotalPoint")
+ .HasColumnType("bigint");
+
+ b.Property("UsedApPotion")
+ .HasColumnType("int");
+
+ b.HasKey("Id");
+
+ b.HasIndex("AvatarAddress");
+
+ b.ToTable("AdventureBossChallenge");
+ });
+
+ modelBuilder.Entity("NineChronicles.DataProvider.Store.Models.AdventureBoss.AdventureBossClaimRewardModel", b =>
+ {
+ b.Property("Id")
+ .HasColumnType("varchar(255)");
+
+ b.Property("AvatarAddress")
+ .HasColumnType("varchar(255)");
+
+ b.Property("BlockIndex")
+ .HasColumnType("bigint");
+
+ b.Property("ClaimedSeason")
+ .HasColumnType("longtext");
+
+ b.Property("Date")
+ .HasColumnType("date");
+
+ b.Property("NcgReward")
+ .HasColumnType("decimal(65,30)");
+
+ b.Property("RewardData")
+ .HasColumnType("longtext");
+
+ b.Property("TimeStamp")
+ .HasColumnType("datetime(6)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("AvatarAddress");
+
+ b.ToTable("AdventureBossClaimReward");
+ });
+
+ modelBuilder.Entity("NineChronicles.DataProvider.Store.Models.AdventureBoss.AdventureBossRushModel", b =>
+ {
+ b.Property("Id")
+ .HasColumnType("varchar(255)");
+
+ b.Property("AvatarAddress")
+ .HasColumnType("varchar(255)");
+
+ b.Property("BlockIndex")
+ .HasColumnType("bigint");
+
+ b.Property("Date")
+ .HasColumnType("date");
+
+ b.Property("EndFloor")
+ .HasColumnType("int");
+
+ b.Property("Point")
+ .HasColumnType("int");
+
+ b.Property("Season")
+ .HasColumnType("int");
+
+ b.Property("TimeStamp")
+ .HasColumnType("datetime(6)");
+
+ b.Property("TotalPoint")
+ .HasColumnType("bigint");
+
+ b.Property("UsedApPotion")
+ .HasColumnType("int");
+
+ b.HasKey("Id");
+
+ b.HasIndex("AvatarAddress");
+
+ b.ToTable("AdventureBossRush");
+ });
+
+ modelBuilder.Entity("NineChronicles.DataProvider.Store.Models.AdventureBoss.AdventureBossSeasonModel", b =>
+ {
+ b.Property("Season")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("bigint");
+
+ b.Property("BossId")
+ .HasColumnType("int");
+
+ b.Property("ClaimableBlockIndex")
+ .HasColumnType("bigint");
+
+ b.Property("Date")
+ .HasColumnType("date");
+
+ b.Property("EndBlockIndex")
+ .HasColumnType("bigint");
+
+ b.Property("FixedRewardData")
+ .HasColumnType("longtext");
+
+ b.Property("NextSeasonBlockIndex")
+ .HasColumnType("bigint");
+
+ b.Property("RaffleReward")
+ .HasColumnType("decimal(65,30)");
+
+ b.Property("RaffleWinnerAddress")
+ .HasColumnType("varchar(255)");
+
+ b.Property("RandomRewardData")
+ .HasColumnType("longtext");
+
+ b.Property("StartBlockIndex")
+ .HasColumnType("bigint");
+
+ b.Property("TimeStamp")
+ .HasColumnType("datetime(6)");
+
+ b.HasKey("Season");
+
+ b.HasIndex("RaffleWinnerAddress");
+
+ b.ToTable("AdventureBossSeason");
+ });
+
+ modelBuilder.Entity("NineChronicles.DataProvider.Store.Models.AdventureBoss.AdventureBossUnlockFloorModel", b =>
+ {
+ b.Property("Id")
+ .HasColumnType("varchar(255)");
+
+ b.Property("AvatarAddress")
+ .HasColumnType("varchar(255)");
+
+ b.Property("BlockIndex")
+ .HasColumnType("bigint");
+
+ b.Property("Date")
+ .HasColumnType("date");
+
+ b.Property("Season")
+ .HasColumnType("bigint");
+
+ b.Property("TimeStamp")
+ .HasColumnType("datetime(6)");
+
+ b.Property("TotalUsedGoldenDust")
+ .HasColumnType("bigint");
+
+ b.Property("TotalUsedNcg")
+ .HasColumnType("decimal(65,30)");
+
+ b.Property("UnlockFloor")
+ .HasColumnType("int");
+
+ b.Property("UsedGoldenDust")
+ .HasColumnType("bigint");
+
+ b.Property("UsedNcg")
+ .HasColumnType("decimal(65,30)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("AvatarAddress");
+
+ b.ToTable("AdventureBossUnlockFloor");
+ });
+
+ modelBuilder.Entity("NineChronicles.DataProvider.Store.Models.AdventureBoss.AdventureBossWantedModel", b =>
+ {
+ b.Property("Id")
+ .HasColumnType("varchar(255)");
+
+ b.Property("AvatarAddress")
+ .HasColumnType("varchar(255)");
+
+ b.Property("BlockIndex")
+ .HasColumnType("bigint");
+
+ b.Property("Bounty")
+ .HasColumnType("decimal(65,30)");
+
+ b.Property("Count")
+ .HasColumnType("int");
+
+ b.Property("Date")
+ .HasColumnType("date");
+
+ b.Property("Season")
+ .HasColumnType("int");
+
+ b.Property("TimeStamp")
+ .HasColumnType("datetime(6)");
+
+ b.Property("TotalBounty")
+ .HasColumnType("decimal(65,30)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("AvatarAddress");
+
+ b.ToTable("AdventureBossWanted");
+ });
+
+ modelBuilder.Entity("NineChronicles.DataProvider.Store.Models.AgentModel", b =>
+ {
+ b.Property("Address")
+ .HasColumnType("varchar(255)");
+
+ b.HasKey("Address");
+
+ b.ToTable("Agents");
+ });
+
+ modelBuilder.Entity("NineChronicles.DataProvider.Store.Models.ApprovePledgeModel", b =>
+ {
+ b.Property("TxId")
+ .HasColumnType("varchar(255)");
+
+ b.Property("BlockHash")
+ .HasColumnType("longtext");
+
+ b.Property("BlockIndex")
+ .HasColumnType("bigint");
+
+ b.Property("Date")
+ .HasColumnType("date");
+
+ b.Property("PatronAddress")
+ .HasColumnType("longtext");
+
+ b.Property("Signer")
+ .HasColumnType("longtext");
+
+ b.Property("TimeStamp")
+ .HasColumnType("datetime(6)");
+
+ b.HasKey("TxId");
+
+ b.HasIndex("Date");
+
+ b.ToTable("ApprovePledges");
+ });
+
+ modelBuilder.Entity("NineChronicles.DataProvider.Store.Models.AuraSummonFailModel", b =>
+ {
+ b.Property("Id")
+ .HasColumnType("varchar(255)");
+
+ b.Property("AgentAddress")
+ .HasColumnType("varchar(255)");
+
+ b.Property("AvatarAddress")
+ .HasColumnType("varchar(255)");
+
+ b.Property("BlockIndex")
+ .HasColumnType("bigint");
+
+ b.Property("Date")
+ .HasColumnType("date");
+
+ b.Property("Exception")
+ .HasColumnType("longtext");
+
+ b.Property("GroupId")
+ .HasColumnType("int");
+
+ b.Property("SummonCount")
+ .HasColumnType("int");
+
+ b.Property("TimeStamp")
+ .HasColumnType("datetime(6)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("AgentAddress");
+
+ b.HasIndex("AvatarAddress");
+
+ b.HasIndex("Date");
+
+ b.ToTable("AuraSummonFails");
+ });
+
+ modelBuilder.Entity("NineChronicles.DataProvider.Store.Models.AuraSummonModel", b =>
+ {
+ b.Property("Id")
+ .HasColumnType("varchar(255)");
+
+ b.Property("AgentAddress")
+ .HasColumnType("varchar(255)");
+
+ b.Property("AvatarAddress")
+ .HasColumnType("varchar(255)");
+
+ b.Property("BlockIndex")
+ .HasColumnType("bigint");
+
+ b.Property("Date")
+ .HasColumnType("date");
+
+ b.Property("GroupId")
+ .HasColumnType("int");
+
+ b.Property("SummonCount")
+ .HasColumnType("int");
+
+ b.Property("SummonResult")
+ .HasColumnType("longtext");
+
+ b.Property("TimeStamp")
+ .HasColumnType("datetime(6)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("AgentAddress");
+
+ b.HasIndex("AvatarAddress");
+
+ b.HasIndex("Date");
+
+ b.ToTable("AuraSummons");
+ });
+
+ modelBuilder.Entity("NineChronicles.DataProvider.Store.Models.AvatarModel", b =>
+ {
+ b.Property("Address")
+ .HasColumnType("varchar(255)");
+
+ b.Property("AgentAddress")
+ .HasColumnType("varchar(255)");
+
+ b.Property("ArmorId")
+ .HasColumnType("int");
+
+ b.Property("AvatarLevel")
+ .HasColumnType("int");
+
+ b.Property("Cp")
+ .HasColumnType("int");
+
+ b.Property("Name")
+ .HasColumnType("longtext");
+
+ b.Property("Timestamp")
+ .HasColumnType("datetime(6)");
+
+ b.Property("TitleId")
+ .HasColumnType("int");
+
+ b.HasKey("Address");
+
+ b.HasIndex("AgentAddress");
+
+ b.ToTable("Avatars");
+ });
+
+ modelBuilder.Entity("NineChronicles.DataProvider.Store.Models.BattleArenaModel", b =>
+ {
+ b.Property("Id")
+ .HasColumnType("varchar(255)");
+
+ b.Property("AgentAddress")
+ .HasColumnType("varchar(255)");
+
+ b.Property("AvatarAddress")
+ .HasColumnType("varchar(255)");
+
+ b.Property("AvatarLevel")
+ .HasColumnType("int");
+
+ b.Property("BlockIndex")
+ .HasColumnType("bigint");
+
+ b.Property("BurntNCG")
+ .HasColumnType("decimal(65,30)");
+
+ b.Property("ChampionshipId")
+ .HasColumnType("int");
+
+ b.Property("Date")
+ .HasColumnType("date");
+
+ b.Property("EnemyAvatarAddress")
+ .HasColumnType("longtext");
+
+ b.Property("MedalCount")
+ .HasColumnType("int");
+
+ b.Property("Round")
+ .HasColumnType("int");
+
+ b.Property("TicketCount")
+ .HasColumnType("int");
+
+ b.Property("TimeStamp")
+ .HasColumnType("datetime(6)");
+
+ b.Property("Victory")
+ .HasColumnType("tinyint(1)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("AgentAddress");
+
+ b.HasIndex("AvatarAddress");
+
+ b.HasIndex("Date");
+
+ b.ToTable("BattleArenas");
+ });
+
+ modelBuilder.Entity("NineChronicles.DataProvider.Store.Models.BattleArenaRankingModel", b =>
+ {
+ b.Property("AdditionalTicketPrice")
+ .HasColumnType("bigint");
+
+ b.Property("AgentAddress")
+ .HasColumnType("longtext");
+
+ b.Property("ArenaType")
+ .HasColumnType("longtext");
+
+ b.Property("ArmorId")
+ .HasColumnType("int");
+
+ b.Property("AvatarAddress")
+ .HasColumnType("longtext");
+
+ b.Property("AvatarLevel")
+ .HasColumnType("int");
+
+ b.Property("BlockIndex")
+ .HasColumnType("bigint");
+
+ b.Property("ChampionshipId")
+ .HasColumnType("int");
+
+ b.Property("Cp")
+ .HasColumnType("int");
+
+ b.Property("EndBlockIndex")
+ .HasColumnType("bigint");
+
+ b.Property("EntranceFee")
+ .HasColumnType("bigint");
+
+ b.Property("LossCount")
+ .HasColumnType("int");
+
+ b.Property("MedalCount")
+ .HasColumnType("int");
+
+ b.Property("Name")
+ .HasColumnType("longtext");
+
+ b.Property("PurchasedTicketCount")
+ .HasColumnType("int");
+
+ b.Property("Ranking")
+ .HasColumnType("int");
+
+ b.Property("RequiredMedalCount")
+ .HasColumnType("int");
+
+ b.Property("Round")
+ .HasColumnType("int");
+
+ b.Property("Score")
+ .HasColumnType("int");
+
+ b.Property("StartBlockIndex")
+ .HasColumnType("bigint");
+
+ b.Property("Ticket")
+ .HasColumnType("int");
+
+ b.Property("TicketPrice")
+ .HasColumnType("bigint");
+
+ b.Property("TicketResetCount")
+ .HasColumnType("int");
+
+ b.Property("TimeStamp")
+ .HasColumnType("datetime(6)");
+
+ b.Property("TitleId")
+ .HasColumnType("int");
+
+ b.Property("WinCount")
+ .HasColumnType("int");
+
+ b.ToTable("BattleArenaRanking");
+ });
+
+ modelBuilder.Entity("NineChronicles.DataProvider.Store.Models.BattleGrandFinaleModel", b =>
+ {
+ b.Property("Id")
+ .HasColumnType("varchar(255)");
+
+ b.Property("AgentAddress")
+ .IsRequired()
+ .HasColumnType("varchar(255)");
+
+ b.Property("AvatarAddress")
+ .IsRequired()
+ .HasColumnType("varchar(255)");
+
+ b.Property("AvatarLevel")
+ .HasColumnType("int");
+
+ b.Property("BlockIndex")
+ .HasColumnType("bigint");
+
+ b.Property("Date")
+ .HasColumnType("datetime(6)");
+
+ b.Property("EnemyAvatarAddress")
+ .IsRequired()
+ .HasColumnType("longtext");
+
+ b.Property("GrandFinaleId")
+ .HasColumnType("int");
+
+ b.Property("GrandFinaleScore")
+ .HasColumnType("int");
+
+ b.Property("TimeStamp")
+ .HasColumnType("datetime(6)");
+
+ b.Property("Victory")
+ .HasColumnType("tinyint(1)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("AgentAddress");
+
+ b.HasIndex("AvatarAddress");
+
+ b.HasIndex("Date");
+
+ b.ToTable("BattleGrandFinales");
+ });
+
+ modelBuilder.Entity("NineChronicles.DataProvider.Store.Models.BlockModel", b =>
+ {
+ b.Property("Hash")
+ .HasColumnType("varchar(255)");
+
+ b.Property("Date")
+ .HasColumnType("date");
+
+ b.Property("Difficulty")
+ .HasColumnType("bigint");
+
+ b.Property("Index")
+ .HasColumnType("bigint");
+
+ b.Property("Miner")
+ .HasColumnType("longtext");
+
+ b.Property("Nonce")
+ .HasColumnType("longtext");
+
+ b.Property("PreviousHash")
+ .HasColumnType("longtext");
+
+ b.Property("ProtocolVersion")
+ .HasColumnType("int");
+
+ b.Property("PublicKey")
+ .HasColumnType("longtext");
+
+ b.Property("StateRootHash")
+ .HasColumnType("longtext");
+
+ b.Property("TimeStamp")
+ .HasColumnType("datetime(6)");
+
+ b.Property("TotalDifficulty")
+ .HasColumnType("bigint");
+
+ b.Property("TxCount")
+ .HasColumnType("int");
+
+ b.Property("TxHash")
+ .HasColumnType("longtext");
+
+ b.HasKey("Hash");
+
+ b.HasIndex("Date");
+
+ b.HasIndex("Index");
+
+ b.ToTable("Blocks");
+ });
+
+ modelBuilder.Entity("NineChronicles.DataProvider.Store.Models.Claim.ClaimGiftsModel", b =>
+ {
+ b.Property("Id")
+ .HasColumnType("varchar(255)");
+
+ b.Property("AgentAddress")
+ .HasColumnType("varchar(255)");
+
+ b.Property("AvatarAddress")
+ .HasColumnType("varchar(255)");
+
+ b.Property("BlockIndex")
+ .HasColumnType("bigint");
+
+ b.Property("Date")
+ .HasColumnType("date");
+
+ b.Property("GiftId")
+ .HasColumnType("int");
+
+ b.Property("TimeStamp")
+ .HasColumnType("datetime(6)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("AgentAddress");
+
+ b.HasIndex("AvatarAddress");
+
+ b.HasIndex("Date");
+
+ b.ToTable("ClaimGifts");
+ });
+
+ modelBuilder.Entity("NineChronicles.DataProvider.Store.Models.ClaimStakeRewardModel", b =>
+ {
+ b.Property("Id")
+ .HasColumnType("varchar(255)");
+
+ b.Property("AgentAddress")
+ .HasColumnType("varchar(255)");
+
+ b.Property("ApPotionCount")
+ .HasColumnType("int");
+
+ b.Property("BlockIndex")
+ .HasColumnType("bigint");
+
+ b.Property("ClaimRewardAvatarAddress")
+ .HasColumnType("longtext");
+
+ b.Property("ClaimStakeEndBlockIndex")
+ .HasColumnType("bigint");
+
+ b.Property("ClaimStakeStartBlockIndex")
+ .HasColumnType("bigint");
+
+ b.Property("Date")
+ .HasColumnType("date");
+
+ b.Property("HourGlassCount")
+ .HasColumnType("int");
+
+ b.Property("TimeStamp")
+ .HasColumnType("datetime(6)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("AgentAddress");
+
+ b.HasIndex("Date");
+
+ b.ToTable("ClaimStakeRewards");
+ });
+
+ modelBuilder.Entity("NineChronicles.DataProvider.Store.Models.CombinationConsumableModel", b =>
+ {
+ b.Property("Id")
+ .HasColumnType("varchar(255)");
+
+ b.Property("AgentAddress")
+ .HasColumnType("varchar(255)");
+
+ b.Property("AvatarAddress")
+ .HasColumnType("varchar(255)");
+
+ b.Property("BlockIndex")
+ .HasColumnType("bigint");
+
+ b.Property("Date")
+ .HasColumnType("date");
+
+ b.Property("RecipeId")
+ .HasColumnType("int");
+
+ b.Property("SlotIndex")
+ .HasColumnType("int");
+
+ b.Property("TimeStamp")
+ .HasColumnType("datetime(6)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("AgentAddress");
+
+ b.HasIndex("AvatarAddress");
+
+ b.HasIndex("Date");
+
+ b.ToTable("CombinationConsumables");
+ });
+
+ modelBuilder.Entity("NineChronicles.DataProvider.Store.Models.CombinationEquipmentModel", b =>
+ {
+ b.Property("Id")
+ .HasColumnType("varchar(255)");
+
+ b.Property("AgentAddress")
+ .HasColumnType("varchar(255)");
+
+ b.Property("AvatarAddress")
+ .HasColumnType("varchar(255)");
+
+ b.Property("BlockIndex")
+ .HasColumnType("bigint");
+
+ b.Property("Date")
+ .HasColumnType("date");
+
+ b.Property("OptionCount")
+ .HasColumnType("int");
+
+ b.Property("RecipeId")
+ .HasColumnType("int");
+
+ b.Property("SkillContains")
+ .HasColumnType("tinyint(1)");
+
+ b.Property("SlotIndex")
+ .HasColumnType("int");
+
+ b.Property("SubRecipeId")
+ .HasColumnType("int");
+
+ b.Property("TimeStamp")
+ .HasColumnType("datetime(6)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("AgentAddress");
+
+ b.HasIndex("AvatarAddress");
+
+ b.HasIndex("Date");
+
+ b.ToTable("CombinationEquipments");
+ });
+
+ modelBuilder.Entity("NineChronicles.DataProvider.Store.Models.Crafting.CustomEquipmentCraftCountModel", b =>
+ {
+ b.Property("IconId")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ b.Property("Count")
+ .HasColumnType("bigint");
+
+ b.Property("ItemSubType")
+ .HasColumnType("longtext");
+
+ b.HasKey("IconId");
+
+ b.ToTable("CustomEquipmentCraftCount");
+ });
+
+ modelBuilder.Entity("NineChronicles.DataProvider.Store.Models.Crafting.CustomEquipmentCraftModel", b =>
+ {
+ b.Property("Id")
+ .HasColumnType("varchar(255)");
+
+ b.Property("AdditionalCost")
+ .HasColumnType("longtext");
+
+ b.Property("AgentAddress")
+ .HasColumnType("varchar(255)");
+
+ b.Property("AvatarAddress")
+ .HasColumnType("varchar(255)");
+
+ b.Property("BlockIndex")
+ .HasColumnType("bigint");
+
+ b.Property("Circle")
+ .HasColumnType("int");
+
+ b.Property("CraftWithRandom")
+ .HasColumnType("tinyint(1)");
+
+ b.Property("Date")
+ .HasColumnType("date");
+
+ b.Property("ElementalType")
+ .HasColumnType("longtext");
+
+ b.Property("EquipmentItemId")
+ .HasColumnType("int");
+
+ b.Property("HasRandomOnlyIcon")
+ .HasColumnType("tinyint(1)");
+
+ b.Property("IconId")
+ .HasColumnType("int");
+
+ b.Property("ItemSubType")
+ .HasColumnType("longtext");
+
+ b.Property("NcgCost")
+ .HasColumnType("decimal(65,30)");
+
+ b.Property("OptionId")
+ .HasColumnType("int");
+
+ b.Property("RecipeId")
+ .HasColumnType("int");
+
+ b.Property("Relationship")
+ .HasColumnType("int");
+
+ b.Property("Scroll")
+ .HasColumnType("int");
+
+ b.Property("SlotIndex")
+ .HasColumnType("int");
+
+ b.Property("TimeStamp")
+ .HasColumnType("datetime(6)");
+
+ b.Property("TotalCP")
+ .HasColumnType("bigint");
+
+ b.HasKey("Id");
+
+ b.HasIndex("AgentAddress");
+
+ b.HasIndex("AvatarAddress");
+
+ b.ToTable("CustomEquipmentCraft");
+ });
+
+ modelBuilder.Entity("NineChronicles.DataProvider.Store.Models.Crafting.RapidCombinationModel", b =>
+ {
+ b.Property("Id")
+ .HasColumnType("varchar(255)");
+
+ b.Property("AgentAddress")
+ .HasColumnType("varchar(255)");
+
+ b.Property("AvatarAddress")
+ .HasColumnType("varchar(255)");
+
+ b.Property("BlockIndex")
+ .HasColumnType("bigint");
+
+ b.Property("Date")
+ .HasColumnType("date");
+
+ b.Property("HourglassCount")
+ .HasColumnType("int");
+
+ b.Property("SlotIndex")
+ .HasColumnType("int");
+
+ b.Property("TimeStamp")
+ .HasColumnType("datetime(6)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("AgentAddress");
+
+ b.HasIndex("AvatarAddress");
+
+ b.HasIndex("Date");
+
+ b.ToTable("RapidCombinations");
+ });
+
+ modelBuilder.Entity("NineChronicles.DataProvider.Store.Models.Crafting.UnlockCombinationSlotModel", b =>
+ {
+ b.Property("Id")
+ .HasColumnType("varchar(255)");
+
+ b.Property("AgentAddress")
+ .HasColumnType("varchar(255)");
+
+ b.Property("AvatarAddress")
+ .HasColumnType("varchar(255)");
+
+ b.Property("BlockIndex")
+ .HasColumnType("bigint");
+
+ b.Property("CrystalCost")
+ .HasColumnType("decimal(65,30)");
+
+ b.Property("Date")
+ .HasColumnType("date");
+
+ b.Property("MaterialCosts")
+ .HasColumnType("longtext");
+
+ b.Property("NcgCost")
+ .HasColumnType("decimal(65,30)");
+
+ b.Property("SlotIndex")
+ .HasColumnType("int");
+
+ b.Property("TimeStamp")
+ .HasColumnType("datetime(6)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("AgentAddress");
+
+ b.HasIndex("AvatarAddress");
+
+ b.ToTable("UnlockCombinationSlot");
+ });
+
+ modelBuilder.Entity("NineChronicles.DataProvider.Store.Models.CraftRankingModel", b =>
+ {
+ b.Property("AgentAddress")
+ .HasColumnType("longtext");
+
+ b.Property("ArmorId")
+ .HasColumnType("int");
+
+ b.Property