From 98d429f7de62b0cd8266542455cacaa941ef5852 Mon Sep 17 00:00:00 2001 From: biss Date: Fri, 24 Jul 2026 11:41:35 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitea/workflows/publish.yml | 4 ++-- .../Authentication/AuthenticationRepository.cs | 2 +- src/Eis.Infrastructure/Data/DatabaseInitializer.cs | 4 ++-- .../Data/DatabaseInitializerTests.cs | 9 +++++++++ 4 files changed, 14 insertions(+), 5 deletions(-) diff --git a/.gitea/workflows/publish.yml b/.gitea/workflows/publish.yml index e1ad998..30b539f 100644 --- a/.gitea/workflows/publish.yml +++ b/.gitea/workflows/publish.yml @@ -105,7 +105,7 @@ jobs: with: images: | docker.io/${{ vars.DOCKERHUB_IMAGE }} - git.biss.click/biss/exam-information-system + git.biss.click/biss/eis-dotnet flavor: latest=auto tags: | type=sha,format=short,prefix=sha- @@ -158,5 +158,5 @@ jobs: ```text docker pull docker.io/${{ vars.DOCKERHUB_IMAGE }}:${{ steps.metadata.outputs.version }} - docker pull git.biss.click/biss/exam-information-system:${{ steps.metadata.outputs.version }} + docker pull git.biss.click/biss/eis-dotnet:${{ steps.metadata.outputs.version }} ``` diff --git a/src/Eis.Infrastructure/Authentication/AuthenticationRepository.cs b/src/Eis.Infrastructure/Authentication/AuthenticationRepository.cs index 58af68e..2c0c31f 100644 --- a/src/Eis.Infrastructure/Authentication/AuthenticationRepository.cs +++ b/src/Eis.Infrastructure/Authentication/AuthenticationRepository.cs @@ -109,7 +109,7 @@ internal sealed class AuthenticationRepository(IRelationalConnectionFactory conn } const string ruleSql = """ - SELECT id, separator FROM number_rules + SELECT id, `separator` FROM number_rules WHERE active = 1 ORDER BY updated_at DESC, id LIMIT 1 """; string? ruleId = null; diff --git a/src/Eis.Infrastructure/Data/DatabaseInitializer.cs b/src/Eis.Infrastructure/Data/DatabaseInitializer.cs index f64e446..ef3092f 100644 --- a/src/Eis.Infrastructure/Data/DatabaseInitializer.cs +++ b/src/Eis.Infrastructure/Data/DatabaseInitializer.cs @@ -102,7 +102,7 @@ internal sealed class DatabaseInitializer( if (await ScalarLongAsync(connection, "SELECT COUNT(*) FROM number_rules", transaction, cancellationToken) > 0) return; await ExecuteAsync(connection, """ - INSERT INTO number_rules (id, name, separator, active, created_by, updated_at) + INSERT INTO number_rules (id, name, `separator`, active, created_by, updated_at) VALUES ('rule_default', @name, '-', 1, 'usr_admin', @updatedAt) """, [("@name", "年度学校性别流水号"), ("@updatedAt", now)], transaction, cancellationToken); @@ -158,7 +158,7 @@ internal sealed class DatabaseInitializer( await ExecuteAsync(connection, """ INSERT INTO admission_number_rules ( - id, code, name, description, separator, segments_json, example, active, created_at + id, code, name, description, `separator`, segments_json, example, active, created_at ) VALUES ( @id, @code, @name, @description, '', @segments, @example, 1, @createdAt ) diff --git a/tests/Eis.Infrastructure.Tests/Data/DatabaseInitializerTests.cs b/tests/Eis.Infrastructure.Tests/Data/DatabaseInitializerTests.cs index 4865a80..01b4639 100644 --- a/tests/Eis.Infrastructure.Tests/Data/DatabaseInitializerTests.cs +++ b/tests/Eis.Infrastructure.Tests/Data/DatabaseInitializerTests.cs @@ -53,6 +53,8 @@ public sealed class DatabaseInitializerTests "SELECT schema_version FROM schema_metadata WHERE id = 1")); Assert.Equal(1, await ScalarAsync(connection, "SELECT COUNT(*) FROM users WHERE id = 'usr_admin' AND role = 'admin' AND admin_level = 'super'")); + Assert.Equal("-", await ScalarTextAsync(connection, + "SELECT `separator` FROM number_rules WHERE id = 'rule_default'")); Assert.Equal(5, await ScalarAsync(connection, "SELECT COUNT(*) FROM workflow_definitions WHERE active = 1")); Assert.Equal(4, await ScalarAsync(connection, @@ -73,6 +75,13 @@ public sealed class DatabaseInitializerTests return Convert.ToInt64(await command.ExecuteScalarAsync()); } + private static async Task ScalarTextAsync(SqliteConnection connection, string sql) + { + await using var command = connection.CreateCommand(); + command.CommandText = sql; + return Convert.ToString(await command.ExecuteScalarAsync()) ?? ""; + } + private static async Task ReadResourceAsync(System.Reflection.Assembly assembly, string name) { await using var stream = assembly.GetManifestResourceStream(name)