Fix data type errors

This commit is contained in:
CodeLiturgy 2022-08-19 00:02:57 +01:00
parent 3b350c6a46
commit ce43ecf51d
11 changed files with 82 additions and 15 deletions

View File

@ -5,7 +5,7 @@ using Microsoft.Extensions.Configuration;
namespace BlueWest.WebApi.MySQL; namespace BlueWest.WebApi.MySQL;
/// <summary> /// <summary>
/// Table containing countries /// Countries and Currencies
/// </summary> /// </summary>
public class CountriesDbContext : DbContext public class CountriesDbContext : DbContext
{ {

View File

@ -3,10 +3,18 @@ using Microsoft.EntityFrameworkCore;
namespace BlueWest.WebApi.MySQL namespace BlueWest.WebApi.MySQL
{ {
public class FinanceDbContext /// <summary>
/// Finance operations table
/// </summary>
public class FinanceDbContext : DbContext
{ {
public DbSet<FinanceOp> Transactions { get; set; } public DbSet<FinanceOp> Transactions { get; set; }
public DbSet<FinanceOpType> TransactionTypes { get; set; } public DbSet<FinanceOpType> TransactionTypes { get; set; }
public FinanceDbContext(DbContextOptions<UserDbContext> options) : base(options)
{
Database.EnsureCreated();
}
} }
} }

View File

@ -14,6 +14,10 @@ namespace BlueWest.WebApi.MySQL
public IConfiguration Configuration; public IConfiguration Configuration;
/// <summary>
/// Database for the context of database users
/// </summary>
/// <param name="options"></param>
public UserDbContext(DbContextOptions<UserDbContext> options) : base(options) public UserDbContext(DbContextOptions<UserDbContext> options) : base(options)
{ {
Database.EnsureCreated(); Database.EnsureCreated();

View File

@ -11,6 +11,7 @@ using System.Collections.Generic;
using System.IO; using System.IO;
using System.Linq; using System.Linq;
using System.Reflection; using System.Reflection;
using System.Text.Json.Serialization;
using System.Threading.Tasks; using System.Threading.Tasks;
using BlueWest.WebApi.MySQL; using BlueWest.WebApi.MySQL;
using BlueWest.WebApi.Tools; using BlueWest.WebApi.Tools;
@ -42,7 +43,11 @@ namespace BlueWest.WebApi
});*/ });*/
}); });
services.AddControllers(); services.AddControllers()
.AddJsonOptions(options =>
{
options.JsonSerializerOptions.ReferenceHandler = ReferenceHandler.Preserve;
});
/*services /*services
.AddNewtonsoftJson(options => .AddNewtonsoftJson(options =>
options.SerializerSettings.Converters.Add(new StringEnumConverter())); options.SerializerSettings.Converters.Add(new StringEnumConverter()));
@ -75,10 +80,15 @@ namespace BlueWest.WebApi
var xmlPath = Path.Combine(AppContext.BaseDirectory, xmlFile); var xmlPath = Path.Combine(AppContext.BaseDirectory, xmlFile);
options.IncludeXmlComments(xmlPath); options.IncludeXmlComments(xmlPath);
}); });
services.AddDbContextPool<UserDbContext>(options =>
options.GetSqlSettings(Configuration));
services.AddDbContextPool<CountriesDbContext>(options =>
services.AddDbContextPool<UserDbContext>(options =>
options.GetSqlSettings(Configuration))
.AddDbContextPool<CountriesDbContext>(options =>
options.GetSqlSettings(Configuration))
.AddDbContextPool<FinanceDbContext>(options =>
options.GetSqlSettings(Configuration))
.AddDbContextPool<CountriesDbContext>(options =>
options.GetSqlSettings(Configuration)); options.GetSqlSettings(Configuration));

View File

@ -5,7 +5,13 @@ using MapTo;
namespace BlueWest.Data namespace BlueWest.Data
{ {
[MapFrom(new [] {typeof(CountryUpdate), typeof(CountryCreate)})] [MapFrom(new []
{
typeof(CountryUpdate),
typeof(CountryCreate),
typeof(CountryUnique)
})]
public partial class Country public partial class Country
{ {
// ISO 3166-1 numeric code // ISO 3166-1 numeric code

View File

@ -11,7 +11,7 @@ namespace BlueWest.Data
public int Code { get; set; } // Primary key public int Code { get; set; } // Primary key
public string StateName { get; set; } public string StateName { get; set; }
public List<CurrencyCreate> CurrenciesToCreate { get; set; } public List<CurrencyUnique> CurrenciesToCreate { get; set; }
[MaxLength(2)] public string Alpha2Code { get; set; } [MaxLength(2)] public string Alpha2Code { get; set; }

View File

@ -0,0 +1,23 @@
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using MapTo;
namespace BlueWest.Data
{
[MapFrom( typeof(Country))]
public partial class CountryUnique
{
// ISO 3166-1 numeric code
public int Code { get; set; } // Primary key
public string StateName { get; set; }
[MaxLength(2)] public string Alpha2Code { get; set; }
public string TLD { get; set; }
public CountryUnique() { }
}
}

View File

@ -6,7 +6,9 @@ namespace BlueWest.Data
{ {
[MapFrom(new []{ [MapFrom(new []{
typeof(CurrencyUpdate), typeof(CurrencyUpdate),
typeof(CurrencyCreate)})] typeof(CurrencyCreate),
typeof(CurrencyUnique)
})]
public partial class Currency public partial class Currency
{ {

View File

@ -9,8 +9,7 @@ namespace BlueWest.Data
{ {
public int Num { get; set; } // Primary key public int Num { get; set; } // Primary key
[MaxLength(3)] public string Code { get; set; } [MaxLength(3)] public string Code { get; set; }
public List<CountryUnique> CountriesToCreate { get; set; }
public List<CountryCreate> CountriesToCreate { get; set; }
public CurrencyCreate() { } public CurrencyCreate() { }
public Currency ToCurrency() public Currency ToCurrency()

View File

@ -0,0 +1,18 @@
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using MapTo;
namespace BlueWest.Data
{
[MapFrom(typeof(Currency))]
public partial class CurrencyUnique
{
public int Num { get; set; } // Primary key
[MaxLength(3)] public string Code { get; set; }
public CurrencyUnique() { }
}
}

View File

@ -11,9 +11,6 @@ namespace BlueWest.Data
// ISO 4217 Code // ISO 4217 Code
[MaxLength(3)] public string Code { get; set; } [MaxLength(3)] public string Code { get; set; }
public CurrencyUpdate() public CurrencyUpdate() { }
{
}
} }
} }