Use name/count model.

This commit is contained in:
2019-12-03 22:42:49 +00:00
parent e380126937
commit a0fafabb2c
15 changed files with 2329 additions and 42 deletions

View File

@@ -15,6 +15,6 @@ namespace DiscImageChef.Server.Areas.Admin.Controllers
public VersionsController(DicServerContext context) => _context = context;
// GET: Admin/Versions
public async Task<IActionResult> Index() => View(await _context.Versions.OrderBy(v => v.Value).ToListAsync());
public async Task<IActionResult> Index() => View(await _context.Versions.OrderBy(v => v.Name).ToListAsync());
}
}

View File

@@ -38,7 +38,7 @@
<thead>
<tr>
<th>
@Html.DisplayNameFor(model => model.Value)
@Html.DisplayNameFor(model => model.Name)
</th>
<th>
@Html.DisplayNameFor(model => model.Count)
@@ -51,7 +51,7 @@
{
<tr>
<td>
@Html.DisplayFor(modelItem => item.Value)
@Html.DisplayFor(modelItem => item.Name)
</td>
<td>
@Html.DisplayFor(modelItem => item.Count)

View File

@@ -114,7 +114,7 @@ namespace DiscImageChef.Server.Controllers
foreach(Version nvs in ctx.Versions)
versions.Add(new NameValueStats
{
name = nvs.Value == "previous" ? "Previous than 3.4.99.0" : nvs.Value, Value = nvs.Count
name = nvs.Name == "previous" ? "Previous than 3.4.99.0" : nvs.Name, Value = nvs.Count
});
ViewBag.repVersions = versions.OrderBy(ver => ver.name).ToList();
@@ -370,7 +370,7 @@ namespace DiscImageChef.Server.Controllers
string[][] result =
{
ctx.Versions.OrderByDescending(o => o.Count).Take(10).
Select(v => v.Value == "previous" ? "Previous than 3.4.99.0" : v.Value).ToArray(),
Select(v => v.Name == "previous" ? "Previous than 3.4.99.0" : v.Name).ToArray(),
ctx.Versions.OrderByDescending(o => o.Count).Take(10).Select(x => x.Count.ToString()).ToArray()
};

View File

@@ -150,12 +150,12 @@ namespace DiscImageChef.Server.Controllers
if(newstats.Versions != null)
foreach(NameValueStats nvs in newstats.Versions)
{
Version existing = _ctx.Versions.FirstOrDefault(c => c.Value == nvs.name);
Version existing = _ctx.Versions.FirstOrDefault(c => c.Name == nvs.name);
if(existing == null)
_ctx.Versions.Add(new Version
{
Value = nvs.name, Count = nvs.Value
Name = nvs.name, Count = nvs.Value
});
else
existing.Count += nvs.Value;

View File

@@ -362,12 +362,12 @@ namespace DiscImageChef.Server
if(string.IsNullOrWhiteSpace(nvs.name))
continue;
Version existing = ctx.Versions.FirstOrDefault(c => c.Value == nvs.name);
Version existing = ctx.Versions.FirstOrDefault(c => c.Name == nvs.name);
if(existing == null)
ctx.Versions.Add(new Version
{
Count = nvs.Value, Value = nvs.name
Count = nvs.Value, Name = nvs.name
});
else
existing.Count += nvs.Value;
@@ -375,12 +375,12 @@ namespace DiscImageChef.Server
}
else
{
Version existing = ctx.Versions.FirstOrDefault(c => c.Value == "previous");
Version existing = ctx.Versions.FirstOrDefault(c => c.Name == "previous");
if(existing == null)
ctx.Versions.Add(new Version
{
Count = 1, Value = "previous"
Count = 1, Name = "previous"
});
else
existing.Count++;

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,13 @@
using Microsoft.EntityFrameworkCore.Migrations;
namespace DiscImageChef.Server.Migrations
{
public partial class NameCountModel : Migration
{
protected override void Up(MigrationBuilder migrationBuilder) =>
migrationBuilder.Sql("ALTER TABLE Versions CHANGE `Value` `Name` LONGTEXT");
protected override void Down(MigrationBuilder migrationBuilder) =>
migrationBuilder.Sql("ALTER TABLE Versions CHANGE `Name` `Value` LONGTEXT");
}
}

View File

@@ -1278,7 +1278,7 @@ namespace DiscImageChef.Server.Migrations
b.Property<long>("Count").HasColumnType("bigint");
b.Property<string>("Value").HasColumnType("longtext CHARACTER SET utf8mb4");
b.Property<string>("Name").HasColumnType("longtext CHARACTER SET utf8mb4");
b.HasKey("Id");

View File

@@ -32,9 +32,5 @@
namespace DiscImageChef.Server.Models
{
public class Command : BaseModel<int>
{
public string Name { get; set; }
public long Count { get; set; }
}
public class Command : NameCountModel<int> { }
}

View File

@@ -32,9 +32,5 @@
namespace DiscImageChef.Server.Models
{
public class Filesystem : BaseModel<int>
{
public string Name { get; set; }
public long Count { get; set; }
}
public class Filesystem : NameCountModel<int> { }
}

View File

@@ -32,9 +32,5 @@
namespace DiscImageChef.Server.Models
{
public class Filter : BaseModel<int>
{
public string Name { get; set; }
public long Count { get; set; }
}
public class Filter : NameCountModel<int> { }
}

View File

@@ -32,9 +32,5 @@
namespace DiscImageChef.Server.Models
{
public class MediaFormat : BaseModel<int>
{
public string Name { get; set; }
public long Count { get; set; }
}
public class MediaFormat : NameCountModel<int> { }
}

View File

@@ -0,0 +1,8 @@
namespace DiscImageChef.Server.Models
{
public class NameCountModel<T> : BaseModel<T>
{
public string Name { get; set; }
public long Count { get; set; }
}
}

View File

@@ -32,9 +32,5 @@
namespace DiscImageChef.Server.Models
{
public class Partition : BaseModel<int>
{
public string Name { get; set; }
public long Count { get; set; }
}
public class Partition : NameCountModel<int> { }
}

View File

@@ -32,9 +32,5 @@
namespace DiscImageChef.Server.Models
{
public class Version : BaseModel<int>
{
public string Value { get; set; }
public long Count { get; set; }
}
public class Version : NameCountModel<int> { }
}