diff --git a/.gitignore b/.gitignore index 791e03e..1f81cdb 100644 --- a/.gitignore +++ b/.gitignore @@ -3,58 +3,58 @@ ################################################################################ /.vs -/gateways/JiShe.IoT.WebGateway/bin/Debug/net9.0 +/gateways/JiShe.IoT.WebGateway/bin/Debug/net10.0 /gateways/JiShe.IoT.WebGateway/obj -/host/JiShe.IoT.HttpApi.Host/bin/Debug/net9.0 +/host/JiShe.IoT.HttpApi.Host/bin/Debug/net10.0 /host/JiShe.IoT.HttpApi.Host/Logs /host/JiShe.IoT.HttpApi.Host/obj -/src/JiShe.IoT.Application/bin/Debug/net9.0 -/src/JiShe.IoT.Application/obj/Debug/net9.0 -/src/JiShe.IoT.Application.Contracts/bin/Debug/net9.0 -/src/JiShe.IoT.Application.Contracts/obj/Debug/net9.0 -/src/JiShe.IoT.DbMigrator/bin/Debug/net9.0 +/src/JiShe.IoT.Application/bin/Debug/net10.0 +/src/JiShe.IoT.Application/obj/Debug/net10.0 +/src/JiShe.IoT.Application.Contracts/bin/Debug/net10.0 +/src/JiShe.IoT.Application.Contracts/obj/Debug/net10.0 +/src/JiShe.IoT.DbMigrator/bin/Debug/net10.0 /src/JiShe.IoT.DbMigrator/obj -/src/JiShe.IoT.Domain/bin/Debug/net9.0 +/src/JiShe.IoT.Domain/bin/Debug/net10.0 /src/JiShe.IoT.Domain/obj -/src/JiShe.IoT.Domain.Shared/bin/Debug/net9.0 -/src/JiShe.IoT.Domain.Shared/obj/Debug/net9.0 -/src/JiShe.IoT.EntityFrameworkCore/bin/Debug/net9.0 +/src/JiShe.IoT.Domain.Shared/bin/Debug/net10.0 +/src/JiShe.IoT.Domain.Shared/obj/Debug/net10.0 +/src/JiShe.IoT.EntityFrameworkCore/bin/Debug/net10.0 /src/JiShe.IoT.EntityFrameworkCore/obj -/src/JiShe.IoT.FreeSqlRepository/bin/Debug/net9.0 +/src/JiShe.IoT.FreeSqlRepository/bin/Debug/net10.0 /src/JiShe.IoT.FreeSqlRepository/obj -/src/JiShe.IoT.HttpApi/bin/Debug/net9.0 +/src/JiShe.IoT.HttpApi/bin/Debug/net10.0 /src/JiShe.IoT.HttpApi/obj -/src/JiShe.IoT.HttpApi.Client/bin/Debug/net9.0 +/src/JiShe.IoT.HttpApi.Client/bin/Debug/net10.0 /src/JiShe.IoT.HttpApi.Client/obj -/test/JiShe.IoT.Application.Tests/bin/Debug/net9.0 +/test/JiShe.IoT.Application.Tests/bin/Debug/net10.0 /test/JiShe.IoT.Application.Tests/obj -/test/JiShe.IoT.Domain.Tests/bin/Debug/net9.0 +/test/JiShe.IoT.Domain.Tests/bin/Debug/net10.0 /test/JiShe.IoT.Domain.Tests/obj -/test/JiShe.IoT.EntityFrameworkCore.Tests/bin/Debug/net9.0 +/test/JiShe.IoT.EntityFrameworkCore.Tests/bin/Debug/net10.0 /test/JiShe.IoT.EntityFrameworkCore.Tests/obj -/test/JiShe.IoT.HttpApi.Client.ConsoleTestApp/bin/Debug/net9.0 +/test/JiShe.IoT.HttpApi.Client.ConsoleTestApp/bin/Debug/net10.0 /test/JiShe.IoT.HttpApi.Client.ConsoleTestApp/obj -/test/JiShe.IoT.TestBase/bin/Debug/net9.0 +/test/JiShe.IoT.TestBase/bin/Debug/net10.0 /test/JiShe.IoT.TestBase/obj /src/JiShe.IoT.Application/obj /src/JiShe.IoT.Application.Contracts/obj /src/JiShe.IoT.Domain.Shared/obj -/src/JiShe.IoT.Application/bin/Release/net9.0 -/src/JiShe.IoT.Application.Contracts/bin/Release/net9.0 -/src/JiShe.IoT.Domain/bin/Release/net9.0 -/src/JiShe.IoT.Domain.Shared/bin/Release/net9.0 -/src/JiShe.IoT.EntityFrameworkCore/bin/Release/net9.0 -/src/JiShe.IoT.HttpApi/bin/Release/net9.0 -/gateways/JiShe.IoT.WebGateway/bin/Release/net9.0 -/host/JiShe.IoT.HttpApi.Host/bin/Release/net9.0 -/host/JiShe.IoT.HttpApi.Host/bin/Release/net9.0/ca/Hangfire.Core.resources.dll -/src/JiShe.IoT.DbMigrator/bin/Release/net9.0 -/src/JiShe.IoT.HttpApi.Client/bin/Release/net9.0 -/test/JiShe.IoT.Application.Tests/bin/Release/net9.0 -/test/JiShe.IoT.Domain.Tests/bin/Release/net9.0 -/test/JiShe.IoT.EntityFrameworkCore.Tests/bin/Release/net9.0 -/test/JiShe.IoT.HttpApi.Client.ConsoleTestApp/bin/Release/net9.0 -/test/JiShe.IoT.TestBase/bin/Release/net9.0 +/src/JiShe.IoT.Application/bin/Release/net10.0 +/src/JiShe.IoT.Application.Contracts/bin/Release/net10.0 +/src/JiShe.IoT.Domain/bin/Release/net10.0 +/src/JiShe.IoT.Domain.Shared/bin/Release/net10.0 +/src/JiShe.IoT.EntityFrameworkCore/bin/Release/net10.0 +/src/JiShe.IoT.HttpApi/bin/Release/net10.0 +/gateways/JiShe.IoT.WebGateway/bin/Release/net10.0 +/host/JiShe.IoT.HttpApi.Host/bin/Release/net10.0 +/host/JiShe.IoT.HttpApi.Host/bin/Release/net10.0/ca/Hangfire.Core.resources.dll +/src/JiShe.IoT.DbMigrator/bin/Release/net10.0 +/src/JiShe.IoT.HttpApi.Client/bin/Release/net10.0 +/test/JiShe.IoT.Application.Tests/bin/Release/net10.0 +/test/JiShe.IoT.Domain.Tests/bin/Release/net10.0 +/test/JiShe.IoT.EntityFrameworkCore.Tests/bin/Release/net10.0 +/test/JiShe.IoT.HttpApi.Client.ConsoleTestApp/bin/Release/net10.0 +/test/JiShe.IoT.TestBase/bin/Release/net10.0 /host/JiShe.IoT.HttpApi.Host/UploadFile/20250729/host/abp-file-management /host/JiShe.IoT.HttpApi.Host/UploadFile/20250731/host/abp-file-management/3a1b7059-f930-8a33-5a5b-a67f48f2feec /gateways/JiShe.IoT.WebGateway/bin/Debug/net10.0 diff --git a/Directory.Build.Microsoft.targets b/Directory.Build.Microsoft.targets index 2adafe9..a45be3c 100644 --- a/Directory.Build.Microsoft.targets +++ b/Directory.Build.Microsoft.targets @@ -20,11 +20,11 @@ - + - - - + + + \ No newline at end of file diff --git a/Directory.Build.props b/Directory.Build.props index 4a8b2d2..1abe670 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -4,12 +4,12 @@ 1.0.5.40 - 9.3.4 + 10.0.2 - 9.0.11 + 10.0.2 - net9.0 + net10.0 \ No newline at end of file diff --git a/Directory.Build.targets b/Directory.Build.targets index e90b41e..6a3c318 100644 --- a/Directory.Build.targets +++ b/Directory.Build.targets @@ -63,9 +63,9 @@ - - - + + + diff --git a/host/JiShe.IoT.HttpApi.Host/GlobalUsings.cs b/host/JiShe.IoT.HttpApi.Host/GlobalUsings.cs index c55cd9d..12c56af 100644 --- a/host/JiShe.IoT.HttpApi.Host/GlobalUsings.cs +++ b/host/JiShe.IoT.HttpApi.Host/GlobalUsings.cs @@ -36,7 +36,7 @@ global using Microsoft.Extensions.Logging; global using Microsoft.Extensions.Logging.Abstractions; global using Microsoft.Extensions.Options; global using Microsoft.IdentityModel.Tokens; -global using Microsoft.OpenApi.Models; +global using Microsoft.OpenApi; global using JiShe.IoT; global using Serilog; global using StackExchange.Redis; diff --git a/host/JiShe.IoT.HttpApi.Host/IoTHttpApiHostModule.Configure.cs b/host/JiShe.IoT.HttpApi.Host/IoTHttpApiHostModule.Configure.cs index 8ef3811..88d1662 100644 --- a/host/JiShe.IoT.HttpApi.Host/IoTHttpApiHostModule.Configure.cs +++ b/host/JiShe.IoT.HttpApi.Host/IoTHttpApiHostModule.Configure.cs @@ -50,10 +50,10 @@ public partial class IoTHttpApiHostModule private void ConfigureJwtAuthentication(ServiceConfigurationContext context, IConfiguration configuration) { context.Services.AddAuthentication(options => - { - options.DefaultAuthenticateScheme = JwtBearerDefaults.AuthenticationScheme; - options.DefaultChallengeScheme = JwtBearerDefaults.AuthenticationScheme; - }) + { + options.DefaultAuthenticateScheme = JwtBearerDefaults.AuthenticationScheme; + options.DefaultChallengeScheme = JwtBearerDefaults.AuthenticationScheme; + }) .AddJwtBearer(options => { options.TokenValidationParameters = @@ -148,13 +148,16 @@ public partial class IoTHttpApiHostModule context.Services.AddSwaggerGen( options => { + // 隐藏ABP默认的端点 + options.HideAbpEndpoints(); + // 文件下载类型 - options.MapType(() => new OpenApiSchema() { Type = "file" }); + options.MapType(() => new OpenApiSchema() { Type = JsonSchemaType.String, Format = "binary" }); options.SwaggerDoc("AbpPro", new OpenApiInfo { Title = "AbpPro API", Version = "v1" }); var configuration = context.Services.GetConfiguration(); - var groupNames = EnumExtensions.GetEnumTypeValueNameList(); + var groupNames = System.EnumExtensions.GetEnumTypeValueNameList(); var excludeSwaggerGroups = configuration.GetSection("ExcludeSwaggerGroup").Get>() ?? new List(); groupNames.ForEach(group => @@ -207,18 +210,12 @@ public partial class IoTHttpApiHostModule Scheme = JwtBearerDefaults.AuthenticationScheme, BearerFormat = "JWT" }); - options.AddSecurityRequirement(new OpenApiSecurityRequirement + options.AddSecurityRequirement(document => new OpenApiSecurityRequirement { - { - new OpenApiSecurityScheme - { - Reference = new OpenApiReference - { - Type = ReferenceType.SecurityScheme, Id = "Bearer" - } - }, - new List() - } + { + new OpenApiSecuritySchemeReference(JwtBearerDefaults.AuthenticationScheme, document), + new List() + } }); options.AddSecurityDefinition("ApiKey", new OpenApiSecurityScheme() @@ -229,15 +226,11 @@ public partial class IoTHttpApiHostModule Description = "多语言设置,系统预设语言有zh-Hans、en,默认为zh-Hans", }); - options.AddSecurityRequirement(new OpenApiSecurityRequirement + options.AddSecurityRequirement(document => new OpenApiSecurityRequirement { { - new OpenApiSecurityScheme - { - Reference = new OpenApiReference - { Type = ReferenceType.SecurityScheme, Id = "ApiKey" } - }, - Array.Empty() + new OpenApiSecuritySchemeReference("ApiKey", document), + new List() } }); }); diff --git a/host/JiShe.IoT.HttpApi.Host/IoTHttpApiHostModule.cs b/host/JiShe.IoT.HttpApi.Host/IoTHttpApiHostModule.cs index 06b8ce0..c5e9707 100644 --- a/host/JiShe.IoT.HttpApi.Host/IoTHttpApiHostModule.cs +++ b/host/JiShe.IoT.HttpApi.Host/IoTHttpApiHostModule.cs @@ -7,6 +7,7 @@ using System.Text.Json; using System.Text.Json.Serialization; using System.Text.Unicode; using Volo.Abp.BlobStoring.FileSystem; +using Volo.Abp.Swashbuckle; namespace JiShe.IoT { @@ -19,12 +20,12 @@ namespace JiShe.IoT typeof(AbpAspNetCoreSerilogModule), typeof(AbpAccountWebModule), typeof(IoTApplicationModule), - // typeof(AbpProCapModule), - // typeof(AbpProCapEntityFrameworkCoreModule), + typeof(AbpAspNetCoreMvcModule), typeof(AbpAspNetCoreMvcUiBasicThemeModule), typeof(AbpCachingStackExchangeRedisModule), typeof(AbpBlobStoringFileSystemModule), - typeof(AbpDistributedLockingModule) + typeof(AbpDistributedLockingModule), + typeof(AbpSwashbuckleModule) //typeof(AbpBackgroundJobsHangfireModule) )] public partial class IoTHttpApiHostModule : AbpModule @@ -88,7 +89,7 @@ namespace JiShe.IoT app.UseSwagger(); app.UseAbpSwaggerUI(options => { - var groupNames = EnumExtensions.GetEnumTypeValueNameList(); + var groupNames = System.EnumExtensions.GetEnumTypeValueNameList(); var excludeSwaggerGroups = configuration.GetSection("ExcludeSwaggerGroup").Get>() ?? new List(); groupNames.ForEach(attr => { diff --git a/host/JiShe.IoT.HttpApi.Host/JiShe.IoT.HttpApi.Host.csproj b/host/JiShe.IoT.HttpApi.Host/JiShe.IoT.HttpApi.Host.csproj index 0e37dbd..fcc1bfe 100644 --- a/host/JiShe.IoT.HttpApi.Host/JiShe.IoT.HttpApi.Host.csproj +++ b/host/JiShe.IoT.HttpApi.Host/JiShe.IoT.HttpApi.Host.csproj @@ -33,7 +33,6 @@ - diff --git a/host/JiShe.IoT.HttpApi.Host/Program.cs b/host/JiShe.IoT.HttpApi.Host/Program.cs index 700abf9..beeb076 100644 --- a/host/JiShe.IoT.HttpApi.Host/Program.cs +++ b/host/JiShe.IoT.HttpApi.Host/Program.cs @@ -53,15 +53,9 @@ public class Program await app.RunAsync(); return 0; } - catch (Exception ex) + catch (Exception) { - if (ex is HostAbortedException) - { - throw; - } - - Log.Fatal(ex, "Host terminated unexpectedly!"); - return 1; + throw; } finally { diff --git a/src/JiShe.IoT.Domain/Data/IoTDbMigrationService.cs b/src/JiShe.IoT.Domain/Data/IoTDbMigrationService.cs index 953c8d5..98f84da 100644 --- a/src/JiShe.IoT.Domain/Data/IoTDbMigrationService.cs +++ b/src/JiShe.IoT.Domain/Data/IoTDbMigrationService.cs @@ -42,7 +42,7 @@ namespace JiShe.IoT.Data await MigrateDatabaseSchemaAsync(); await SeedDataAsync(); - //await InitIoTDBTable(); + await InitIoTDBTable(); Logger.LogInformation($"Successfully completed host database migrations."); diff --git a/src/JiShe.IoT.EntityFrameworkCore/EntityFrameworkCore/IoTDbContext.cs b/src/JiShe.IoT.EntityFrameworkCore/EntityFrameworkCore/IoTDbContext.cs index 1c08b3d..387db34 100644 --- a/src/JiShe.IoT.EntityFrameworkCore/EntityFrameworkCore/IoTDbContext.cs +++ b/src/JiShe.IoT.EntityFrameworkCore/EntityFrameworkCore/IoTDbContext.cs @@ -90,7 +90,6 @@ namespace JiShe.IoT.EntityFrameworkCore public DbSet OneNETProductInfo { get; set; } - public IoTDbContext(DbContextOptions options) : base(options) { diff --git a/src/JiShe.IoT.EntityFrameworkCore/EntityFrameworkCore/IoTEntityFrameworkCoreModule.cs b/src/JiShe.IoT.EntityFrameworkCore/EntityFrameworkCore/IoTEntityFrameworkCoreModule.cs index da4ba4d..f7dfe9d 100644 --- a/src/JiShe.IoT.EntityFrameworkCore/EntityFrameworkCore/IoTEntityFrameworkCoreModule.cs +++ b/src/JiShe.IoT.EntityFrameworkCore/EntityFrameworkCore/IoTEntityFrameworkCoreModule.cs @@ -58,10 +58,7 @@ namespace JiShe.IoT.EntityFrameworkCore * See also HayoonKoreaDbContextFactory for EF Core tooling. * https://github.com/abpframework/abp/issues/21879 * */ - options.UseNpgsql(builder => - { - builder.TranslateParameterizedCollectionsToConstants(); - }); + options.UseNpgsql(); }); } } diff --git a/src/JiShe.IoT.EntityFrameworkCore/JiShe.IoT.EntityFrameworkCore.csproj b/src/JiShe.IoT.EntityFrameworkCore/JiShe.IoT.EntityFrameworkCore.csproj index 68639f5..d37dade 100644 --- a/src/JiShe.IoT.EntityFrameworkCore/JiShe.IoT.EntityFrameworkCore.csproj +++ b/src/JiShe.IoT.EntityFrameworkCore/JiShe.IoT.EntityFrameworkCore.csproj @@ -7,9 +7,9 @@ - - - + + + diff --git a/src/JiShe.IoT.EntityFrameworkCore/Migrations/20260115061417_InitialCreate.Designer.cs b/src/JiShe.IoT.EntityFrameworkCore/Migrations/20260115084844_InitialCreate.Designer.cs similarity index 99% rename from src/JiShe.IoT.EntityFrameworkCore/Migrations/20260115061417_InitialCreate.Designer.cs rename to src/JiShe.IoT.EntityFrameworkCore/Migrations/20260115084844_InitialCreate.Designer.cs index c215534..55c9f12 100644 --- a/src/JiShe.IoT.EntityFrameworkCore/Migrations/20260115061417_InitialCreate.Designer.cs +++ b/src/JiShe.IoT.EntityFrameworkCore/Migrations/20260115084844_InitialCreate.Designer.cs @@ -13,7 +13,7 @@ using Volo.Abp.EntityFrameworkCore; namespace JiShe.IoT.Migrations { [DbContext(typeof(IoTDbContext))] - [Migration("20260115061417_InitialCreate")] + [Migration("20260115084844_InitialCreate")] partial class InitialCreate { /// @@ -22,7 +22,7 @@ namespace JiShe.IoT.Migrations #pragma warning disable 612, 618 modelBuilder .HasAnnotation("_Abp_DatabaseProvider", EfCoreDatabaseProvider.PostgreSql) - .HasAnnotation("ProductVersion", "9.0.11") + .HasAnnotation("ProductVersion", "10.0.2") .HasAnnotation("Relational:MaxIdentifierLength", 63); NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); @@ -3361,8 +3361,8 @@ namespace JiShe.IoT.Migrations .HasColumnType("character varying(64)"); b.Property("DeviceInfo") - .HasMaxLength(64) - .HasColumnType("character varying(64)"); + .HasMaxLength(256) + .HasColumnType("character varying(256)"); b.Property("ExtraProperties") .HasColumnType("text") diff --git a/src/JiShe.IoT.EntityFrameworkCore/Migrations/20260115061417_InitialCreate.cs b/src/JiShe.IoT.EntityFrameworkCore/Migrations/20260115084844_InitialCreate.cs similarity index 99% rename from src/JiShe.IoT.EntityFrameworkCore/Migrations/20260115061417_InitialCreate.cs rename to src/JiShe.IoT.EntityFrameworkCore/Migrations/20260115084844_InitialCreate.cs index a5dc2d1..b7b24f7 100644 --- a/src/JiShe.IoT.EntityFrameworkCore/Migrations/20260115061417_InitialCreate.cs +++ b/src/JiShe.IoT.EntityFrameworkCore/Migrations/20260115084844_InitialCreate.cs @@ -465,7 +465,7 @@ namespace JiShe.IoT.Migrations Id = table.Column(type: "uuid", nullable: false), SessionId = table.Column(type: "character varying(128)", maxLength: 128, nullable: false), Device = table.Column(type: "character varying(64)", maxLength: 64, nullable: false), - DeviceInfo = table.Column(type: "character varying(64)", maxLength: 64, nullable: true), + DeviceInfo = table.Column(type: "character varying(256)", maxLength: 256, nullable: true), TenantId = table.Column(type: "uuid", nullable: true), UserId = table.Column(type: "uuid", nullable: false), ClientId = table.Column(type: "character varying(64)", maxLength: 64, nullable: true), diff --git a/src/JiShe.IoT.EntityFrameworkCore/Migrations/IoTDbContextModelSnapshot.cs b/src/JiShe.IoT.EntityFrameworkCore/Migrations/IoTDbContextModelSnapshot.cs index 8a7569d..68b9043 100644 --- a/src/JiShe.IoT.EntityFrameworkCore/Migrations/IoTDbContextModelSnapshot.cs +++ b/src/JiShe.IoT.EntityFrameworkCore/Migrations/IoTDbContextModelSnapshot.cs @@ -19,7 +19,7 @@ namespace JiShe.IoT.Migrations #pragma warning disable 612, 618 modelBuilder .HasAnnotation("_Abp_DatabaseProvider", EfCoreDatabaseProvider.PostgreSql) - .HasAnnotation("ProductVersion", "9.0.11") + .HasAnnotation("ProductVersion", "10.0.2") .HasAnnotation("Relational:MaxIdentifierLength", 63); NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); @@ -3358,8 +3358,8 @@ namespace JiShe.IoT.Migrations .HasColumnType("character varying(64)"); b.Property("DeviceInfo") - .HasMaxLength(64) - .HasColumnType("character varying(64)"); + .HasMaxLength(256) + .HasColumnType("character varying(256)"); b.Property("ExtraProperties") .HasColumnType("text")