20260726225220
This commit is contained in:
1 parent
e3c7c6f8da
commit
a8478d60ed
170 files changed
+6786
-1678
No files matched your search
@@ -1,36 +1,5 @@
|
||||
HELP.md
|
||||
target/
|
||||
.mvn/wrapper/maven-wrapper.jar
|
||||
!**/src/main/**/target/
|
||||
!**/src/test/**/target/
|
||||
# 本地 IP 归属地数据库(二进制,约 11MB,从官方仓库下载,不入库)
|
||||
src/main/resources/ip2region.xdb
|
||||
|
||||
### STS ###
|
||||
.apt_generated
|
||||
.classpath
|
||||
.factorypath
|
||||
.project
|
||||
.settings
|
||||
.springBeans
|
||||
.sts4-cache
|
||||
|
||||
### IntelliJ IDEA ###
|
||||
.idea
|
||||
*.iws
|
||||
*.iml
|
||||
*.ipr
|
||||
|
||||
### NetBeans ###
|
||||
/nbproject/private/
|
||||
/nbbuild/
|
||||
/dist/
|
||||
/nbdist/
|
||||
/.nb-gradle/
|
||||
build/
|
||||
!**/src/main/**/build/
|
||||
!**/src/test/**/build/
|
||||
|
||||
### VS Code ###
|
||||
.vscode/
|
||||
|
||||
### Organization database configs ###
|
||||
/config/dbconfigs/*.properties
|
||||
# 多机构数据库连接配置(含敏感信息,已约定不入库)
|
||||
config/dbconfigs/
|
||||
Generated
+10
@@ -0,0 +1,10 @@
|
||||
# Default ignored files
|
||||
/shelf/
|
||||
/workspace.xml
|
||||
# Editor-based HTTP Client requests
|
||||
/httpRequests/
|
||||
# Ignored default folder with query files
|
||||
/queries/
|
||||
# Datasource local storage ignored files
|
||||
/dataSources/
|
||||
/dataSources.local.xml
|
||||
Generated
+18
@@ -0,0 +1,18 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="CompilerConfiguration">
|
||||
<annotationProcessing>
|
||||
<profile name="Maven default annotation processors profile" enabled="true">
|
||||
<sourceOutputDir name="target/generated-sources/annotations" />
|
||||
<sourceTestOutputDir name="target/generated-test-sources/test-annotations" />
|
||||
<outputRelativeToContentRoot value="true" />
|
||||
<module name="fms-api" />
|
||||
</profile>
|
||||
</annotationProcessing>
|
||||
</component>
|
||||
<component name="JavacSettings">
|
||||
<option name="ADDITIONAL_OPTIONS_OVERRIDE">
|
||||
<module name="fms-api" options="-parameters" />
|
||||
</option>
|
||||
</component>
|
||||
</project>
|
||||
Generated
+6
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="Encoding">
|
||||
<file url="file://$PROJECT_DIR$/src/main/java" charset="UTF-8" />
|
||||
</component>
|
||||
</project>
|
||||
+20
@@ -0,0 +1,20 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="RemoteRepositoriesConfiguration">
|
||||
<remote-repository>
|
||||
<option name="id" value="central" />
|
||||
<option name="name" value="Maven Central repository" />
|
||||
<option name="url" value="https://repo1.maven.org/maven2" />
|
||||
</remote-repository>
|
||||
<remote-repository>
|
||||
<option name="id" value="jboss.community" />
|
||||
<option name="name" value="JBoss Community repository" />
|
||||
<option name="url" value="https://repository.jboss.org/nexus/content/repositories/public/" />
|
||||
</remote-repository>
|
||||
<remote-repository>
|
||||
<option name="id" value="central" />
|
||||
<option name="name" value="Central Repository" />
|
||||
<option name="url" value="https://maven.aliyun.com/repository/central" />
|
||||
</remote-repository>
|
||||
</component>
|
||||
</project>
|
||||
+5
@@ -0,0 +1,5 @@
|
||||
# Local compatibility for a legacy SQL Server that only supports TLS 1.0.
|
||||
# Remove this override after TLS 1.2 is enabled on the database server.
|
||||
jdk.tls.disabledAlgorithms=SSLv3, TLSv1.1, DTLSv1.0, RC4, DES, \
|
||||
MD5withRSA, DH keySize < 1024, EC keySize < 224, 3DES_EDE_CBC, anon, NULL, \
|
||||
ECDH
|
||||
Generated
+12
@@ -0,0 +1,12 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ExternalStorageConfigurationManager" enabled="true" />
|
||||
<component name="MavenProjectsManager">
|
||||
<option name="originalFiles">
|
||||
<list>
|
||||
<option value="$PROJECT_DIR$/pom.xml" />
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_21" project-jdk-name="temurin-21" project-jdk-type="JavaSDK" />
|
||||
</project>
|
||||
Generated
+6
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="VcsDirectoryMappings">
|
||||
<mapping directory="$PROJECT_DIR$/../../.." vcs="Git" />
|
||||
</component>
|
||||
</project>
|
||||
@@ -44,7 +44,7 @@ GO
|
||||
IF @AdminId IS NULL
|
||||
THROW 51001, N'重置会话缺少管理员 ID。', 1;
|
||||
|
||||
CREATE TABLE dbo.b_module (
|
||||
CREATE TABLE dbo.s_module (
|
||||
b_id bigint NOT NULL,
|
||||
b_code varchar(50) NOT NULL,
|
||||
b_parent_id bigint NULL,
|
||||
@@ -56,28 +56,28 @@ GO
|
||||
b_savetable varchar(128) NULL,
|
||||
b_keyfield varchar(50) NULL,
|
||||
b_orderfield varchar(500) NULL,
|
||||
b_canmenu int NOT NULL CONSTRAINT DF_b_module_canmenu DEFAULT (0),
|
||||
b_canuse int NOT NULL CONSTRAINT DF_b_module_canuse DEFAULT (1),
|
||||
b_xh int NOT NULL CONSTRAINT DF_b_module_xh DEFAULT (0),
|
||||
CONSTRAINT PK_b_module PRIMARY KEY (b_id),
|
||||
CONSTRAINT FK_b_module_parent FOREIGN KEY (b_parent_id) REFERENCES dbo.b_module (b_id),
|
||||
CONSTRAINT UQ_b_module_code UNIQUE (b_code),
|
||||
CONSTRAINT CK_b_module_code CHECK (
|
||||
b_canmenu int NOT NULL CONSTRAINT DF_s_module_canmenu DEFAULT (0),
|
||||
b_canuse int NOT NULL CONSTRAINT DF_s_module_canuse DEFAULT (1),
|
||||
b_xh int NOT NULL CONSTRAINT DF_s_module_xh DEFAULT (0),
|
||||
CONSTRAINT PK_s_module PRIMARY KEY (b_id),
|
||||
CONSTRAINT FK_s_module_parent FOREIGN KEY (b_parent_id) REFERENCES dbo.s_module (b_id),
|
||||
CONSTRAINT UQ_s_module_code UNIQUE (b_code),
|
||||
CONSTRAINT CK_s_module_code CHECK (
|
||||
LEN(b_code) BETWEEN 2 AND 50
|
||||
AND b_code COLLATE Latin1_General_100_BIN2 LIKE '[a-z]%'
|
||||
AND b_code COLLATE Latin1_General_100_BIN2 NOT LIKE '%[^a-z0-9_]%'
|
||||
),
|
||||
CONSTRAINT CK_b_module_type CHECK (b_module_type IN ('directory', 'page', 'data')),
|
||||
CONSTRAINT CK_b_module_canmenu CHECK (b_canmenu IN (0, 1)),
|
||||
CONSTRAINT CK_b_module_canuse CHECK (b_canuse IN (0, 1)),
|
||||
CONSTRAINT CK_b_module_directory CHECK (b_module_type <> 'directory' OR (b_route IS NULL AND b_viewtable IS NULL AND b_savetable IS NULL)),
|
||||
CONSTRAINT CK_b_module_page CHECK (b_module_type <> 'page' OR b_route IS NOT NULL),
|
||||
CONSTRAINT CK_b_module_data CHECK (b_module_type <> 'data' OR (b_canmenu = 0 AND b_route IS NULL))
|
||||
CONSTRAINT CK_s_module_type CHECK (b_module_type IN ('directory', 'page', 'data')),
|
||||
CONSTRAINT CK_s_module_canmenu CHECK (b_canmenu IN (0, 1)),
|
||||
CONSTRAINT CK_s_module_canuse CHECK (b_canuse IN (0, 1)),
|
||||
CONSTRAINT CK_s_module_directory CHECK (b_module_type <> 'directory' OR (b_route IS NULL AND b_viewtable IS NULL AND b_savetable IS NULL)),
|
||||
CONSTRAINT CK_s_module_page CHECK (b_module_type <> 'page' OR b_route IS NOT NULL),
|
||||
CONSTRAINT CK_s_module_data CHECK (b_module_type <> 'data' OR (b_canmenu = 0 AND b_route IS NULL))
|
||||
);
|
||||
CREATE UNIQUE INDEX UX_b_module_route ON dbo.b_module (b_route) WHERE b_route IS NOT NULL;
|
||||
CREATE INDEX IX_b_module_parent ON dbo.b_module (b_parent_id, b_xh, b_id);
|
||||
CREATE UNIQUE INDEX UX_s_module_route ON dbo.s_module (b_route) WHERE b_route IS NOT NULL;
|
||||
CREATE INDEX IX_s_module_parent ON dbo.s_module (b_parent_id, b_xh, b_id);
|
||||
|
||||
CREATE TABLE dbo.b_module_field (
|
||||
CREATE TABLE dbo.s_module_field (
|
||||
b_id bigint NOT NULL,
|
||||
b_module_id bigint NOT NULL,
|
||||
b_field varchar(50) NOT NULL,
|
||||
@@ -86,103 +86,100 @@ GO
|
||||
b_type varchar(30) NOT NULL,
|
||||
b_default_value nvarchar(500) NULL,
|
||||
b_options nvarchar(max) NULL,
|
||||
b_canuse int NOT NULL CONSTRAINT DF_b_module_field_canuse DEFAULT (1),
|
||||
CONSTRAINT PK_b_module_field PRIMARY KEY (b_id),
|
||||
CONSTRAINT FK_b_module_field_module FOREIGN KEY (b_module_id) REFERENCES dbo.b_module (b_id),
|
||||
CONSTRAINT UQ_b_module_field UNIQUE (b_module_id, b_field),
|
||||
CONSTRAINT CK_b_module_field_type CHECK (b_type IN ('input', 'textarea', 'number', 'money', 'date', 'datetime', 'switch', 'select')),
|
||||
CONSTRAINT CK_b_module_field_canuse CHECK (b_canuse IN (0, 1)),
|
||||
CONSTRAINT CK_b_module_field_options CHECK (b_options IS NULL OR ISJSON(b_options) = 1)
|
||||
b_canuse int NOT NULL CONSTRAINT DF_s_module_field_canuse DEFAULT (1),
|
||||
CONSTRAINT PK_s_module_field PRIMARY KEY (b_id),
|
||||
CONSTRAINT FK_s_module_field_module FOREIGN KEY (b_module_id) REFERENCES dbo.s_module (b_id),
|
||||
CONSTRAINT UQ_s_module_field UNIQUE (b_module_id, b_field),
|
||||
CONSTRAINT CK_s_module_field_type CHECK (b_type IN ('input', 'textarea', 'number', 'money', 'date', 'datetime', 'switch', 'select')),
|
||||
CONSTRAINT CK_s_module_field_canuse CHECK (b_canuse IN (0, 1)),
|
||||
CONSTRAINT CK_s_module_field_options CHECK (b_options IS NULL OR ISJSON(b_options) = 1)
|
||||
);
|
||||
CREATE INDEX IX_b_module_field_module ON dbo.b_module_field (b_module_id, b_canuse, b_id);
|
||||
CREATE INDEX IX_s_module_field_module ON dbo.s_module_field (b_module_id, b_canuse, b_id);
|
||||
|
||||
CREATE TABLE dbo.b_module_field_group (
|
||||
CREATE TABLE dbo.s_module_field_group (
|
||||
b_id bigint NOT NULL,
|
||||
b_module_id bigint NOT NULL,
|
||||
b_parent_id bigint NULL,
|
||||
b_title nvarchar(100) NOT NULL,
|
||||
b_i18n varchar(150) NULL,
|
||||
b_xh int NOT NULL CONSTRAINT DF_b_module_field_group_xh DEFAULT (0),
|
||||
b_canuse int NOT NULL CONSTRAINT DF_b_module_field_group_canuse DEFAULT (1),
|
||||
CONSTRAINT PK_b_module_field_group PRIMARY KEY (b_id),
|
||||
CONSTRAINT FK_b_module_field_group_module FOREIGN KEY (b_module_id) REFERENCES dbo.b_module (b_id),
|
||||
CONSTRAINT FK_b_module_field_group_parent FOREIGN KEY (b_parent_id) REFERENCES dbo.b_module_field_group (b_id),
|
||||
CONSTRAINT CK_b_module_field_group_canuse CHECK (b_canuse IN (0, 1))
|
||||
b_xh int NOT NULL CONSTRAINT DF_s_module_field_group_xh DEFAULT (0),
|
||||
b_canuse int NOT NULL CONSTRAINT DF_s_module_field_group_canuse DEFAULT (1),
|
||||
CONSTRAINT PK_s_module_field_group PRIMARY KEY (b_id),
|
||||
CONSTRAINT FK_s_module_field_group_module FOREIGN KEY (b_module_id) REFERENCES dbo.s_module (b_id),
|
||||
CONSTRAINT FK_s_module_field_group_parent FOREIGN KEY (b_parent_id) REFERENCES dbo.s_module_field_group (b_id),
|
||||
CONSTRAINT CK_s_module_field_group_canuse CHECK (b_canuse IN (0, 1))
|
||||
);
|
||||
CREATE INDEX IX_b_module_field_group_module ON dbo.b_module_field_group (b_module_id, b_canuse, b_xh, b_id);
|
||||
CREATE INDEX IX_s_module_field_group_module ON dbo.s_module_field_group (b_module_id, b_canuse, b_xh, b_id);
|
||||
|
||||
CREATE TABLE dbo.b_module_field_list (
|
||||
CREATE TABLE dbo.s_module_field_list (
|
||||
b_id bigint NOT NULL,
|
||||
b_module_id bigint NOT NULL,
|
||||
b_field_id bigint NULL,
|
||||
b_group_id bigint NULL,
|
||||
b_title nvarchar(100) NULL,
|
||||
b_i18n varchar(150) NULL,
|
||||
b_visible int NOT NULL CONSTRAINT DF_b_module_field_list_visible DEFAULT (1),
|
||||
b_xh int NOT NULL CONSTRAINT DF_b_module_field_list_xh DEFAULT (0),
|
||||
b_visible int NOT NULL CONSTRAINT DF_s_module_field_list_visible DEFAULT (1),
|
||||
b_xh int NOT NULL CONSTRAINT DF_s_module_field_list_xh DEFAULT (0),
|
||||
b_width int NULL,
|
||||
b_sortable int NOT NULL CONSTRAINT DF_b_module_field_list_sortable DEFAULT (0),
|
||||
CONSTRAINT PK_b_module_field_list PRIMARY KEY (b_id),
|
||||
CONSTRAINT FK_b_module_field_list_module FOREIGN KEY (b_module_id) REFERENCES dbo.b_module (b_id),
|
||||
CONSTRAINT FK_b_module_field_list_field FOREIGN KEY (b_field_id) REFERENCES dbo.b_module_field (b_id),
|
||||
CONSTRAINT FK_b_module_field_list_group FOREIGN KEY (b_group_id) REFERENCES dbo.b_module_field_group (b_id),
|
||||
CONSTRAINT CK_b_module_field_list_visible CHECK (b_visible IN (0, 1)),
|
||||
CONSTRAINT CK_b_module_field_list_sortable CHECK (b_sortable IN (0, 1)),
|
||||
CONSTRAINT CK_b_module_field_list_width CHECK (b_width IS NULL OR b_width > 0)
|
||||
CONSTRAINT PK_s_module_field_list PRIMARY KEY (b_id),
|
||||
CONSTRAINT FK_s_module_field_list_module FOREIGN KEY (b_module_id) REFERENCES dbo.s_module (b_id),
|
||||
CONSTRAINT FK_s_module_field_list_field FOREIGN KEY (b_field_id) REFERENCES dbo.s_module_field (b_id),
|
||||
CONSTRAINT FK_s_module_field_list_group FOREIGN KEY (b_group_id) REFERENCES dbo.s_module_field_group (b_id),
|
||||
CONSTRAINT CK_s_module_field_list_visible CHECK (b_visible IN (0, 1)),
|
||||
CONSTRAINT CK_s_module_field_list_width CHECK (b_width IS NULL OR b_width > 0)
|
||||
);
|
||||
CREATE UNIQUE INDEX UX_b_module_field_list_field ON dbo.b_module_field_list (b_module_id, b_field_id) WHERE b_field_id IS NOT NULL;
|
||||
CREATE INDEX IX_b_module_field_list_tree ON dbo.b_module_field_list (b_module_id, b_group_id, b_xh, b_id);
|
||||
CREATE UNIQUE INDEX UX_s_module_field_list_field ON dbo.s_module_field_list (b_module_id, b_field_id) WHERE b_field_id IS NOT NULL;
|
||||
CREATE INDEX IX_s_module_field_list_tree ON dbo.s_module_field_list (b_module_id, b_group_id, b_xh, b_id);
|
||||
|
||||
CREATE TABLE dbo.b_module_field_edit (
|
||||
CREATE TABLE dbo.s_module_field_edit (
|
||||
b_id bigint NOT NULL,
|
||||
b_module_id bigint NOT NULL,
|
||||
b_field_id bigint NOT NULL,
|
||||
b_required int NOT NULL CONSTRAINT DF_b_module_field_edit_required DEFAULT (0),
|
||||
b_readonly int NOT NULL CONSTRAINT DF_b_module_field_edit_readonly DEFAULT (0),
|
||||
b_disabled int NOT NULL CONSTRAINT DF_b_module_field_edit_disabled DEFAULT (0),
|
||||
b_required int NOT NULL CONSTRAINT DF_s_module_field_edit_required DEFAULT (0),
|
||||
b_readonly int NOT NULL CONSTRAINT DF_s_module_field_edit_readonly DEFAULT (0),
|
||||
b_disabled int NOT NULL CONSTRAINT DF_s_module_field_edit_disabled DEFAULT (0),
|
||||
b_group_id bigint NULL,
|
||||
b_xh int NOT NULL CONSTRAINT DF_b_module_field_edit_xh DEFAULT (0),
|
||||
CONSTRAINT PK_b_module_field_edit PRIMARY KEY (b_id),
|
||||
CONSTRAINT FK_b_module_field_edit_module FOREIGN KEY (b_module_id) REFERENCES dbo.b_module (b_id),
|
||||
CONSTRAINT FK_b_module_field_edit_field FOREIGN KEY (b_field_id) REFERENCES dbo.b_module_field (b_id),
|
||||
CONSTRAINT FK_b_module_field_edit_group FOREIGN KEY (b_group_id) REFERENCES dbo.b_module_field_group (b_id),
|
||||
CONSTRAINT UQ_b_module_field_edit UNIQUE (b_module_id, b_field_id),
|
||||
CONSTRAINT CK_b_module_field_edit_required CHECK (b_required IN (0, 1)),
|
||||
CONSTRAINT CK_b_module_field_edit_readonly CHECK (b_readonly IN (0, 1)),
|
||||
CONSTRAINT CK_b_module_field_edit_disabled CHECK (b_disabled IN (0, 1))
|
||||
b_xh int NOT NULL CONSTRAINT DF_s_module_field_edit_xh DEFAULT (0),
|
||||
CONSTRAINT PK_s_module_field_edit PRIMARY KEY (b_id),
|
||||
CONSTRAINT FK_s_module_field_edit_module FOREIGN KEY (b_module_id) REFERENCES dbo.s_module (b_id),
|
||||
CONSTRAINT FK_s_module_field_edit_field FOREIGN KEY (b_field_id) REFERENCES dbo.s_module_field (b_id),
|
||||
CONSTRAINT FK_s_module_field_edit_group FOREIGN KEY (b_group_id) REFERENCES dbo.s_module_field_group (b_id),
|
||||
CONSTRAINT UQ_s_module_field_edit UNIQUE (b_module_id, b_field_id),
|
||||
CONSTRAINT CK_s_module_field_edit_required CHECK (b_required IN (0, 1)),
|
||||
CONSTRAINT CK_s_module_field_edit_readonly CHECK (b_readonly IN (0, 1)),
|
||||
CONSTRAINT CK_s_module_field_edit_disabled CHECK (b_disabled IN (0, 1))
|
||||
);
|
||||
CREATE INDEX IX_b_module_field_edit_module ON dbo.b_module_field_edit (b_module_id, b_xh, b_id);
|
||||
CREATE INDEX IX_s_module_field_edit_module ON dbo.s_module_field_edit (b_module_id, b_xh, b_id);
|
||||
|
||||
CREATE TABLE dbo.b_module_field_query (
|
||||
CREATE TABLE dbo.s_module_field_query (
|
||||
b_id bigint NOT NULL,
|
||||
b_module_id bigint NOT NULL,
|
||||
b_field_id bigint NOT NULL,
|
||||
b_component varchar(30) NOT NULL,
|
||||
b_operator varchar(20) NOT NULL,
|
||||
b_default_value nvarchar(500) NULL,
|
||||
b_xh int NOT NULL CONSTRAINT DF_b_module_field_query_xh DEFAULT (0),
|
||||
b_canuse int NOT NULL CONSTRAINT DF_b_module_field_query_canuse DEFAULT (1),
|
||||
CONSTRAINT PK_b_module_field_query PRIMARY KEY (b_id),
|
||||
CONSTRAINT FK_b_module_field_query_module FOREIGN KEY (b_module_id) REFERENCES dbo.b_module (b_id),
|
||||
CONSTRAINT FK_b_module_field_query_field FOREIGN KEY (b_field_id) REFERENCES dbo.b_module_field (b_id),
|
||||
CONSTRAINT UQ_b_module_field_query UNIQUE (b_module_id, b_field_id),
|
||||
CONSTRAINT CK_b_module_field_query_operator CHECK (b_operator IN ('=', 'like', 'between', 'in')),
|
||||
CONSTRAINT CK_b_module_field_query_canuse CHECK (b_canuse IN (0, 1))
|
||||
b_xh int NOT NULL CONSTRAINT DF_s_module_field_query_xh DEFAULT (0),
|
||||
b_canuse int NOT NULL CONSTRAINT DF_s_module_field_query_canuse DEFAULT (1),
|
||||
CONSTRAINT PK_s_module_field_query PRIMARY KEY (b_id),
|
||||
CONSTRAINT FK_s_module_field_query_module FOREIGN KEY (b_module_id) REFERENCES dbo.s_module (b_id),
|
||||
CONSTRAINT FK_s_module_field_query_field FOREIGN KEY (b_field_id) REFERENCES dbo.s_module_field (b_id),
|
||||
CONSTRAINT UQ_s_module_field_query UNIQUE (b_module_id, b_field_id),
|
||||
CONSTRAINT CK_s_module_field_query_operator CHECK (b_operator IN ('=', 'like', 'between', 'in')),
|
||||
CONSTRAINT CK_s_module_field_query_canuse CHECK (b_canuse IN (0, 1))
|
||||
);
|
||||
CREATE INDEX IX_b_module_field_query_module ON dbo.b_module_field_query (b_module_id, b_canuse, b_xh, b_id);
|
||||
CREATE INDEX IX_s_module_field_query_module ON dbo.s_module_field_query (b_module_id, b_canuse, b_xh, b_id);
|
||||
|
||||
CREATE TABLE dbo.b_module_power (
|
||||
CREATE TABLE dbo.s_module_power (
|
||||
b_id bigint NOT NULL,
|
||||
b_module_id bigint NOT NULL,
|
||||
b_code varchar(50) NOT NULL,
|
||||
b_name nvarchar(100) NOT NULL,
|
||||
b_i18n varchar(150) NULL,
|
||||
b_xh int NOT NULL CONSTRAINT DF_b_module_power_xh DEFAULT (0),
|
||||
b_canuse int NOT NULL CONSTRAINT DF_b_module_power_canuse DEFAULT (1),
|
||||
CONSTRAINT PK_b_module_power PRIMARY KEY (b_id),
|
||||
CONSTRAINT FK_b_module_power_module FOREIGN KEY (b_module_id) REFERENCES dbo.b_module (b_id),
|
||||
CONSTRAINT UQ_b_module_power UNIQUE (b_module_id, b_code),
|
||||
CONSTRAINT CK_b_module_power_canuse CHECK (b_canuse IN (0, 1))
|
||||
b_xh int NOT NULL CONSTRAINT DF_s_module_power_xh DEFAULT (0),
|
||||
b_canuse int NOT NULL CONSTRAINT DF_s_module_power_canuse DEFAULT (1),
|
||||
CONSTRAINT PK_s_module_power PRIMARY KEY (b_id),
|
||||
CONSTRAINT FK_s_module_power_module FOREIGN KEY (b_module_id) REFERENCES dbo.s_module (b_id),
|
||||
CONSTRAINT UQ_s_module_power UNIQUE (b_module_id, b_code),
|
||||
CONSTRAINT CK_s_module_power_canuse CHECK (b_canuse IN (0, 1))
|
||||
);
|
||||
|
||||
CREATE TABLE dbo.b_user_module (
|
||||
@@ -193,7 +190,7 @@ GO
|
||||
b_inputdatetime datetime NOT NULL CONSTRAINT DF_b_user_module_inputdatetime DEFAULT (GETDATE()),
|
||||
CONSTRAINT PK_b_user_module PRIMARY KEY (b_id),
|
||||
CONSTRAINT FK_b_user_module_user FOREIGN KEY (b_user_id) REFERENCES dbo.b_user (b_id),
|
||||
CONSTRAINT FK_b_user_module_module FOREIGN KEY (b_module_id) REFERENCES dbo.b_module (b_id),
|
||||
CONSTRAINT FK_b_user_module_module FOREIGN KEY (b_module_id) REFERENCES dbo.s_module (b_id),
|
||||
CONSTRAINT FK_b_user_module_inputuser FOREIGN KEY (b_inputuser_id) REFERENCES dbo.b_user (b_id),
|
||||
CONSTRAINT UQ_b_user_module UNIQUE (b_user_id, b_module_id)
|
||||
);
|
||||
@@ -206,7 +203,7 @@ GO
|
||||
b_inputdatetime datetime NOT NULL CONSTRAINT DF_b_user_power_inputdatetime DEFAULT (GETDATE()),
|
||||
CONSTRAINT PK_b_user_power PRIMARY KEY (b_id),
|
||||
CONSTRAINT FK_b_user_power_user FOREIGN KEY (b_user_id) REFERENCES dbo.b_user (b_id),
|
||||
CONSTRAINT FK_b_user_power_power FOREIGN KEY (b_power_id) REFERENCES dbo.b_module_power (b_id),
|
||||
CONSTRAINT FK_b_user_power_power FOREIGN KEY (b_power_id) REFERENCES dbo.s_module_power (b_id),
|
||||
CONSTRAINT FK_b_user_power_inputuser FOREIGN KEY (b_inputuser_id) REFERENCES dbo.b_user (b_id),
|
||||
CONSTRAINT UQ_b_user_power UNIQUE (b_user_id, b_power_id)
|
||||
);
|
||||
@@ -223,11 +220,11 @@ GO
|
||||
|
||||
DECLARE @SystemId bigint = 910000000000000001;
|
||||
DECLARE @MetadataId bigint = 910000000000000002;
|
||||
INSERT INTO dbo.b_module (b_id, b_code, b_parent_id, b_name, b_i18n, b_module_type, b_route, b_canmenu, b_canuse, b_xh) VALUES
|
||||
INSERT INTO dbo.s_module (b_id, b_code, b_parent_id, b_name, b_i18n, b_module_type, b_route, b_canmenu, b_canuse, b_xh) VALUES
|
||||
(@SystemId, 'm_system', NULL, N'系统管理', 'module.m_system', 'directory', NULL, 1, 1, 100),
|
||||
(@MetadataId, 'm_metadata', @SystemId, N'元数据配置', 'module.m_metadata', 'page', '/system/metadata', 1, 1, 10);
|
||||
|
||||
INSERT INTO dbo.b_module_power (b_id, b_module_id, b_code, b_name, b_i18n, b_xh, b_canuse) VALUES
|
||||
INSERT INTO dbo.s_module_power (b_id, b_module_id, b_code, b_name, b_i18n, b_xh, b_canuse) VALUES
|
||||
(910000000000000101, @MetadataId, 'create', N'新增', 'power.m_metadata.create', 10, 1),
|
||||
(910000000000000102, @MetadataId, 'update', N'保存', 'power.m_metadata.update', 20, 1),
|
||||
(910000000000000103, @MetadataId, 'delete', N'删除', 'power.m_metadata.delete', 30, 1),
|
||||
@@ -237,7 +234,7 @@ GO
|
||||
(910000000000000201, @AdminId, @MetadataId, @AdminId);
|
||||
INSERT INTO dbo.b_user_power (b_id, b_user_id, b_power_id, b_inputuser_id)
|
||||
SELECT 910000000000000300 + ROW_NUMBER() OVER (ORDER BY b_id), @AdminId, b_id, @AdminId
|
||||
FROM dbo.b_module_power;
|
||||
FROM dbo.s_module_power;
|
||||
|
||||
EXEC sys.sp_set_session_context @key = N'allow_g3soft', @value = NULL;
|
||||
EXEC sys.sp_set_session_context @key = N'reset_admin_id', @value = NULL;
|
||||
|
||||
@@ -20,7 +20,7 @@ BEGIN TRANSACTION;
|
||||
|
||||
-- 系统管理目录(000 脚本播种)
|
||||
DECLARE @SystemId bigint = (
|
||||
SELECT TOP (1) b_id FROM dbo.b_module WHERE b_code = N'm_system'
|
||||
SELECT TOP (1) b_id FROM dbo.s_module WHERE b_code = N'm_system'
|
||||
);
|
||||
|
||||
-- 1. 多语言类型表
|
||||
@@ -47,11 +47,11 @@ BEGIN TRANSACTION;
|
||||
END
|
||||
|
||||
-- 2. 注册模块与管理员权限(仅在模块不存在时播种)
|
||||
IF NOT EXISTS (SELECT 1 FROM dbo.b_module WHERE b_code = N'm_i18n_type')
|
||||
IF NOT EXISTS (SELECT 1 FROM dbo.s_module WHERE b_code = N'm_i18n_type')
|
||||
BEGIN
|
||||
DECLARE @I18nTypeId bigint = 910000000000000003;
|
||||
|
||||
INSERT INTO dbo.b_module (
|
||||
INSERT INTO dbo.s_module (
|
||||
b_id, b_code, b_parent_id, b_name, b_i18n, b_module_type,
|
||||
b_route, b_canmenu, b_canuse, b_xh
|
||||
) VALUES (
|
||||
@@ -59,7 +59,7 @@ BEGIN TRANSACTION;
|
||||
'page', N'/system/i18n-type', 1, 1, 20
|
||||
);
|
||||
|
||||
INSERT INTO dbo.b_module_power (b_id, b_module_id, b_code, b_name, b_i18n, b_xh, b_canuse) VALUES
|
||||
INSERT INTO dbo.s_module_power (b_id, b_module_id, b_code, b_name, b_i18n, b_xh, b_canuse) VALUES
|
||||
(910000000000000105, @I18nTypeId, 'create', N'新增', 'power.m_i18n_type.create', 10, 1),
|
||||
(910000000000000106, @I18nTypeId, 'update', N'保存', 'power.m_i18n_type.update', 20, 1),
|
||||
(910000000000000107, @I18nTypeId, 'delete', N'删除', 'power.m_i18n_type.delete', 30, 1);
|
||||
@@ -71,7 +71,7 @@ BEGIN TRANSACTION;
|
||||
|
||||
INSERT INTO dbo.b_user_power (b_id, b_user_id, b_power_id, b_inputuser_id)
|
||||
SELECT 910000000000000303 + ROW_NUMBER() OVER (ORDER BY b_id), @AdminId, b_id, @AdminId
|
||||
FROM dbo.b_module_power
|
||||
FROM dbo.s_module_power
|
||||
WHERE b_module_id = @I18nTypeId;
|
||||
END
|
||||
END
|
||||
|
||||
@@ -5,20 +5,20 @@
|
||||
- m_system 仅在其不存在时创建;
|
||||
- m_i18n_type 仅在其父级未指向系统管理目录时才更新。
|
||||
|
||||
依赖:b_module 表已存在(由 001_add_i18n_type.sql 或业务库结构保证)。
|
||||
依赖:s_module 表已存在(由 001_add_i18n_type.sql 或业务库结构保证)。
|
||||
*/
|
||||
|
||||
SET NOCOUNT ON;
|
||||
BEGIN TRANSACTION;
|
||||
|
||||
-- 系统管理目录(若不存在则创建)
|
||||
DECLARE @SystemId bigint = (SELECT TOP (1) b_id FROM dbo.b_module WHERE b_code = N'm_system');
|
||||
DECLARE @SystemId bigint = (SELECT TOP (1) b_id FROM dbo.s_module WHERE b_code = N'm_system');
|
||||
|
||||
IF @SystemId IS NULL
|
||||
BEGIN
|
||||
SET @SystemId = 911000000000000001;
|
||||
|
||||
INSERT INTO dbo.b_module (
|
||||
INSERT INTO dbo.s_module (
|
||||
b_id, b_code, b_parent_id, b_name, b_i18n, b_module_type,
|
||||
b_canmenu, b_canuse, b_xh
|
||||
) VALUES (
|
||||
@@ -28,7 +28,7 @@ BEGIN TRANSACTION;
|
||||
END
|
||||
|
||||
-- 多语言类型挂到系统管理目录
|
||||
UPDATE dbo.b_module
|
||||
UPDATE dbo.s_module
|
||||
SET b_parent_id = @SystemId
|
||||
WHERE b_code = N'm_i18n_type'
|
||||
AND (b_parent_id IS NULL OR b_parent_id <> @SystemId);
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
/*
|
||||
登录日志表 s_log_login:记录每次登录尝试(成功/失败)的客户端环境与结果,用于登录审计。
|
||||
后端在登录时统一采集 IP、IP 归属地、浏览器/版本、操作系统/版本、设备类型、原始 User-Agent,
|
||||
并通过通用 saveobjt 接口写入本表;前端通过分页接口只读展示。
|
||||
表名使用 s_ 前缀以区别于业务模块表(b_)。
|
||||
|
||||
可重复执行:通过 sys.tables 存在性判断避免重复建表。
|
||||
*/
|
||||
SET NOCOUNT ON;
|
||||
|
||||
BEGIN TRANSACTION;
|
||||
|
||||
IF NOT EXISTS (SELECT 1 FROM sys.tables WHERE name = N's_log_login')
|
||||
BEGIN
|
||||
CREATE TABLE dbo.s_log_login (
|
||||
b_id bigint NOT NULL,
|
||||
b_org_id nvarchar(50) NULL,
|
||||
b_user_id bigint NULL,
|
||||
b_account nvarchar(50) NULL,
|
||||
b_login_time datetime NOT NULL CONSTRAINT DF_s_log_login_time DEFAULT (GETDATE()),
|
||||
b_ip nvarchar(50) NULL,
|
||||
b_ip_location nvarchar(200) NULL,
|
||||
b_browser nvarchar(100) NULL,
|
||||
b_browser_version nvarchar(50) NULL,
|
||||
b_os nvarchar(100) NULL,
|
||||
b_os_version nvarchar(50) NULL,
|
||||
b_device_type nvarchar(20) NULL,
|
||||
b_user_agent nvarchar(max) NULL,
|
||||
b_login_result int NOT NULL CONSTRAINT DF_s_log_login_result DEFAULT (0),
|
||||
b_fail_reason nvarchar(200) NULL,
|
||||
b_session_id nvarchar(50) NULL,
|
||||
CONSTRAINT PK_s_log_login PRIMARY KEY (b_id)
|
||||
);
|
||||
|
||||
CREATE INDEX IX_s_log_login_time ON dbo.s_log_login (b_login_time DESC, b_id);
|
||||
CREATE INDEX IX_s_log_login_account ON dbo.s_log_login (b_account, b_login_time DESC);
|
||||
CREATE INDEX IX_s_log_login_result ON dbo.s_log_login (b_login_result, b_login_time DESC);
|
||||
END
|
||||
|
||||
COMMIT TRANSACTION;
|
||||
@@ -0,0 +1,163 @@
|
||||
/*
|
||||
将新元数据结构的 b_module* 表无损重命名为 s_module*,与旧系统模块表前缀保持一致。
|
||||
字段名 b_module_id、b_module_type 以及用户授权表 b_user_module、b_user_power 保持不变。
|
||||
|
||||
如果数据库仍存在旧版 dbo.s_module(没有 b_code 字段),脚本会终止,避免覆盖同名旧结构。
|
||||
*/
|
||||
SET NOCOUNT ON;
|
||||
SET XACT_ABORT ON;
|
||||
|
||||
BEGIN TRANSACTION;
|
||||
|
||||
IF OBJECT_ID(N'dbo.s_module', N'U') IS NOT NULL
|
||||
AND COL_LENGTH(N'dbo.s_module', N'b_code') IS NULL
|
||||
THROW 51020, N'检测到旧版 dbo.s_module,无法自动迁移新模块元数据表。', 1;
|
||||
|
||||
DECLARE @Tables TABLE (
|
||||
b_old_name sysname NOT NULL,
|
||||
b_new_name sysname NOT NULL,
|
||||
b_xh int NOT NULL
|
||||
);
|
||||
|
||||
INSERT INTO @Tables (b_old_name, b_new_name, b_xh) VALUES
|
||||
(N'b_module', N's_module', 10),
|
||||
(N'b_module_field', N's_module_field', 20),
|
||||
(N'b_module_field_group', N's_module_field_group', 30),
|
||||
(N'b_module_field_list', N's_module_field_list', 40),
|
||||
(N'b_module_field_edit', N's_module_field_edit', 50),
|
||||
(N'b_module_field_query', N's_module_field_query', 60),
|
||||
(N'b_module_power', N's_module_power', 70);
|
||||
|
||||
IF EXISTS (
|
||||
SELECT 1
|
||||
FROM @Tables
|
||||
WHERE OBJECT_ID(N'dbo.' + b_old_name, N'U') IS NOT NULL
|
||||
AND OBJECT_ID(N'dbo.' + b_new_name, N'U') IS NOT NULL
|
||||
)
|
||||
THROW 51021, N'模块新旧表名同时存在,已取消自动重命名。', 1;
|
||||
|
||||
DECLARE @OldName sysname;
|
||||
DECLARE @NewName sysname;
|
||||
DECLARE @QualifiedName nvarchar(517);
|
||||
|
||||
DECLARE table_cursor CURSOR LOCAL FAST_FORWARD FOR
|
||||
SELECT b_old_name, b_new_name
|
||||
FROM @Tables
|
||||
ORDER BY b_xh;
|
||||
|
||||
OPEN table_cursor;
|
||||
FETCH NEXT FROM table_cursor INTO @OldName, @NewName;
|
||||
|
||||
WHILE @@FETCH_STATUS = 0
|
||||
BEGIN
|
||||
IF OBJECT_ID(N'dbo.' + @OldName, N'U') IS NOT NULL
|
||||
BEGIN
|
||||
SET @QualifiedName = N'dbo.' + QUOTENAME(@OldName);
|
||||
EXEC sys.sp_rename @objname = @QualifiedName, @newname = @NewName, @objtype = N'OBJECT';
|
||||
END;
|
||||
FETCH NEXT FROM table_cursor INTO @OldName, @NewName;
|
||||
END;
|
||||
|
||||
CLOSE table_cursor;
|
||||
DEALLOCATE table_cursor;
|
||||
|
||||
IF OBJECT_ID(N'dbo.s_module', N'U') IS NOT NULL
|
||||
BEGIN
|
||||
UPDATE module
|
||||
SET b_viewtable = CASE
|
||||
WHEN module.b_viewtable = tables.b_old_name THEN tables.b_new_name
|
||||
ELSE N'dbo.' + tables.b_new_name
|
||||
END
|
||||
FROM dbo.s_module AS module
|
||||
INNER JOIN @Tables AS tables
|
||||
ON module.b_viewtable IN (tables.b_old_name, N'dbo.' + tables.b_old_name);
|
||||
|
||||
UPDATE module
|
||||
SET b_savetable = CASE
|
||||
WHEN module.b_savetable = tables.b_old_name THEN tables.b_new_name
|
||||
ELSE N'dbo.' + tables.b_new_name
|
||||
END
|
||||
FROM dbo.s_module AS module
|
||||
INNER JOIN @Tables AS tables
|
||||
ON module.b_savetable IN (tables.b_old_name, N'dbo.' + tables.b_old_name);
|
||||
END;
|
||||
|
||||
DECLARE @ObjectName sysname;
|
||||
DECLARE @RenamedObjectName sysname;
|
||||
|
||||
DECLARE object_cursor CURSOR LOCAL FAST_FORWARD FOR
|
||||
SELECT o.name, REPLACE(o.name, N'b_module', N's_module')
|
||||
FROM sys.objects AS o
|
||||
WHERE o.parent_object_id IN (
|
||||
OBJECT_ID(N'dbo.s_module'),
|
||||
OBJECT_ID(N'dbo.s_module_field'),
|
||||
OBJECT_ID(N'dbo.s_module_field_group'),
|
||||
OBJECT_ID(N'dbo.s_module_field_list'),
|
||||
OBJECT_ID(N'dbo.s_module_field_edit'),
|
||||
OBJECT_ID(N'dbo.s_module_field_query'),
|
||||
OBJECT_ID(N'dbo.s_module_power')
|
||||
)
|
||||
AND o.name LIKE N'%b[_]module%'
|
||||
AND NOT EXISTS (
|
||||
SELECT 1
|
||||
FROM sys.objects AS renamed
|
||||
WHERE renamed.name = REPLACE(o.name, N'b_module', N's_module')
|
||||
);
|
||||
|
||||
OPEN object_cursor;
|
||||
FETCH NEXT FROM object_cursor INTO @ObjectName, @RenamedObjectName;
|
||||
|
||||
WHILE @@FETCH_STATUS = 0
|
||||
BEGIN
|
||||
SET @QualifiedName = N'dbo.' + QUOTENAME(@ObjectName);
|
||||
EXEC sys.sp_rename
|
||||
@objname = @QualifiedName,
|
||||
@newname = @RenamedObjectName,
|
||||
@objtype = N'OBJECT';
|
||||
FETCH NEXT FROM object_cursor INTO @ObjectName, @RenamedObjectName;
|
||||
END;
|
||||
|
||||
CLOSE object_cursor;
|
||||
DEALLOCATE object_cursor;
|
||||
|
||||
DECLARE @TableName sysname;
|
||||
|
||||
DECLARE index_cursor CURSOR LOCAL FAST_FORWARD FOR
|
||||
SELECT t.name, i.name, REPLACE(i.name, N'b_module', N's_module')
|
||||
FROM sys.indexes AS i
|
||||
INNER JOIN sys.tables AS t ON t.object_id = i.object_id
|
||||
WHERE t.name IN (
|
||||
N's_module',
|
||||
N's_module_field',
|
||||
N's_module_field_group',
|
||||
N's_module_field_list',
|
||||
N's_module_field_edit',
|
||||
N's_module_field_query',
|
||||
N's_module_power'
|
||||
)
|
||||
AND i.name LIKE N'%b[_]module%'
|
||||
AND NOT EXISTS (
|
||||
SELECT 1
|
||||
FROM sys.indexes AS renamed
|
||||
WHERE renamed.object_id = i.object_id
|
||||
AND renamed.name = REPLACE(i.name, N'b_module', N's_module')
|
||||
);
|
||||
|
||||
OPEN index_cursor;
|
||||
FETCH NEXT FROM index_cursor INTO @TableName, @ObjectName, @RenamedObjectName;
|
||||
|
||||
WHILE @@FETCH_STATUS = 0
|
||||
BEGIN
|
||||
SET @QualifiedName =
|
||||
N'dbo.' + QUOTENAME(@TableName) + N'.' + QUOTENAME(@ObjectName);
|
||||
EXEC sys.sp_rename
|
||||
@objname = @QualifiedName,
|
||||
@newname = @RenamedObjectName,
|
||||
@objtype = N'INDEX';
|
||||
FETCH NEXT FROM index_cursor INTO @TableName, @ObjectName, @RenamedObjectName;
|
||||
END;
|
||||
|
||||
CLOSE index_cursor;
|
||||
DEALLOCATE index_cursor;
|
||||
|
||||
COMMIT TRANSACTION;
|
||||
@@ -61,6 +61,18 @@
|
||||
<scope>runtime</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.lionsoul</groupId>
|
||||
<artifactId>ip2region</artifactId>
|
||||
<version>3.3.7</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>com.github.ua-parser</groupId>
|
||||
<artifactId>uap-java</artifactId>
|
||||
<version>1.6.1</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-devtools</artifactId>
|
||||
|
||||
@@ -6,6 +6,7 @@ import cn.g3soft.fmsapi.utils.ApiResponse;
|
||||
import cn.g3soft.fmsapi.utils.ParamUtils;
|
||||
import cn.g3soft.fmsapi.utils.StringUtils;
|
||||
import jakarta.annotation.Resource;
|
||||
import jakarta.servlet.http.HttpServletRequest;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
@@ -24,7 +25,8 @@ public class AuthController {
|
||||
|
||||
@PostMapping("/login")
|
||||
public ApiResponse<Map<String, Object>> login(
|
||||
@RequestBody(required = false) Map<String, Object> request
|
||||
@RequestBody(required = false) Map<String, Object> request,
|
||||
HttpServletRequest httpRequest
|
||||
) throws SQLException {
|
||||
String orgId = ParamUtils.getString(request, "orgid");
|
||||
String userId = ParamUtils.getString(request, "userid");
|
||||
@@ -40,7 +42,8 @@ public class AuthController {
|
||||
Optional<Map<String, Object>> loginResponse = authService.login(
|
||||
orgId,
|
||||
userId,
|
||||
password
|
||||
password,
|
||||
httpRequest
|
||||
);
|
||||
if (loginResponse.isEmpty()) {
|
||||
return ApiResponse.fail(
|
||||
|
||||
@@ -3,6 +3,7 @@ package cn.g3soft.fmsapi.service;
|
||||
import cn.g3soft.fmsapi.utils.DbUtils;
|
||||
import cn.g3soft.fmsapi.utils.JwtUtils;
|
||||
import jakarta.annotation.Resource;
|
||||
import jakarta.servlet.http.HttpServletRequest;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.nio.charset.StandardCharsets;
|
||||
@@ -27,10 +28,14 @@ public class AuthService {
|
||||
@Resource
|
||||
private ActiveSessionRegistry activeSessionRegistry;
|
||||
|
||||
@Resource
|
||||
private LoginLogService loginLogService;
|
||||
|
||||
public Optional<Map<String, Object>> login(
|
||||
String orgId,
|
||||
String userId,
|
||||
String password
|
||||
String password,
|
||||
HttpServletRequest request
|
||||
) throws SQLException {
|
||||
String normalizedOrgId = orgId.trim().toUpperCase(Locale.ROOT);
|
||||
String normalizedUserId = userId.trim();
|
||||
@@ -40,25 +45,36 @@ public class AuthService {
|
||||
);
|
||||
|
||||
if (users.isEmpty()) {
|
||||
loginLogService.recordLogin(
|
||||
normalizedOrgId, normalizedUserId, null,
|
||||
false, "账号不存在", null, request);
|
||||
return Optional.empty();
|
||||
}
|
||||
|
||||
Map<String, Object> account = users.getFirst();
|
||||
Map<String, Object> account = users.get(0);
|
||||
String storedPassword = getString(account, "b_password");
|
||||
if (!passwordMatches(storedPassword, password)) {
|
||||
loginLogService.recordLogin(
|
||||
normalizedOrgId, normalizedUserId, null,
|
||||
false, "密码错误", null, request);
|
||||
return Optional.empty();
|
||||
}
|
||||
|
||||
String accountId = getString(account, "b_account");
|
||||
long userPrimaryKey = getLong(account, "b_id");
|
||||
String name = getString(account, "b_name");
|
||||
String sessionId = UUID.randomUUID().toString();
|
||||
String token = jwtUtils.generateToken(accountId, normalizedOrgId, sessionId);
|
||||
activeSessionRegistry.activate(normalizedOrgId, accountId, sessionId);
|
||||
|
||||
loginLogService.recordLogin(
|
||||
normalizedOrgId, accountId, userPrimaryKey,
|
||||
true, null, sessionId, request);
|
||||
|
||||
Map<String, Object> user = new LinkedHashMap<>();
|
||||
user.put("id", userPrimaryKey);
|
||||
user.put("account", accountId);
|
||||
user.put("name", getString(account, "b_name"));
|
||||
user.put("name", name);
|
||||
|
||||
Map<String, Object> result = new LinkedHashMap<>();
|
||||
result.put("token", token);
|
||||
|
||||
@@ -0,0 +1,83 @@
|
||||
package cn.g3soft.fmsapi.service;
|
||||
|
||||
import cn.g3soft.fmsapi.database.OrgContext;
|
||||
import cn.g3soft.fmsapi.utils.ClientInfo;
|
||||
import cn.g3soft.fmsapi.utils.ClientInfoExtractor;
|
||||
import cn.g3soft.fmsapi.utils.snowflake.idgen.IdGenerator;
|
||||
import jakarta.servlet.http.HttpServletRequest;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.sql.Timestamp;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.LinkedHashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 登录日志服务:在登录成功或失败时采集客户端信息,并通过通用 saveobjt 机制写入 s_log_login 表。
|
||||
* 写日志失败不影响登录主流程;机构上下文通过 OrgContext 临时设置并在 finally 中清理。
|
||||
*/
|
||||
@Service
|
||||
public class LoginLogService {
|
||||
|
||||
private static final Logger log = LoggerFactory.getLogger(LoginLogService.class);
|
||||
|
||||
private final DataSaveService dataSaveService;
|
||||
private final ClientInfoExtractor clientInfoExtractor;
|
||||
|
||||
public LoginLogService(DataSaveService dataSaveService, ClientInfoExtractor clientInfoExtractor) {
|
||||
this.dataSaveService = dataSaveService;
|
||||
this.clientInfoExtractor = clientInfoExtractor;
|
||||
}
|
||||
|
||||
public void recordLogin(
|
||||
String orgId,
|
||||
String account,
|
||||
Long userId,
|
||||
boolean success,
|
||||
String failReason,
|
||||
String sessionId,
|
||||
HttpServletRequest request
|
||||
) {
|
||||
if (orgId == null || orgId.isBlank()) {
|
||||
return;
|
||||
}
|
||||
try {
|
||||
ClientInfo info = clientInfoExtractor.extract(request);
|
||||
|
||||
Map<String, Object> row = new LinkedHashMap<>();
|
||||
row.put("b_id", IdGenerator.nextId());
|
||||
row.put("b_org_id", orgId);
|
||||
row.put("b_user_id", userId);
|
||||
row.put("b_account", account);
|
||||
row.put("b_login_time", Timestamp.valueOf(LocalDateTime.now()));
|
||||
row.put("b_ip", info.ip());
|
||||
row.put("b_ip_location", info.ipLocation());
|
||||
row.put("b_browser", info.browser());
|
||||
row.put("b_browser_version", info.browserVersion());
|
||||
row.put("b_os", info.os());
|
||||
row.put("b_os_version", info.osVersion());
|
||||
row.put("b_device_type", info.deviceType());
|
||||
row.put("b_user_agent", info.userAgent());
|
||||
row.put("b_login_result", success ? 1 : 0);
|
||||
row.put("b_fail_reason", failReason);
|
||||
row.put("b_session_id", sessionId);
|
||||
|
||||
Map<String, Object> tableOp = new LinkedHashMap<>();
|
||||
tableOp.put("table", "s_log_login");
|
||||
tableOp.put("key_field", "b_id");
|
||||
tableOp.put("inserts", List.of(row));
|
||||
|
||||
OrgContext.setOrgId(orgId);
|
||||
try {
|
||||
dataSaveService.save(List.of(tableOp));
|
||||
} finally {
|
||||
OrgContext.clear();
|
||||
}
|
||||
} catch (Exception e) {
|
||||
log.error("写入登录日志失败 orgId={} account={}", orgId, account, e);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
package cn.g3soft.fmsapi.utils;
|
||||
|
||||
/**
|
||||
* 登录时采集到的客户端环境信息载体。
|
||||
*/
|
||||
public record ClientInfo(
|
||||
String ip,
|
||||
String ipLocation,
|
||||
String browser,
|
||||
String browserVersion,
|
||||
String os,
|
||||
String osVersion,
|
||||
String deviceType,
|
||||
String userAgent) {
|
||||
}
|
||||
@@ -0,0 +1,110 @@
|
||||
package cn.g3soft.fmsapi.utils;
|
||||
|
||||
import jakarta.servlet.http.HttpServletRequest;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.stereotype.Component;
|
||||
import ua_parser.Client;
|
||||
import ua_parser.Parser;
|
||||
|
||||
/**
|
||||
* 组合 IpUtils、IpRegionSearcher 与 uap-java,从 HttpServletRequest 提取客户端环境信息。
|
||||
*/
|
||||
@Component
|
||||
public class ClientInfoExtractor {
|
||||
|
||||
private static final Logger log = LoggerFactory.getLogger(ClientInfoExtractor.class);
|
||||
|
||||
private final IpRegionSearcher ipRegionSearcher;
|
||||
|
||||
// uap-java 的 Parser 加载一次正则表达式后即可安全复用(无状态、线程安全)
|
||||
private final Parser uaParser = new Parser();
|
||||
|
||||
public ClientInfoExtractor(IpRegionSearcher ipRegionSearcher) {
|
||||
this.ipRegionSearcher = ipRegionSearcher;
|
||||
}
|
||||
|
||||
public ClientInfo extract(HttpServletRequest request) {
|
||||
if (request == null) {
|
||||
return new ClientInfo("unknown", "未知", "未知", "", "未知", "", "Unknown", null);
|
||||
}
|
||||
String ip = IpUtils.getClientIp(request);
|
||||
String userAgent = request.getHeader("User-Agent");
|
||||
String ipLocation = ipRegionSearcher.search(ip);
|
||||
|
||||
String browser = "未知";
|
||||
String browserVersion = "";
|
||||
String os = "未知";
|
||||
String osVersion = "";
|
||||
String deviceType = "Unknown";
|
||||
|
||||
if (userAgent != null && !userAgent.isBlank()) {
|
||||
try {
|
||||
Client client = uaParser.parse(userAgent);
|
||||
if (client.userAgent != null) {
|
||||
browser = orDefault(client.userAgent.family, "未知");
|
||||
browserVersion = buildVersion(
|
||||
client.userAgent.major, client.userAgent.minor, client.userAgent.patch);
|
||||
}
|
||||
if (client.os != null) {
|
||||
os = orDefault(client.os.family, "未知");
|
||||
osVersion = buildVersion(client.os.major, client.os.minor, client.os.patch);
|
||||
}
|
||||
if (client.device != null) {
|
||||
deviceType = deriveDeviceType(client.device.family, userAgent);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
log.warn("User-Agent 解析失败: {}", userAgent, e);
|
||||
}
|
||||
}
|
||||
return new ClientInfo(ip, ipLocation, browser, browserVersion, os, osVersion, deviceType, userAgent);
|
||||
}
|
||||
|
||||
private static String buildVersion(String major, String minor, String patch) {
|
||||
StringBuilder sb = new StringBuilder();
|
||||
if (isNotBlank(major)) {
|
||||
sb.append(major);
|
||||
}
|
||||
if (isNotBlank(minor)) {
|
||||
sb.append('.').append(minor);
|
||||
}
|
||||
if (isNotBlank(patch)) {
|
||||
sb.append('.').append(patch);
|
||||
}
|
||||
return sb.toString();
|
||||
}
|
||||
|
||||
private static String deriveDeviceType(String deviceFamily, String userAgent) {
|
||||
if (deviceFamily == null) {
|
||||
return "Unknown";
|
||||
}
|
||||
String family = deviceFamily.toLowerCase();
|
||||
if (family.contains("ipad") || family.contains("tablet") || family.contains("kindle")) {
|
||||
return "Tablet";
|
||||
}
|
||||
if (family.contains("spider") || family.contains("bot") || family.contains("crawler")) {
|
||||
return "Bot";
|
||||
}
|
||||
if (family.contains("iphone") || family.contains("android")
|
||||
|| family.contains("windows phone") || family.contains("phone")) {
|
||||
return "Mobile";
|
||||
}
|
||||
// device.family 通常为 "Other",再依据 UA 关键字推断
|
||||
String ua = userAgent.toLowerCase();
|
||||
if (ua.contains("mobile")) {
|
||||
return "Mobile";
|
||||
}
|
||||
if (family.equals("other")) {
|
||||
return "Desktop";
|
||||
}
|
||||
return "Desktop";
|
||||
}
|
||||
|
||||
private static String orDefault(String value, String def) {
|
||||
return (value == null || value.isBlank()) ? def : value;
|
||||
}
|
||||
|
||||
private static boolean isNotBlank(String s) {
|
||||
return s != null && !s.isBlank();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,114 @@
|
||||
package cn.g3soft.fmsapi.utils;
|
||||
|
||||
import jakarta.annotation.PostConstruct;
|
||||
import org.lionsoul.ip2region.xdb.LongByteArray;
|
||||
import org.lionsoul.ip2region.xdb.Searcher;
|
||||
import org.lionsoul.ip2region.xdb.Version;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.core.io.ClassPathResource;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
|
||||
/**
|
||||
* 基于本地 ip2region xdb 数据库的 IP 归属地查询。
|
||||
* 启动时将 xdb 文件读入内存,避免每次查询的磁盘 IO。
|
||||
*/
|
||||
@Component
|
||||
public class IpRegionSearcher {
|
||||
|
||||
private static final Logger log = LoggerFactory.getLogger(IpRegionSearcher.class);
|
||||
|
||||
private Searcher searcher;
|
||||
|
||||
@PostConstruct
|
||||
public void init() {
|
||||
try (InputStream in = new ClassPathResource("ip2region.xdb").getInputStream()) {
|
||||
byte[] bytes = in.readAllBytes();
|
||||
LongByteArray buffer = new LongByteArray();
|
||||
buffer.append(bytes);
|
||||
searcher = Searcher.newWithBuffer(Version.IPv4, buffer);
|
||||
log.info("ip2region Searcher 初始化完成,数据大小 {} 字节", bytes.length);
|
||||
} catch (IOException e) {
|
||||
log.error("未找到 classpath 下的 ip2region.xdb,IP 归属地将返回「未知」", e);
|
||||
searcher = null;
|
||||
} catch (Exception e) {
|
||||
log.error("ip2region Searcher 初始化失败,IP 归属地将返回「未知」", e);
|
||||
searcher = null;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据 IP 查询归属地,返回格式如 国家|省|市|运营商。
|
||||
* 内网/保留地址直接返回「内网」;任何异常或数据缺失时返回「未知」,不影响主流程。
|
||||
*/
|
||||
public String search(String ip) {
|
||||
if (ip == null || ip.isBlank()) {
|
||||
return "未知";
|
||||
}
|
||||
if (searcher == null) {
|
||||
return "未知";
|
||||
}
|
||||
if (isInternalIp(ip)) {
|
||||
return "内网";
|
||||
}
|
||||
try {
|
||||
String region = searcher.search(ip);
|
||||
return (region == null || region.isBlank()) ? "未知" : region;
|
||||
} catch (Exception e) {
|
||||
log.warn("ip2region 查询失败 ip={}", ip, e);
|
||||
return "未知";
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 判断是否为内网/保留地址(IPv4 RFC1918、回环、链路本地、未指定地址,以及 IPv6 回环/唯一本地地址)。
|
||||
*/
|
||||
private static boolean isInternalIp(String ip) {
|
||||
if (ip.contains(".")) {
|
||||
String v4 = ip;
|
||||
int colon = ip.lastIndexOf(':');
|
||||
if (colon >= 0 && ip.substring(colon + 1).contains(".")) {
|
||||
v4 = ip.substring(colon + 1);
|
||||
}
|
||||
String[] parts = v4.split("\\.");
|
||||
if (parts.length != 4) {
|
||||
return false;
|
||||
}
|
||||
int[] o = new int[4];
|
||||
try {
|
||||
for (int i = 0; i < 4; i++) {
|
||||
int n = Integer.parseUnsignedInt(parts[i]);
|
||||
if (n > 255) {
|
||||
return false;
|
||||
}
|
||||
o[i] = n;
|
||||
}
|
||||
} catch (NumberFormatException e) {
|
||||
return false;
|
||||
}
|
||||
if (o[0] == 0) {
|
||||
return true; // 0.0.0.0/8 未指定
|
||||
}
|
||||
if (o[0] == 10) {
|
||||
return true; // 10.0.0.0/8
|
||||
}
|
||||
if (o[0] == 127) {
|
||||
return true; // 127.0.0.0/8 回环
|
||||
}
|
||||
if (o[0] == 169 && o[1] == 254) {
|
||||
return true; // 169.254.0.0/16 链路本地
|
||||
}
|
||||
if (o[0] == 172 && o[1] >= 16 && o[1] <= 31) {
|
||||
return true; // 172.16.0.0/12
|
||||
}
|
||||
return o[0] == 192 && o[1] == 168; // 192.168.0.0/16
|
||||
}
|
||||
if (ip.equalsIgnoreCase("::1")) {
|
||||
return true; // IPv6 回环
|
||||
}
|
||||
return ip.startsWith("fe80") || ip.startsWith("fc") || ip.startsWith("fd");
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,51 @@
|
||||
package cn.g3soft.fmsapi.utils;
|
||||
|
||||
import jakarta.servlet.http.HttpServletRequest;
|
||||
|
||||
/**
|
||||
* 从 HttpServletRequest 中解析客户端真实 IP。
|
||||
* 获取顺序兼容 Nginx 等反向代理:X-Real-IP → X-Forwarded-For(首个) → 远程地址。
|
||||
*/
|
||||
public final class IpUtils {
|
||||
|
||||
private static final String UNKNOWN = "unknown";
|
||||
|
||||
private IpUtils() {
|
||||
}
|
||||
|
||||
public static String getClientIp(HttpServletRequest request) {
|
||||
if (request == null) {
|
||||
return UNKNOWN;
|
||||
}
|
||||
String ip = request.getHeader("X-Real-IP");
|
||||
if (isEffective(ip)) {
|
||||
return ip.trim();
|
||||
}
|
||||
ip = request.getHeader("X-Forwarded-For");
|
||||
if (isEffective(ip)) {
|
||||
// X-Forwarded-For 可能包含多个以逗号分隔的 IP,取第一个
|
||||
return ip.split(",")[0].trim();
|
||||
}
|
||||
ip = request.getHeader("Proxy-Client-IP");
|
||||
if (isEffective(ip)) {
|
||||
return ip.trim();
|
||||
}
|
||||
ip = request.getHeader("WL-Proxy-Client-IP");
|
||||
if (isEffective(ip)) {
|
||||
return ip.trim();
|
||||
}
|
||||
ip = request.getRemoteAddr();
|
||||
if (ip == null || ip.isBlank()) {
|
||||
return UNKNOWN;
|
||||
}
|
||||
// 归一化 IPv6 本地回环地址
|
||||
if ("0:0:0:0:0:0:0:1".equals(ip)) {
|
||||
ip = "127.0.0.1";
|
||||
}
|
||||
return ip.trim();
|
||||
}
|
||||
|
||||
private static boolean isEffective(String ip) {
|
||||
return ip != null && !ip.isBlank() && !UNKNOWN.equalsIgnoreCase(ip.trim());
|
||||
}
|
||||
}
|
||||
@@ -20,6 +20,7 @@ class AuthServiceTests {
|
||||
private DbUtils dbUtils;
|
||||
private JwtUtils jwtUtils;
|
||||
private ActiveSessionRegistry activeSessionRegistry;
|
||||
private LoginLogService loginLogService;
|
||||
private AuthService authService;
|
||||
|
||||
@BeforeEach
|
||||
@@ -27,6 +28,7 @@ class AuthServiceTests {
|
||||
dbUtils = mock(DbUtils.class);
|
||||
jwtUtils = mock(JwtUtils.class);
|
||||
activeSessionRegistry = new ActiveSessionRegistry();
|
||||
loginLogService = mock(LoginLogService.class);
|
||||
authService = new AuthService();
|
||||
|
||||
ReflectionTestUtils.setField(authService, "dbUtils", dbUtils);
|
||||
@@ -36,6 +38,7 @@ class AuthServiceTests {
|
||||
"activeSessionRegistry",
|
||||
activeSessionRegistry
|
||||
);
|
||||
ReflectionTestUtils.setField(authService, "loginLogService", loginLogService);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -56,7 +59,7 @@ class AuthServiceTests {
|
||||
))
|
||||
.thenReturn("token");
|
||||
|
||||
Optional<Map<String, Object>> result = authService.login("fms", "g3soft", "");
|
||||
Optional<Map<String, Object>> result = authService.login("fms", "g3soft", "", null);
|
||||
|
||||
assertThat(result).isPresent();
|
||||
assertThat(result.orElseThrow()).containsEntry("token", "token");
|
||||
|
||||
@@ -0,0 +1,26 @@
|
||||
server:
|
||||
port: 8088
|
||||
servlet:
|
||||
context-path: /api
|
||||
|
||||
spring:
|
||||
application:
|
||||
name: fms-api
|
||||
|
||||
fms:
|
||||
auth:
|
||||
jwt-secret: "${FMS_JWT_SECRET:fms-api-development-jwt-secret-change-me}"
|
||||
jwt-expiration: 24h
|
||||
database:
|
||||
config-dir: ./config/dbconfigs
|
||||
pool:
|
||||
initial-size: 0
|
||||
min-idle: 0
|
||||
max-active: 10
|
||||
max-wait: 5000
|
||||
validation-query: SELECT 1
|
||||
test-while-idle: true
|
||||
test-on-borrow: false
|
||||
test-on-return: false
|
||||
time-between-eviction-runs: 60s
|
||||
min-evictable-idle-time: 5m
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
Binary file not shown.
+44
@@ -0,0 +1,44 @@
|
||||
cn\g3soft\fmsapi\utils\ParamUtils.class
|
||||
cn\g3soft\fmsapi\utils\JwtUtils.class
|
||||
cn\g3soft\fmsapi\database\OrgDataSourceFactory.class
|
||||
cn\g3soft\fmsapi\database\OrgContext.class
|
||||
cn\g3soft\fmsapi\database\OrgDatabaseProperties$Pool.class
|
||||
cn\g3soft\fmsapi\FmsApiApplication.class
|
||||
cn\g3soft\fmsapi\utils\DbUtils$TableMetadata.class
|
||||
cn\g3soft\fmsapi\utils\snowflake\idgen\IdGenerator.class
|
||||
cn\g3soft\fmsapi\utils\JwtUtils$TokenClaims.class
|
||||
cn\g3soft\fmsapi\utils\IpRegionSearcher.class
|
||||
cn\g3soft\fmsapi\exception\GlobalExceptionHandler.class
|
||||
cn\g3soft\fmsapi\service\ActiveSessionRegistry.class
|
||||
cn\g3soft\fmsapi\service\DataSaveService.class
|
||||
cn\g3soft\fmsapi\service\DataService.class
|
||||
cn\g3soft\fmsapi\utils\snowflake\contract\IdGeneratorOptions.class
|
||||
cn\g3soft\fmsapi\config\JwtAuthFilter.class
|
||||
cn\g3soft\fmsapi\utils\DbUtils$ColumnMetadata.class
|
||||
cn\g3soft\fmsapi\utils\snowflake\core\SnowWorkerM1.class
|
||||
cn\g3soft\fmsapi\database\OrgDataSourceManager.class
|
||||
cn\g3soft\fmsapi\controller\AuthController.class
|
||||
cn\g3soft\fmsapi\utils\ClientInfo.class
|
||||
cn\g3soft\fmsapi\utils\snowflake\contract\IIdGenerator.class
|
||||
cn\g3soft\fmsapi\utils\snowflake\contract\ISnowWorker.class
|
||||
cn\g3soft\fmsapi\utils\snowflake\contract\OverCostActionArg.class
|
||||
cn\g3soft\fmsapi\utils\snowflake\idgen\DefaultIdGenerator.class
|
||||
cn\g3soft\fmsapi\utils\IpUtils.class
|
||||
cn\g3soft\fmsapi\utils\StringUtils.class
|
||||
cn\g3soft\fmsapi\utils\DbUtils.class
|
||||
cn\g3soft\fmsapi\controller\DataController.class
|
||||
cn\g3soft\fmsapi\database\OrgDatabaseConfigLoader.class
|
||||
cn\g3soft\fmsapi\exception\SaveObjectException.class
|
||||
cn\g3soft\fmsapi\service\AuthService.class
|
||||
cn\g3soft\fmsapi\config\AuthProperties.class
|
||||
cn\g3soft\fmsapi\database\OrgDatabaseConfig.class
|
||||
cn\g3soft\fmsapi\database\OrgRoutingDataSource.class
|
||||
cn\g3soft\fmsapi\exception\BusinessException.class
|
||||
cn\g3soft\fmsapi\utils\ApiResponse.class
|
||||
cn\g3soft\fmsapi\utils\snowflake\core\SnowWorkerM2.class
|
||||
cn\g3soft\fmsapi\service\ActiveSessionRegistry$AccountKey.class
|
||||
cn\g3soft\fmsapi\utils\DbUtils$PageResult.class
|
||||
cn\g3soft\fmsapi\config\JacksonConfig.class
|
||||
cn\g3soft\fmsapi\utils\snowflake\contract\IdGeneratorException.class
|
||||
cn\g3soft\fmsapi\exception\AuthenticationException.class
|
||||
cn\g3soft\fmsapi\database\OrgDatabaseProperties.class
|
||||
+40
@@ -0,0 +1,40 @@
|
||||
D:\workspace\code\fms\fms-api\src\main\java\cn\g3soft\fmsapi\config\AuthProperties.java
|
||||
D:\workspace\code\fms\fms-api\src\main\java\cn\g3soft\fmsapi\config\JacksonConfig.java
|
||||
D:\workspace\code\fms\fms-api\src\main\java\cn\g3soft\fmsapi\config\JwtAuthFilter.java
|
||||
D:\workspace\code\fms\fms-api\src\main\java\cn\g3soft\fmsapi\controller\AuthController.java
|
||||
D:\workspace\code\fms\fms-api\src\main\java\cn\g3soft\fmsapi\controller\DataController.java
|
||||
D:\workspace\code\fms\fms-api\src\main\java\cn\g3soft\fmsapi\database\OrgContext.java
|
||||
D:\workspace\code\fms\fms-api\src\main\java\cn\g3soft\fmsapi\database\OrgDatabaseConfig.java
|
||||
D:\workspace\code\fms\fms-api\src\main\java\cn\g3soft\fmsapi\database\OrgDatabaseConfigLoader.java
|
||||
D:\workspace\code\fms\fms-api\src\main\java\cn\g3soft\fmsapi\database\OrgDatabaseProperties.java
|
||||
D:\workspace\code\fms\fms-api\src\main\java\cn\g3soft\fmsapi\database\OrgDataSourceFactory.java
|
||||
D:\workspace\code\fms\fms-api\src\main\java\cn\g3soft\fmsapi\database\OrgDataSourceManager.java
|
||||
D:\workspace\code\fms\fms-api\src\main\java\cn\g3soft\fmsapi\database\OrgRoutingDataSource.java
|
||||
D:\workspace\code\fms\fms-api\src\main\java\cn\g3soft\fmsapi\exception\AuthenticationException.java
|
||||
D:\workspace\code\fms\fms-api\src\main\java\cn\g3soft\fmsapi\exception\BusinessException.java
|
||||
D:\workspace\code\fms\fms-api\src\main\java\cn\g3soft\fmsapi\exception\GlobalExceptionHandler.java
|
||||
D:\workspace\code\fms\fms-api\src\main\java\cn\g3soft\fmsapi\exception\SaveObjectException.java
|
||||
D:\workspace\code\fms\fms-api\src\main\java\cn\g3soft\fmsapi\FmsApiApplication.java
|
||||
D:\workspace\code\fms\fms-api\src\main\java\cn\g3soft\fmsapi\service\ActiveSessionRegistry.java
|
||||
D:\workspace\code\fms\fms-api\src\main\java\cn\g3soft\fmsapi\service\AuthService.java
|
||||
D:\workspace\code\fms\fms-api\src\main\java\cn\g3soft\fmsapi\service\DataSaveService.java
|
||||
D:\workspace\code\fms\fms-api\src\main\java\cn\g3soft\fmsapi\service\DataService.java
|
||||
D:\workspace\code\fms\fms-api\src\main\java\cn\g3soft\fmsapi\service\LoginLogService.java
|
||||
D:\workspace\code\fms\fms-api\src\main\java\cn\g3soft\fmsapi\utils\ApiResponse.java
|
||||
D:\workspace\code\fms\fms-api\src\main\java\cn\g3soft\fmsapi\utils\ClientInfo.java
|
||||
D:\workspace\code\fms\fms-api\src\main\java\cn\g3soft\fmsapi\utils\ClientInfoExtractor.java
|
||||
D:\workspace\code\fms\fms-api\src\main\java\cn\g3soft\fmsapi\utils\DbUtils.java
|
||||
D:\workspace\code\fms\fms-api\src\main\java\cn\g3soft\fmsapi\utils\IpRegionSearcher.java
|
||||
D:\workspace\code\fms\fms-api\src\main\java\cn\g3soft\fmsapi\utils\IpUtils.java
|
||||
D:\workspace\code\fms\fms-api\src\main\java\cn\g3soft\fmsapi\utils\JwtUtils.java
|
||||
D:\workspace\code\fms\fms-api\src\main\java\cn\g3soft\fmsapi\utils\ParamUtils.java
|
||||
D:\workspace\code\fms\fms-api\src\main\java\cn\g3soft\fmsapi\utils\snowflake\contract\IdGeneratorException.java
|
||||
D:\workspace\code\fms\fms-api\src\main\java\cn\g3soft\fmsapi\utils\snowflake\contract\IdGeneratorOptions.java
|
||||
D:\workspace\code\fms\fms-api\src\main\java\cn\g3soft\fmsapi\utils\snowflake\contract\IIdGenerator.java
|
||||
D:\workspace\code\fms\fms-api\src\main\java\cn\g3soft\fmsapi\utils\snowflake\contract\ISnowWorker.java
|
||||
D:\workspace\code\fms\fms-api\src\main\java\cn\g3soft\fmsapi\utils\snowflake\contract\OverCostActionArg.java
|
||||
D:\workspace\code\fms\fms-api\src\main\java\cn\g3soft\fmsapi\utils\snowflake\core\SnowWorkerM1.java
|
||||
D:\workspace\code\fms\fms-api\src\main\java\cn\g3soft\fmsapi\utils\snowflake\core\SnowWorkerM2.java
|
||||
D:\workspace\code\fms\fms-api\src\main\java\cn\g3soft\fmsapi\utils\snowflake\idgen\DefaultIdGenerator.java
|
||||
D:\workspace\code\fms\fms-api\src\main\java\cn\g3soft\fmsapi\utils\snowflake\idgen\IdGenerator.java
|
||||
D:\workspace\code\fms\fms-api\src\main\java\cn\g3soft\fmsapi\utils\StringUtils.java
|
||||
+9
@@ -0,0 +1,9 @@
|
||||
cn\g3soft\fmsapi\database\OrgDatabaseConfigLoaderTests.class
|
||||
cn\g3soft\fmsapi\database\OrgDataSourceFactoryTests.class
|
||||
cn\g3soft\fmsapi\service\AuthServiceTests.class
|
||||
cn\g3soft\fmsapi\utils\JwtUtilsTests.class
|
||||
cn\g3soft\fmsapi\exception\GlobalExceptionHandlerTests.class
|
||||
cn\g3soft\fmsapi\FmsApiApplicationTests.class
|
||||
cn\g3soft\fmsapi\service\DataSaveServiceTests$JdbcFixture.class
|
||||
cn\g3soft\fmsapi\service\ActiveSessionRegistryTests.class
|
||||
cn\g3soft\fmsapi\service\DataSaveServiceTests.class
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
D:\workspace\code\fms\fms-api\src\test\java\cn\g3soft\fmsapi\database\OrgDatabaseConfigLoaderTests.java
|
||||
D:\workspace\code\fms\fms-api\src\test\java\cn\g3soft\fmsapi\database\OrgDataSourceFactoryTests.java
|
||||
D:\workspace\code\fms\fms-api\src\test\java\cn\g3soft\fmsapi\exception\GlobalExceptionHandlerTests.java
|
||||
D:\workspace\code\fms\fms-api\src\test\java\cn\g3soft\fmsapi\FmsApiApplicationTests.java
|
||||
D:\workspace\code\fms\fms-api\src\test\java\cn\g3soft\fmsapi\service\ActiveSessionRegistryTests.java
|
||||
D:\workspace\code\fms\fms-api\src\test\java\cn\g3soft\fmsapi\service\AuthServiceTests.java
|
||||
D:\workspace\code\fms\fms-api\src\test\java\cn\g3soft\fmsapi\service\DataSaveServiceTests.java
|
||||
D:\workspace\code\fms\fms-api\src\test\java\cn\g3soft\fmsapi\utils\JwtUtilsTests.java
|
||||
@@ -0,0 +1,5 @@
|
||||
# Created at 2026-07-22T21:37:44.167
|
||||
Boot Manifest-JAR contains absolute paths in classpath 'D:\workspace\code\fms\fms-api\target\test-classes'
|
||||
Hint: <argLine>-Djdk.net.URLClassPath.disableClassPathURLCheck=true</argLine>
|
||||
'other' has different root
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
# Created at 2026-07-26T13:34:26.389
|
||||
Boot Manifest-JAR contains absolute paths in classpath 'D:\workspace\code\fms\fms-api\target\test-classes'
|
||||
Hint: <argLine>-Djdk.net.URLClassPath.disableClassPathURLCheck=true</argLine>
|
||||
'other' has different root
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
# Created at 2026-07-26T13:52:25.410
|
||||
Boot Manifest-JAR contains absolute paths in classpath 'D:\workspace\code\fms\fms-api\target\test-classes'
|
||||
Hint: <argLine>-Djdk.net.URLClassPath.disableClassPathURLCheck=true</argLine>
|
||||
'other' has different root
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
# Created at 2026-07-26T13:55:36.766
|
||||
Boot Manifest-JAR contains absolute paths in classpath 'D:\workspace\code\fms\fms-api\target\test-classes'
|
||||
Hint: <argLine>-Djdk.net.URLClassPath.disableClassPathURLCheck=true</argLine>
|
||||
'other' has different root
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
# Created at 2026-07-26T21:40:45.645
|
||||
Boot Manifest-JAR contains absolute paths in classpath 'D:\workspace\code\fms\fms-api\target\test-classes'
|
||||
Hint: <argLine>-Djdk.net.URLClassPath.disableClassPathURLCheck=true</argLine>
|
||||
'other' has different root
|
||||
|
||||
+96
@@ -0,0 +1,96 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<testsuite xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="https://maven.apache.org/surefire/maven-surefire-plugin/xsd/surefire-test-report.xsd" version="3.0.2" name="cn.g3soft.fmsapi.FmsApiApplicationTests" time="1.861" tests="1" errors="0" skipped="0" failures="0" flakes="0">
|
||||
<properties>
|
||||
<property name="java.specification.version" value="21"/>
|
||||
<property name="sun.cpu.isalist" value="amd64"/>
|
||||
<property name="sun.jnu.encoding" value="GBK"/>
|
||||
<property name="java.class.path" value="D:\workspace\code\fms\fms-api\target\test-classes;D:\workspace\code\fms\fms-api\target\classes;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-webmvc\4.1.0\spring-boot-starter-webmvc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter\4.1.0\spring-boot-starter-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-logging\4.1.0\spring-boot-starter-logging-4.1.0.jar;C:\Users\admin\.m2\repository\ch\qos\logback\logback-classic\1.5.34\logback-classic-1.5.34.jar;C:\Users\admin\.m2\repository\ch\qos\logback\logback-core\1.5.34\logback-core-1.5.34.jar;C:\Users\admin\.m2\repository\org\apache\logging\log4j\log4j-to-slf4j\2.25.4\log4j-to-slf4j-2.25.4.jar;C:\Users\admin\.m2\repository\org\apache\logging\log4j\log4j-api\2.25.4\log4j-api-2.25.4.jar;C:\Users\admin\.m2\repository\org\slf4j\jul-to-slf4j\2.0.18\jul-to-slf4j-2.0.18.jar;C:\Users\admin\.m2\repository\jakarta\annotation\jakarta.annotation-api\3.0.0\jakarta.annotation-api-3.0.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-jackson\4.1.0\spring-boot-starter-jackson-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-jackson\4.1.0\spring-boot-jackson-4.1.0.jar;C:\Users\admin\.m2\repository\tools\jackson\core\jackson-databind\3.1.4\jackson-databind-3.1.4.jar;C:\Users\admin\.m2\repository\tools\jackson\core\jackson-core\3.1.4\jackson-core-3.1.4.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-tomcat\4.1.0\spring-boot-starter-tomcat-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-tomcat-runtime\4.1.0\spring-boot-starter-tomcat-runtime-4.1.0.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-core\11.0.22\tomcat-embed-core-11.0.22.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-el\11.0.22\tomcat-embed-el-11.0.22.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-websocket\11.0.22\tomcat-embed-websocket-11.0.22.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-tomcat\4.1.0\spring-boot-tomcat-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-http-converter\4.1.0\spring-boot-http-converter-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-web\7.0.8\spring-web-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-beans\7.0.8\spring-beans-7.0.8.jar;C:\Users\admin\.m2\repository\io\micrometer\micrometer-observation\1.17.0\micrometer-observation-1.17.0.jar;C:\Users\admin\.m2\repository\io\micrometer\micrometer-commons\1.17.0\micrometer-commons-1.17.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-webmvc\4.1.0\spring-boot-webmvc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-servlet\4.1.0\spring-boot-servlet-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-webmvc\7.0.8\spring-webmvc-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-aop\7.0.8\spring-aop-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-expression\7.0.8\spring-expression-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-jdbc\4.1.0\spring-boot-starter-jdbc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-jdbc\4.1.0\spring-boot-jdbc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-sql\4.1.0\spring-boot-sql-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-transaction\4.1.0\spring-boot-transaction-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-persistence\4.1.0\spring-boot-persistence-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-tx\7.0.8\spring-tx-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-jdbc\7.0.8\spring-jdbc-7.0.8.jar;C:\Users\admin\.m2\repository\com\zaxxer\HikariCP\7.0.2\HikariCP-7.0.2.jar;C:\Users\admin\.m2\repository\org\slf4j\slf4j-api\2.0.18\slf4j-api-2.0.18.jar;C:\Users\admin\.m2\repository\com\alibaba\druid\1.2.18\druid-1.2.18.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-api\0.12.6\jjwt-api-0.12.6.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-impl\0.12.6\jjwt-impl-0.12.6.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-jackson\0.12.6\jjwt-jackson-0.12.6.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-databind\2.21.4\jackson-databind-2.21.4.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-annotations\2.21\jackson-annotations-2.21.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-core\2.21.4\jackson-core-2.21.4.jar;C:\Users\admin\.m2\repository\org\lionsoul\ip2region\3.3.7\ip2region-3.3.7.jar;C:\Users\admin\.m2\repository\com\github\ua-parser\uap-java\1.6.1\uap-java-1.6.1.jar;C:\Users\admin\.m2\repository\org\yaml\snakeyaml\2.6\snakLine truncated
|
||||
<property name="java.vm.vendor" value="Eclipse Adoptium"/>
|
||||
<property name="sun.arch.data.model" value="64"/>
|
||||
<property name="user.variant" value=""/>
|
||||
<property name="java.vendor.url" value="https://adoptium.net/"/>
|
||||
<property name="user.timezone" value="Asia/Shanghai"/>
|
||||
<property name="os.name" value="Windows 11"/>
|
||||
<property name="java.vm.specification.version" value="21"/>
|
||||
<property name="APPLICATION_NAME" value="fms-api"/>
|
||||
<property name="sun.java.launcher" value="SUN_STANDARD"/>
|
||||
<property name="user.country" value="CN"/>
|
||||
<property name="sun.boot.library.path" value="D:\devtool\jdk\jdk21\bin"/>
|
||||
<property name="sun.java.command" value="C:\Users\admin\AppData\Local\Temp\surefire10791345176578591782\surefirebooter-20260726214045610_3.jar C:\Users\admin\AppData\Local\Temp\surefire10791345176578591782 2026-07-26T21-40-45_527-jvmRun1 surefire-20260726214045610_1tmp surefire_0-20260726214045610_2tmp"/>
|
||||
<property name="jdk.debug" value="release"/>
|
||||
<property name="surefire.test.class.path" value="D:\workspace\code\fms\fms-api\target\test-classes;D:\workspace\code\fms\fms-api\target\classes;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-webmvc\4.1.0\spring-boot-starter-webmvc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter\4.1.0\spring-boot-starter-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-logging\4.1.0\spring-boot-starter-logging-4.1.0.jar;C:\Users\admin\.m2\repository\ch\qos\logback\logback-classic\1.5.34\logback-classic-1.5.34.jar;C:\Users\admin\.m2\repository\ch\qos\logback\logback-core\1.5.34\logback-core-1.5.34.jar;C:\Users\admin\.m2\repository\org\apache\logging\log4j\log4j-to-slf4j\2.25.4\log4j-to-slf4j-2.25.4.jar;C:\Users\admin\.m2\repository\org\apache\logging\log4j\log4j-api\2.25.4\log4j-api-2.25.4.jar;C:\Users\admin\.m2\repository\org\slf4j\jul-to-slf4j\2.0.18\jul-to-slf4j-2.0.18.jar;C:\Users\admin\.m2\repository\jakarta\annotation\jakarta.annotation-api\3.0.0\jakarta.annotation-api-3.0.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-jackson\4.1.0\spring-boot-starter-jackson-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-jackson\4.1.0\spring-boot-jackson-4.1.0.jar;C:\Users\admin\.m2\repository\tools\jackson\core\jackson-databind\3.1.4\jackson-databind-3.1.4.jar;C:\Users\admin\.m2\repository\tools\jackson\core\jackson-core\3.1.4\jackson-core-3.1.4.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-tomcat\4.1.0\spring-boot-starter-tomcat-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-tomcat-runtime\4.1.0\spring-boot-starter-tomcat-runtime-4.1.0.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-core\11.0.22\tomcat-embed-core-11.0.22.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-el\11.0.22\tomcat-embed-el-11.0.22.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-websocket\11.0.22\tomcat-embed-websocket-11.0.22.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-tomcat\4.1.0\spring-boot-tomcat-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-http-converter\4.1.0\spring-boot-http-converter-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-web\7.0.8\spring-web-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-beans\7.0.8\spring-beans-7.0.8.jar;C:\Users\admin\.m2\repository\io\micrometer\micrometer-observation\1.17.0\micrometer-observation-1.17.0.jar;C:\Users\admin\.m2\repository\io\micrometer\micrometer-commons\1.17.0\micrometer-commons-1.17.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-webmvc\4.1.0\spring-boot-webmvc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-servlet\4.1.0\spring-boot-servlet-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-webmvc\7.0.8\spring-webmvc-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-aop\7.0.8\spring-aop-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-expression\7.0.8\spring-expression-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-jdbc\4.1.0\spring-boot-starter-jdbc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-jdbc\4.1.0\spring-boot-jdbc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-sql\4.1.0\spring-boot-sql-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-transaction\4.1.0\spring-boot-transaction-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-persistence\4.1.0\spring-boot-persistence-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-tx\7.0.8\spring-tx-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-jdbc\7.0.8\spring-jdbc-7.0.8.jar;C:\Users\admin\.m2\repository\com\zaxxer\HikariCP\7.0.2\HikariCP-7.0.2.jar;C:\Users\admin\.m2\repository\org\slf4j\slf4j-api\2.0.18\slf4j-api-2.0.18.jar;C:\Users\admin\.m2\repository\com\alibaba\druid\1.2.18\druid-1.2.18.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-api\0.12.6\jjwt-api-0.12.6.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-impl\0.12.6\jjwt-impl-0.12.6.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-jackson\0.12.6\jjwt-jackson-0.12.6.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-databind\2.21.4\jackson-databind-2.21.4.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-annotations\2.21\jackson-annotations-2.21.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-core\2.21.4\jackson-core-2.21.4.jar;C:\Users\admin\.m2\repository\org\lionsoul\ip2region\3.3.7\ip2region-3.3.7.jar;C:\Users\admin\.m2\repository\com\github\ua-parser\uap-java\1.6.1\uap-java-1.6.1.jar;C:\Users\admin\.m2\repository\org\yaml\snakeyamlLine truncated
|
||||
<property name="sun.cpu.endian" value="little"/>
|
||||
<property name="user.home" value="C:\Users\admin"/>
|
||||
<property name="user.language" value="zh"/>
|
||||
<property name="java.specification.vendor" value="Oracle Corporation"/>
|
||||
<property name="java.version.date" value="2026-04-21"/>
|
||||
<property name="java.home" value="D:\devtool\jdk\jdk21"/>
|
||||
<property name="file.separator" value="\"/>
|
||||
<property name="basedir" value="D:\workspace\code\fms\fms-api"/>
|
||||
<property name="java.vm.compressedOopsMode" value="Zero based"/>
|
||||
<property name="line.separator" value=" "/>
|
||||
<property name="java.vm.specification.vendor" value="Oracle Corporation"/>
|
||||
<property name="java.specification.name" value="Java Platform API Specification"/>
|
||||
<property name="FILE_LOG_CHARSET" value="UTF-8"/>
|
||||
<property name="java.awt.headless" value="true"/>
|
||||
<property name="surefire.real.class.path" value="C:\Users\admin\AppData\Local\Temp\surefire10791345176578591782\surefirebooter-20260726214045610_3.jar"/>
|
||||
<property name="user.script" value=""/>
|
||||
<property name="sun.management.compiler" value="HotSpot 64-Bit Tiered Compilers"/>
|
||||
<property name="java.runtime.version" value="21.0.11+10-LTS"/>
|
||||
<property name="user.name" value="admin"/>
|
||||
<property name="stdout.encoding" value="GBK"/>
|
||||
<property name="path.separator" value=";"/>
|
||||
<property name="os.version" value="10.0"/>
|
||||
<property name="java.runtime.name" value="OpenJDK Runtime Environment"/>
|
||||
<property name="file.encoding" value="UTF-8"/>
|
||||
<property name="java.vm.name" value="OpenJDK 64-Bit Server VM"/>
|
||||
<property name="java.vendor.version" value="Temurin-21.0.11+10"/>
|
||||
<property name="localRepository" value="C:\Users\admin\.m2\repository"/>
|
||||
<property name="java.vendor.url.bug" value="https://github.com/adoptium/adoptium-support/issues"/>
|
||||
<property name="java.io.tmpdir" value="C:\Users\admin\AppData\Local\Temp\"/>
|
||||
<property name="java.version" value="21.0.11"/>
|
||||
<property name="user.dir" value="D:\workspace\code\fms\fms-api"/>
|
||||
<property name="os.arch" value="amd64"/>
|
||||
<property name="java.vm.specification.name" value="Java Virtual Machine Specification"/>
|
||||
<property name="PID" value="5600"/>
|
||||
<property name="sun.os.patch.level" value=""/>
|
||||
<property name="CONSOLE_LOG_CHARSET" value="UTF-8"/>
|
||||
<property name="native.encoding" value="GBK"/>
|
||||
<property name="java.library.path" value="D:\devtool\jdk\jdk21\bin;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;D:\devtool\conda;D:\devtool\conda\Library\mingw-w64\bin;D:\devtool\conda\Library\usr\bin;D:\devtool\conda\Library\bin;D:\devtool\conda\Scripts;D:\devtool\conda\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0;C:\WINDOWS\System32\OpenSSH;C:\Program Files\dotnet;C:\Program Files\NVIDIA Corporation\NVIDIA App\NvDLISR;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;D:\soft\Bandizip;D:\devtool\Git\cmd;D:\devtool\nvm;D:\devtool\nodejs;D:\data\sdk\platform-tools;D:\data\sdk\tools;D:\data\sdk\tools;D:\devtool\jdk\jdk17\bin;D:\devtool\maven\bin;D:\devtool\conda\condabin;D:\devtool\mc;C:\Users\admin\AppData\Local\pnpm\bin;C:\Users\admin\AppData\Local\Microsoft\WindowsApps;D:\soft\Microsoft VS Code\bin;D:\soft\CodeBuddy CN\bin;."/>
|
||||
<property name="java.vm.info" value="mixed mode, sharing"/>
|
||||
<property name="stderr.encoding" value="GBK"/>
|
||||
<property name="java.vendor" value="Eclipse Adoptium"/>
|
||||
<property name="java.vm.version" value="21.0.11+10-LTS"/>
|
||||
<property name="sun.io.unicode.encoding" value="UnicodeLittle"/>
|
||||
<property name="java.class.version" value="65.0"/>
|
||||
<property name="LOGGED_APPLICATION_NAME" value="[fms-api] "/>
|
||||
</properties>
|
||||
<testcase name="contextLoads" classname="cn.g3soft.fmsapi.FmsApiApplicationTests" time="0.364">
|
||||
<system-out><![CDATA[21:40:46.503 [main] INFO org.springframework.test.context.support.AnnotationConfigContextLoaderUtils -- Could not detect default configuration classes for test class [cn.g3soft.fmsapi.FmsApiApplicationTests]: FmsApiApplicationTests does not declare any static, non-private, non-final, nested classes annotated with @Configuration.
|
||||
21:40:46.557 [main] INFO org.springframework.boot.test.context.SpringBootTestContextBootstrapper -- Found @SpringBootConfiguration cn.g3soft.fmsapi.FmsApiApplication for test class cn.g3soft.fmsapi.FmsApiApplicationTests
|
||||
21:40:46.609 [main] INFO org.springframework.test.context.support.AnnotationConfigContextLoaderUtils -- Could not detect default configuration classes for test class [cn.g3soft.fmsapi.FmsApiApplicationTests]: FmsApiApplicationTests does not declare any static, non-private, non-final, nested classes annotated with @Configuration.
|
||||
21:40:46.610 [main] INFO org.springframework.boot.test.context.SpringBootTestContextBootstrapper -- Found @SpringBootConfiguration cn.g3soft.fmsapi.FmsApiApplication for test class cn.g3soft.fmsapi.FmsApiApplicationTests
|
||||
21:40:46.643 [main] INFO org.springframework.boot.devtools.restart.RestartApplicationListener -- Restart disabled due to context in which it is running
|
||||
|
||||
. ____ _ __ _ _
|
||||
/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
|
||||
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
|
||||
\\/ ___)| |_)| | | | | || (_| | ) ) ) )
|
||||
' |____| .__|_| |_|_| |_\__, | / / / /
|
||||
=========|_|==============|___/=/_/_/_/
|
||||
|
||||
:: Spring Boot :: (v4.1.0)
|
||||
|
||||
2026-07-26T21:40:46.821+08:00 INFO 5600 --- [fms-api] [ main] c.g3soft.fmsapi.FmsApiApplicationTests : Starting FmsApiApplicationTests using Java 21.0.11 with PID 5600 (started by admin in D:\workspace\code\fms\fms-api)
|
||||
2026-07-26T21:40:46.822+08:00 INFO 5600 --- [fms-api] [ main] c.g3soft.fmsapi.FmsApiApplicationTests : No active profile set, falling back to 1 default profile: "default"
|
||||
2026-07-26T21:40:47.537+08:00 INFO 5600 --- [fms-api] [ main] c.g3soft.fmsapi.utils.IpRegionSearcher : ip2region Searcher 初始化完成,数据大小 11114380 字节
|
||||
2026-07-26T21:40:47.951+08:00 INFO 5600 --- [fms-api] [ main] c.g3soft.fmsapi.FmsApiApplicationTests : Started FmsApiApplicationTests in 1.314 seconds (process running for 2.253)
|
||||
]]></system-out>
|
||||
<system-err><![CDATA[Mockito is currently self-attaching to enable the inline-mock-maker. This will no longer work in future releases of the JDK. Please add Mockito as an agent to your build as described in Mockito's documentation: https://javadoc.io/doc/org.mockito/mockito-core/latest/org.mockito/org/mockito/Mockito.html#0.3
|
||||
WARNING: A Java agent has been loaded dynamically (C:\Users\admin\.m2\repository\net\bytebuddy\byte-buddy-agent\1.18.10\byte-buddy-agent-1.18.10.jar)
|
||||
WARNING: If a serviceability tool is in use, please run with -XX:+EnableDynamicAgentLoading to hide this warning
|
||||
WARNING: If a serviceability tool is not in use, please run with -Djdk.instrument.traceUsage for more information
|
||||
WARNING: Dynamic loading of agents will be disallowed by default in a future release
|
||||
]]></system-err>
|
||||
</testcase>
|
||||
</testsuite>
|
||||
+68
@@ -0,0 +1,68 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<testsuite xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="https://maven.apache.org/surefire/maven-surefire-plugin/xsd/surefire-test-report.xsd" version="3.0.2" name="cn.g3soft.fmsapi.database.OrgDataSourceFactoryTests" time="0.185" tests="1" errors="0" skipped="0" failures="0" flakes="0">
|
||||
<properties>
|
||||
<property name="java.specification.version" value="21"/>
|
||||
<property name="sun.cpu.isalist" value="amd64"/>
|
||||
<property name="sun.jnu.encoding" value="GBK"/>
|
||||
<property name="java.class.path" value="D:\workspace\code\fms\fms-api\target\test-classes;D:\workspace\code\fms\fms-api\target\classes;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-webmvc\4.1.0\spring-boot-starter-webmvc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter\4.1.0\spring-boot-starter-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-logging\4.1.0\spring-boot-starter-logging-4.1.0.jar;C:\Users\admin\.m2\repository\ch\qos\logback\logback-classic\1.5.34\logback-classic-1.5.34.jar;C:\Users\admin\.m2\repository\ch\qos\logback\logback-core\1.5.34\logback-core-1.5.34.jar;C:\Users\admin\.m2\repository\org\apache\logging\log4j\log4j-to-slf4j\2.25.4\log4j-to-slf4j-2.25.4.jar;C:\Users\admin\.m2\repository\org\apache\logging\log4j\log4j-api\2.25.4\log4j-api-2.25.4.jar;C:\Users\admin\.m2\repository\org\slf4j\jul-to-slf4j\2.0.18\jul-to-slf4j-2.0.18.jar;C:\Users\admin\.m2\repository\jakarta\annotation\jakarta.annotation-api\3.0.0\jakarta.annotation-api-3.0.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-jackson\4.1.0\spring-boot-starter-jackson-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-jackson\4.1.0\spring-boot-jackson-4.1.0.jar;C:\Users\admin\.m2\repository\tools\jackson\core\jackson-databind\3.1.4\jackson-databind-3.1.4.jar;C:\Users\admin\.m2\repository\tools\jackson\core\jackson-core\3.1.4\jackson-core-3.1.4.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-tomcat\4.1.0\spring-boot-starter-tomcat-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-tomcat-runtime\4.1.0\spring-boot-starter-tomcat-runtime-4.1.0.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-core\11.0.22\tomcat-embed-core-11.0.22.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-el\11.0.22\tomcat-embed-el-11.0.22.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-websocket\11.0.22\tomcat-embed-websocket-11.0.22.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-tomcat\4.1.0\spring-boot-tomcat-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-http-converter\4.1.0\spring-boot-http-converter-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-web\7.0.8\spring-web-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-beans\7.0.8\spring-beans-7.0.8.jar;C:\Users\admin\.m2\repository\io\micrometer\micrometer-observation\1.17.0\micrometer-observation-1.17.0.jar;C:\Users\admin\.m2\repository\io\micrometer\micrometer-commons\1.17.0\micrometer-commons-1.17.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-webmvc\4.1.0\spring-boot-webmvc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-servlet\4.1.0\spring-boot-servlet-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-webmvc\7.0.8\spring-webmvc-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-aop\7.0.8\spring-aop-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-expression\7.0.8\spring-expression-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-jdbc\4.1.0\spring-boot-starter-jdbc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-jdbc\4.1.0\spring-boot-jdbc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-sql\4.1.0\spring-boot-sql-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-transaction\4.1.0\spring-boot-transaction-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-persistence\4.1.0\spring-boot-persistence-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-tx\7.0.8\spring-tx-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-jdbc\7.0.8\spring-jdbc-7.0.8.jar;C:\Users\admin\.m2\repository\com\zaxxer\HikariCP\7.0.2\HikariCP-7.0.2.jar;C:\Users\admin\.m2\repository\org\slf4j\slf4j-api\2.0.18\slf4j-api-2.0.18.jar;C:\Users\admin\.m2\repository\com\alibaba\druid\1.2.18\druid-1.2.18.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-api\0.12.6\jjwt-api-0.12.6.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-impl\0.12.6\jjwt-impl-0.12.6.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-jackson\0.12.6\jjwt-jackson-0.12.6.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-databind\2.21.4\jackson-databind-2.21.4.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-annotations\2.21\jackson-annotations-2.21.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-core\2.21.4\jackson-core-2.21.4.jar;C:\Users\admin\.m2\repository\org\lionsoul\ip2region\3.3.7\ip2region-3.3.7.jar;C:\Users\admin\.m2\repository\com\github\ua-parser\uap-java\1.6.1\uap-java-1.6.1.jar;C:\Users\admin\.m2\repository\org\yaml\snakeyaml\2.6\snakLine truncated
|
||||
<property name="java.vm.vendor" value="Eclipse Adoptium"/>
|
||||
<property name="sun.arch.data.model" value="64"/>
|
||||
<property name="user.variant" value=""/>
|
||||
<property name="java.vendor.url" value="https://adoptium.net/"/>
|
||||
<property name="user.timezone" value="Asia/Shanghai"/>
|
||||
<property name="os.name" value="Windows 11"/>
|
||||
<property name="java.vm.specification.version" value="21"/>
|
||||
<property name="sun.java.launcher" value="SUN_STANDARD"/>
|
||||
<property name="user.country" value="CN"/>
|
||||
<property name="sun.boot.library.path" value="D:\devtool\jdk\jdk21\bin"/>
|
||||
<property name="sun.java.command" value="C:\Users\admin\AppData\Local\Temp\surefire10791345176578591782\surefirebooter-20260726214045610_3.jar C:\Users\admin\AppData\Local\Temp\surefire10791345176578591782 2026-07-26T21-40-45_527-jvmRun1 surefire-20260726214045610_1tmp surefire_0-20260726214045610_2tmp"/>
|
||||
<property name="jdk.debug" value="release"/>
|
||||
<property name="surefire.test.class.path" value="D:\workspace\code\fms\fms-api\target\test-classes;D:\workspace\code\fms\fms-api\target\classes;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-webmvc\4.1.0\spring-boot-starter-webmvc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter\4.1.0\spring-boot-starter-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-logging\4.1.0\spring-boot-starter-logging-4.1.0.jar;C:\Users\admin\.m2\repository\ch\qos\logback\logback-classic\1.5.34\logback-classic-1.5.34.jar;C:\Users\admin\.m2\repository\ch\qos\logback\logback-core\1.5.34\logback-core-1.5.34.jar;C:\Users\admin\.m2\repository\org\apache\logging\log4j\log4j-to-slf4j\2.25.4\log4j-to-slf4j-2.25.4.jar;C:\Users\admin\.m2\repository\org\apache\logging\log4j\log4j-api\2.25.4\log4j-api-2.25.4.jar;C:\Users\admin\.m2\repository\org\slf4j\jul-to-slf4j\2.0.18\jul-to-slf4j-2.0.18.jar;C:\Users\admin\.m2\repository\jakarta\annotation\jakarta.annotation-api\3.0.0\jakarta.annotation-api-3.0.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-jackson\4.1.0\spring-boot-starter-jackson-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-jackson\4.1.0\spring-boot-jackson-4.1.0.jar;C:\Users\admin\.m2\repository\tools\jackson\core\jackson-databind\3.1.4\jackson-databind-3.1.4.jar;C:\Users\admin\.m2\repository\tools\jackson\core\jackson-core\3.1.4\jackson-core-3.1.4.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-tomcat\4.1.0\spring-boot-starter-tomcat-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-tomcat-runtime\4.1.0\spring-boot-starter-tomcat-runtime-4.1.0.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-core\11.0.22\tomcat-embed-core-11.0.22.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-el\11.0.22\tomcat-embed-el-11.0.22.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-websocket\11.0.22\tomcat-embed-websocket-11.0.22.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-tomcat\4.1.0\spring-boot-tomcat-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-http-converter\4.1.0\spring-boot-http-converter-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-web\7.0.8\spring-web-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-beans\7.0.8\spring-beans-7.0.8.jar;C:\Users\admin\.m2\repository\io\micrometer\micrometer-observation\1.17.0\micrometer-observation-1.17.0.jar;C:\Users\admin\.m2\repository\io\micrometer\micrometer-commons\1.17.0\micrometer-commons-1.17.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-webmvc\4.1.0\spring-boot-webmvc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-servlet\4.1.0\spring-boot-servlet-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-webmvc\7.0.8\spring-webmvc-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-aop\7.0.8\spring-aop-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-expression\7.0.8\spring-expression-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-jdbc\4.1.0\spring-boot-starter-jdbc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-jdbc\4.1.0\spring-boot-jdbc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-sql\4.1.0\spring-boot-sql-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-transaction\4.1.0\spring-boot-transaction-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-persistence\4.1.0\spring-boot-persistence-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-tx\7.0.8\spring-tx-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-jdbc\7.0.8\spring-jdbc-7.0.8.jar;C:\Users\admin\.m2\repository\com\zaxxer\HikariCP\7.0.2\HikariCP-7.0.2.jar;C:\Users\admin\.m2\repository\org\slf4j\slf4j-api\2.0.18\slf4j-api-2.0.18.jar;C:\Users\admin\.m2\repository\com\alibaba\druid\1.2.18\druid-1.2.18.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-api\0.12.6\jjwt-api-0.12.6.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-impl\0.12.6\jjwt-impl-0.12.6.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-jackson\0.12.6\jjwt-jackson-0.12.6.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-databind\2.21.4\jackson-databind-2.21.4.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-annotations\2.21\jackson-annotations-2.21.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-core\2.21.4\jackson-core-2.21.4.jar;C:\Users\admin\.m2\repository\org\lionsoul\ip2region\3.3.7\ip2region-3.3.7.jar;C:\Users\admin\.m2\repository\com\github\ua-parser\uap-java\1.6.1\uap-java-1.6.1.jar;C:\Users\admin\.m2\repository\org\yaml\snakeyamlLine truncated
|
||||
<property name="sun.cpu.endian" value="little"/>
|
||||
<property name="user.home" value="C:\Users\admin"/>
|
||||
<property name="user.language" value="zh"/>
|
||||
<property name="java.specification.vendor" value="Oracle Corporation"/>
|
||||
<property name="java.version.date" value="2026-04-21"/>
|
||||
<property name="java.home" value="D:\devtool\jdk\jdk21"/>
|
||||
<property name="file.separator" value="\"/>
|
||||
<property name="basedir" value="D:\workspace\code\fms\fms-api"/>
|
||||
<property name="java.vm.compressedOopsMode" value="Zero based"/>
|
||||
<property name="line.separator" value=" "/>
|
||||
<property name="java.vm.specification.vendor" value="Oracle Corporation"/>
|
||||
<property name="java.specification.name" value="Java Platform API Specification"/>
|
||||
<property name="surefire.real.class.path" value="C:\Users\admin\AppData\Local\Temp\surefire10791345176578591782\surefirebooter-20260726214045610_3.jar"/>
|
||||
<property name="user.script" value=""/>
|
||||
<property name="sun.management.compiler" value="HotSpot 64-Bit Tiered Compilers"/>
|
||||
<property name="java.runtime.version" value="21.0.11+10-LTS"/>
|
||||
<property name="user.name" value="admin"/>
|
||||
<property name="stdout.encoding" value="GBK"/>
|
||||
<property name="path.separator" value=";"/>
|
||||
<property name="os.version" value="10.0"/>
|
||||
<property name="java.runtime.name" value="OpenJDK Runtime Environment"/>
|
||||
<property name="file.encoding" value="UTF-8"/>
|
||||
<property name="java.vm.name" value="OpenJDK 64-Bit Server VM"/>
|
||||
<property name="java.vendor.version" value="Temurin-21.0.11+10"/>
|
||||
<property name="localRepository" value="C:\Users\admin\.m2\repository"/>
|
||||
<property name="java.vendor.url.bug" value="https://github.com/adoptium/adoptium-support/issues"/>
|
||||
<property name="java.io.tmpdir" value="C:\Users\admin\AppData\Local\Temp\"/>
|
||||
<property name="java.version" value="21.0.11"/>
|
||||
<property name="user.dir" value="D:\workspace\code\fms\fms-api"/>
|
||||
<property name="os.arch" value="amd64"/>
|
||||
<property name="java.vm.specification.name" value="Java Virtual Machine Specification"/>
|
||||
<property name="sun.os.patch.level" value=""/>
|
||||
<property name="native.encoding" value="GBK"/>
|
||||
<property name="java.library.path" value="D:\devtool\jdk\jdk21\bin;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;D:\devtool\conda;D:\devtool\conda\Library\mingw-w64\bin;D:\devtool\conda\Library\usr\bin;D:\devtool\conda\Library\bin;D:\devtool\conda\Scripts;D:\devtool\conda\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0;C:\WINDOWS\System32\OpenSSH;C:\Program Files\dotnet;C:\Program Files\NVIDIA Corporation\NVIDIA App\NvDLISR;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;D:\soft\Bandizip;D:\devtool\Git\cmd;D:\devtool\nvm;D:\devtool\nodejs;D:\data\sdk\platform-tools;D:\data\sdk\tools;D:\data\sdk\tools;D:\devtool\jdk\jdk17\bin;D:\devtool\maven\bin;D:\devtool\conda\condabin;D:\devtool\mc;C:\Users\admin\AppData\Local\pnpm\bin;C:\Users\admin\AppData\Local\Microsoft\WindowsApps;D:\soft\Microsoft VS Code\bin;D:\soft\CodeBuddy CN\bin;."/>
|
||||
<property name="java.vm.info" value="mixed mode, sharing"/>
|
||||
<property name="stderr.encoding" value="GBK"/>
|
||||
<property name="java.vendor" value="Eclipse Adoptium"/>
|
||||
<property name="java.vm.version" value="21.0.11+10-LTS"/>
|
||||
<property name="sun.io.unicode.encoding" value="UnicodeLittle"/>
|
||||
<property name="java.class.version" value="65.0"/>
|
||||
</properties>
|
||||
<testcase name="databaseConnectionFailureDoesNotRetry" classname="cn.g3soft.fmsapi.database.OrgDataSourceFactoryTests" time="0.185">
|
||||
<system-out><![CDATA[21:40:46.409 [main] INFO com.alibaba.druid.pool.DruidDataSource -- {dataSource-1,TEST} inited
|
||||
21:40:46.439 [main] INFO com.alibaba.druid.pool.DruidDataSource -- {dataSource-1} closing ...
|
||||
21:40:46.440 [main] INFO com.alibaba.druid.pool.DruidDataSource -- {dataSource-1} closed
|
||||
]]></system-out>
|
||||
</testcase>
|
||||
</testsuite>
|
||||
+63
@@ -0,0 +1,63 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<testsuite xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="https://maven.apache.org/surefire/maven-surefire-plugin/xsd/surefire-test-report.xsd" version="3.0.2" name="cn.g3soft.fmsapi.database.OrgDatabaseConfigLoaderTests" time="0.148" tests="1" errors="0" skipped="0" failures="0" flakes="0">
|
||||
<properties>
|
||||
<property name="java.specification.version" value="21"/>
|
||||
<property name="sun.cpu.isalist" value="amd64"/>
|
||||
<property name="sun.jnu.encoding" value="GBK"/>
|
||||
<property name="java.class.path" value="D:\workspace\code\fms\fms-api\target\test-classes;D:\workspace\code\fms\fms-api\target\classes;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-webmvc\4.1.0\spring-boot-starter-webmvc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter\4.1.0\spring-boot-starter-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-logging\4.1.0\spring-boot-starter-logging-4.1.0.jar;C:\Users\admin\.m2\repository\ch\qos\logback\logback-classic\1.5.34\logback-classic-1.5.34.jar;C:\Users\admin\.m2\repository\ch\qos\logback\logback-core\1.5.34\logback-core-1.5.34.jar;C:\Users\admin\.m2\repository\org\apache\logging\log4j\log4j-to-slf4j\2.25.4\log4j-to-slf4j-2.25.4.jar;C:\Users\admin\.m2\repository\org\apache\logging\log4j\log4j-api\2.25.4\log4j-api-2.25.4.jar;C:\Users\admin\.m2\repository\org\slf4j\jul-to-slf4j\2.0.18\jul-to-slf4j-2.0.18.jar;C:\Users\admin\.m2\repository\jakarta\annotation\jakarta.annotation-api\3.0.0\jakarta.annotation-api-3.0.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-jackson\4.1.0\spring-boot-starter-jackson-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-jackson\4.1.0\spring-boot-jackson-4.1.0.jar;C:\Users\admin\.m2\repository\tools\jackson\core\jackson-databind\3.1.4\jackson-databind-3.1.4.jar;C:\Users\admin\.m2\repository\tools\jackson\core\jackson-core\3.1.4\jackson-core-3.1.4.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-tomcat\4.1.0\spring-boot-starter-tomcat-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-tomcat-runtime\4.1.0\spring-boot-starter-tomcat-runtime-4.1.0.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-core\11.0.22\tomcat-embed-core-11.0.22.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-el\11.0.22\tomcat-embed-el-11.0.22.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-websocket\11.0.22\tomcat-embed-websocket-11.0.22.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-tomcat\4.1.0\spring-boot-tomcat-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-http-converter\4.1.0\spring-boot-http-converter-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-web\7.0.8\spring-web-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-beans\7.0.8\spring-beans-7.0.8.jar;C:\Users\admin\.m2\repository\io\micrometer\micrometer-observation\1.17.0\micrometer-observation-1.17.0.jar;C:\Users\admin\.m2\repository\io\micrometer\micrometer-commons\1.17.0\micrometer-commons-1.17.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-webmvc\4.1.0\spring-boot-webmvc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-servlet\4.1.0\spring-boot-servlet-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-webmvc\7.0.8\spring-webmvc-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-aop\7.0.8\spring-aop-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-expression\7.0.8\spring-expression-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-jdbc\4.1.0\spring-boot-starter-jdbc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-jdbc\4.1.0\spring-boot-jdbc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-sql\4.1.0\spring-boot-sql-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-transaction\4.1.0\spring-boot-transaction-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-persistence\4.1.0\spring-boot-persistence-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-tx\7.0.8\spring-tx-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-jdbc\7.0.8\spring-jdbc-7.0.8.jar;C:\Users\admin\.m2\repository\com\zaxxer\HikariCP\7.0.2\HikariCP-7.0.2.jar;C:\Users\admin\.m2\repository\org\slf4j\slf4j-api\2.0.18\slf4j-api-2.0.18.jar;C:\Users\admin\.m2\repository\com\alibaba\druid\1.2.18\druid-1.2.18.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-api\0.12.6\jjwt-api-0.12.6.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-impl\0.12.6\jjwt-impl-0.12.6.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-jackson\0.12.6\jjwt-jackson-0.12.6.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-databind\2.21.4\jackson-databind-2.21.4.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-annotations\2.21\jackson-annotations-2.21.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-core\2.21.4\jackson-core-2.21.4.jar;C:\Users\admin\.m2\repository\org\lionsoul\ip2region\3.3.7\ip2region-3.3.7.jar;C:\Users\admin\.m2\repository\com\github\ua-parser\uap-java\1.6.1\uap-java-1.6.1.jar;C:\Users\admin\.m2\repository\org\yaml\snakeyaml\2.6\snakLine truncated
|
||||
<property name="java.vm.vendor" value="Eclipse Adoptium"/>
|
||||
<property name="sun.arch.data.model" value="64"/>
|
||||
<property name="user.variant" value=""/>
|
||||
<property name="java.vendor.url" value="https://adoptium.net/"/>
|
||||
<property name="user.timezone" value="Asia/Shanghai"/>
|
||||
<property name="os.name" value="Windows 11"/>
|
||||
<property name="java.vm.specification.version" value="21"/>
|
||||
<property name="sun.java.launcher" value="SUN_STANDARD"/>
|
||||
<property name="user.country" value="CN"/>
|
||||
<property name="sun.boot.library.path" value="D:\devtool\jdk\jdk21\bin"/>
|
||||
<property name="sun.java.command" value="C:\Users\admin\AppData\Local\Temp\surefire10791345176578591782\surefirebooter-20260726214045610_3.jar C:\Users\admin\AppData\Local\Temp\surefire10791345176578591782 2026-07-26T21-40-45_527-jvmRun1 surefire-20260726214045610_1tmp surefire_0-20260726214045610_2tmp"/>
|
||||
<property name="jdk.debug" value="release"/>
|
||||
<property name="surefire.test.class.path" value="D:\workspace\code\fms\fms-api\target\test-classes;D:\workspace\code\fms\fms-api\target\classes;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-webmvc\4.1.0\spring-boot-starter-webmvc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter\4.1.0\spring-boot-starter-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-logging\4.1.0\spring-boot-starter-logging-4.1.0.jar;C:\Users\admin\.m2\repository\ch\qos\logback\logback-classic\1.5.34\logback-classic-1.5.34.jar;C:\Users\admin\.m2\repository\ch\qos\logback\logback-core\1.5.34\logback-core-1.5.34.jar;C:\Users\admin\.m2\repository\org\apache\logging\log4j\log4j-to-slf4j\2.25.4\log4j-to-slf4j-2.25.4.jar;C:\Users\admin\.m2\repository\org\apache\logging\log4j\log4j-api\2.25.4\log4j-api-2.25.4.jar;C:\Users\admin\.m2\repository\org\slf4j\jul-to-slf4j\2.0.18\jul-to-slf4j-2.0.18.jar;C:\Users\admin\.m2\repository\jakarta\annotation\jakarta.annotation-api\3.0.0\jakarta.annotation-api-3.0.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-jackson\4.1.0\spring-boot-starter-jackson-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-jackson\4.1.0\spring-boot-jackson-4.1.0.jar;C:\Users\admin\.m2\repository\tools\jackson\core\jackson-databind\3.1.4\jackson-databind-3.1.4.jar;C:\Users\admin\.m2\repository\tools\jackson\core\jackson-core\3.1.4\jackson-core-3.1.4.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-tomcat\4.1.0\spring-boot-starter-tomcat-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-tomcat-runtime\4.1.0\spring-boot-starter-tomcat-runtime-4.1.0.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-core\11.0.22\tomcat-embed-core-11.0.22.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-el\11.0.22\tomcat-embed-el-11.0.22.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-websocket\11.0.22\tomcat-embed-websocket-11.0.22.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-tomcat\4.1.0\spring-boot-tomcat-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-http-converter\4.1.0\spring-boot-http-converter-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-web\7.0.8\spring-web-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-beans\7.0.8\spring-beans-7.0.8.jar;C:\Users\admin\.m2\repository\io\micrometer\micrometer-observation\1.17.0\micrometer-observation-1.17.0.jar;C:\Users\admin\.m2\repository\io\micrometer\micrometer-commons\1.17.0\micrometer-commons-1.17.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-webmvc\4.1.0\spring-boot-webmvc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-servlet\4.1.0\spring-boot-servlet-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-webmvc\7.0.8\spring-webmvc-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-aop\7.0.8\spring-aop-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-expression\7.0.8\spring-expression-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-jdbc\4.1.0\spring-boot-starter-jdbc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-jdbc\4.1.0\spring-boot-jdbc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-sql\4.1.0\spring-boot-sql-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-transaction\4.1.0\spring-boot-transaction-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-persistence\4.1.0\spring-boot-persistence-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-tx\7.0.8\spring-tx-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-jdbc\7.0.8\spring-jdbc-7.0.8.jar;C:\Users\admin\.m2\repository\com\zaxxer\HikariCP\7.0.2\HikariCP-7.0.2.jar;C:\Users\admin\.m2\repository\org\slf4j\slf4j-api\2.0.18\slf4j-api-2.0.18.jar;C:\Users\admin\.m2\repository\com\alibaba\druid\1.2.18\druid-1.2.18.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-api\0.12.6\jjwt-api-0.12.6.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-impl\0.12.6\jjwt-impl-0.12.6.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-jackson\0.12.6\jjwt-jackson-0.12.6.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-databind\2.21.4\jackson-databind-2.21.4.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-annotations\2.21\jackson-annotations-2.21.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-core\2.21.4\jackson-core-2.21.4.jar;C:\Users\admin\.m2\repository\org\lionsoul\ip2region\3.3.7\ip2region-3.3.7.jar;C:\Users\admin\.m2\repository\com\github\ua-parser\uap-java\1.6.1\uap-java-1.6.1.jar;C:\Users\admin\.m2\repository\org\yaml\snakeyamlLine truncated
|
||||
<property name="sun.cpu.endian" value="little"/>
|
||||
<property name="user.home" value="C:\Users\admin"/>
|
||||
<property name="user.language" value="zh"/>
|
||||
<property name="java.specification.vendor" value="Oracle Corporation"/>
|
||||
<property name="java.version.date" value="2026-04-21"/>
|
||||
<property name="java.home" value="D:\devtool\jdk\jdk21"/>
|
||||
<property name="file.separator" value="\"/>
|
||||
<property name="basedir" value="D:\workspace\code\fms\fms-api"/>
|
||||
<property name="java.vm.compressedOopsMode" value="Zero based"/>
|
||||
<property name="line.separator" value=" "/>
|
||||
<property name="java.vm.specification.vendor" value="Oracle Corporation"/>
|
||||
<property name="java.specification.name" value="Java Platform API Specification"/>
|
||||
<property name="surefire.real.class.path" value="C:\Users\admin\AppData\Local\Temp\surefire10791345176578591782\surefirebooter-20260726214045610_3.jar"/>
|
||||
<property name="user.script" value=""/>
|
||||
<property name="sun.management.compiler" value="HotSpot 64-Bit Tiered Compilers"/>
|
||||
<property name="java.runtime.version" value="21.0.11+10-LTS"/>
|
||||
<property name="user.name" value="admin"/>
|
||||
<property name="stdout.encoding" value="GBK"/>
|
||||
<property name="path.separator" value=";"/>
|
||||
<property name="os.version" value="10.0"/>
|
||||
<property name="java.runtime.name" value="OpenJDK Runtime Environment"/>
|
||||
<property name="file.encoding" value="UTF-8"/>
|
||||
<property name="java.vm.name" value="OpenJDK 64-Bit Server VM"/>
|
||||
<property name="java.vendor.version" value="Temurin-21.0.11+10"/>
|
||||
<property name="localRepository" value="C:\Users\admin\.m2\repository"/>
|
||||
<property name="java.vendor.url.bug" value="https://github.com/adoptium/adoptium-support/issues"/>
|
||||
<property name="java.io.tmpdir" value="C:\Users\admin\AppData\Local\Temp\"/>
|
||||
<property name="java.version" value="21.0.11"/>
|
||||
<property name="user.dir" value="D:\workspace\code\fms\fms-api"/>
|
||||
<property name="os.arch" value="amd64"/>
|
||||
<property name="java.vm.specification.name" value="Java Virtual Machine Specification"/>
|
||||
<property name="sun.os.patch.level" value=""/>
|
||||
<property name="native.encoding" value="GBK"/>
|
||||
<property name="java.library.path" value="D:\devtool\jdk\jdk21\bin;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;D:\devtool\conda;D:\devtool\conda\Library\mingw-w64\bin;D:\devtool\conda\Library\usr\bin;D:\devtool\conda\Library\bin;D:\devtool\conda\Scripts;D:\devtool\conda\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0;C:\WINDOWS\System32\OpenSSH;C:\Program Files\dotnet;C:\Program Files\NVIDIA Corporation\NVIDIA App\NvDLISR;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;D:\soft\Bandizip;D:\devtool\Git\cmd;D:\devtool\nvm;D:\devtool\nodejs;D:\data\sdk\platform-tools;D:\data\sdk\tools;D:\data\sdk\tools;D:\devtool\jdk\jdk17\bin;D:\devtool\maven\bin;D:\devtool\conda\condabin;D:\devtool\mc;C:\Users\admin\AppData\Local\pnpm\bin;C:\Users\admin\AppData\Local\Microsoft\WindowsApps;D:\soft\Microsoft VS Code\bin;D:\soft\CodeBuddy CN\bin;."/>
|
||||
<property name="java.vm.info" value="mixed mode, sharing"/>
|
||||
<property name="stderr.encoding" value="GBK"/>
|
||||
<property name="java.vendor" value="Eclipse Adoptium"/>
|
||||
<property name="java.vm.version" value="21.0.11+10-LTS"/>
|
||||
<property name="sun.io.unicode.encoding" value="UnicodeLittle"/>
|
||||
<property name="java.class.version" value="65.0"/>
|
||||
</properties>
|
||||
<testcase name="missingConfigFileIsReportedAsInvalidOrgId" classname="cn.g3soft.fmsapi.database.OrgDatabaseConfigLoaderTests" time="0.139"/>
|
||||
</testsuite>
|
||||
+238
@@ -0,0 +1,238 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<testsuite xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="https://maven.apache.org/surefire/maven-surefire-plugin/xsd/surefire-test-report.xsd" version="3.0.2" name="cn.g3soft.fmsapi.exception.GlobalExceptionHandlerTests" time="0.018" tests="2" errors="0" skipped="0" failures="0" flakes="0">
|
||||
<properties>
|
||||
<property name="java.specification.version" value="21"/>
|
||||
<property name="sun.cpu.isalist" value="amd64"/>
|
||||
<property name="sun.jnu.encoding" value="GBK"/>
|
||||
<property name="java.class.path" value="D:\workspace\code\fms\fms-api\target\test-classes;D:\workspace\code\fms\fms-api\target\classes;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-webmvc\4.1.0\spring-boot-starter-webmvc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter\4.1.0\spring-boot-starter-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-logging\4.1.0\spring-boot-starter-logging-4.1.0.jar;C:\Users\admin\.m2\repository\ch\qos\logback\logback-classic\1.5.34\logback-classic-1.5.34.jar;C:\Users\admin\.m2\repository\ch\qos\logback\logback-core\1.5.34\logback-core-1.5.34.jar;C:\Users\admin\.m2\repository\org\apache\logging\log4j\log4j-to-slf4j\2.25.4\log4j-to-slf4j-2.25.4.jar;C:\Users\admin\.m2\repository\org\apache\logging\log4j\log4j-api\2.25.4\log4j-api-2.25.4.jar;C:\Users\admin\.m2\repository\org\slf4j\jul-to-slf4j\2.0.18\jul-to-slf4j-2.0.18.jar;C:\Users\admin\.m2\repository\jakarta\annotation\jakarta.annotation-api\3.0.0\jakarta.annotation-api-3.0.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-jackson\4.1.0\spring-boot-starter-jackson-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-jackson\4.1.0\spring-boot-jackson-4.1.0.jar;C:\Users\admin\.m2\repository\tools\jackson\core\jackson-databind\3.1.4\jackson-databind-3.1.4.jar;C:\Users\admin\.m2\repository\tools\jackson\core\jackson-core\3.1.4\jackson-core-3.1.4.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-tomcat\4.1.0\spring-boot-starter-tomcat-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-tomcat-runtime\4.1.0\spring-boot-starter-tomcat-runtime-4.1.0.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-core\11.0.22\tomcat-embed-core-11.0.22.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-el\11.0.22\tomcat-embed-el-11.0.22.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-websocket\11.0.22\tomcat-embed-websocket-11.0.22.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-tomcat\4.1.0\spring-boot-tomcat-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-http-converter\4.1.0\spring-boot-http-converter-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-web\7.0.8\spring-web-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-beans\7.0.8\spring-beans-7.0.8.jar;C:\Users\admin\.m2\repository\io\micrometer\micrometer-observation\1.17.0\micrometer-observation-1.17.0.jar;C:\Users\admin\.m2\repository\io\micrometer\micrometer-commons\1.17.0\micrometer-commons-1.17.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-webmvc\4.1.0\spring-boot-webmvc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-servlet\4.1.0\spring-boot-servlet-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-webmvc\7.0.8\spring-webmvc-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-aop\7.0.8\spring-aop-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-expression\7.0.8\spring-expression-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-jdbc\4.1.0\spring-boot-starter-jdbc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-jdbc\4.1.0\spring-boot-jdbc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-sql\4.1.0\spring-boot-sql-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-transaction\4.1.0\spring-boot-transaction-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-persistence\4.1.0\spring-boot-persistence-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-tx\7.0.8\spring-tx-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-jdbc\7.0.8\spring-jdbc-7.0.8.jar;C:\Users\admin\.m2\repository\com\zaxxer\HikariCP\7.0.2\HikariCP-7.0.2.jar;C:\Users\admin\.m2\repository\org\slf4j\slf4j-api\2.0.18\slf4j-api-2.0.18.jar;C:\Users\admin\.m2\repository\com\alibaba\druid\1.2.18\druid-1.2.18.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-api\0.12.6\jjwt-api-0.12.6.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-impl\0.12.6\jjwt-impl-0.12.6.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-jackson\0.12.6\jjwt-jackson-0.12.6.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-databind\2.21.4\jackson-databind-2.21.4.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-annotations\2.21\jackson-annotations-2.21.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-core\2.21.4\jackson-core-2.21.4.jar;C:\Users\admin\.m2\repository\org\lionsoul\ip2region\3.3.7\ip2region-3.3.7.jar;C:\Users\admin\.m2\repository\com\github\ua-parser\uap-java\1.6.1\uap-java-1.6.1.jar;C:\Users\admin\.m2\repository\org\yaml\snakeyaml\2.6\snakLine truncated
|
||||
<property name="java.vm.vendor" value="Eclipse Adoptium"/>
|
||||
<property name="sun.arch.data.model" value="64"/>
|
||||
<property name="user.variant" value=""/>
|
||||
<property name="java.vendor.url" value="https://adoptium.net/"/>
|
||||
<property name="user.timezone" value="Asia/Shanghai"/>
|
||||
<property name="os.name" value="Windows 11"/>
|
||||
<property name="java.vm.specification.version" value="21"/>
|
||||
<property name="sun.java.launcher" value="SUN_STANDARD"/>
|
||||
<property name="user.country" value="CN"/>
|
||||
<property name="sun.boot.library.path" value="D:\devtool\jdk\jdk21\bin"/>
|
||||
<property name="sun.java.command" value="C:\Users\admin\AppData\Local\Temp\surefire10791345176578591782\surefirebooter-20260726214045610_3.jar C:\Users\admin\AppData\Local\Temp\surefire10791345176578591782 2026-07-26T21-40-45_527-jvmRun1 surefire-20260726214045610_1tmp surefire_0-20260726214045610_2tmp"/>
|
||||
<property name="jdk.debug" value="release"/>
|
||||
<property name="surefire.test.class.path" value="D:\workspace\code\fms\fms-api\target\test-classes;D:\workspace\code\fms\fms-api\target\classes;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-webmvc\4.1.0\spring-boot-starter-webmvc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter\4.1.0\spring-boot-starter-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-logging\4.1.0\spring-boot-starter-logging-4.1.0.jar;C:\Users\admin\.m2\repository\ch\qos\logback\logback-classic\1.5.34\logback-classic-1.5.34.jar;C:\Users\admin\.m2\repository\ch\qos\logback\logback-core\1.5.34\logback-core-1.5.34.jar;C:\Users\admin\.m2\repository\org\apache\logging\log4j\log4j-to-slf4j\2.25.4\log4j-to-slf4j-2.25.4.jar;C:\Users\admin\.m2\repository\org\apache\logging\log4j\log4j-api\2.25.4\log4j-api-2.25.4.jar;C:\Users\admin\.m2\repository\org\slf4j\jul-to-slf4j\2.0.18\jul-to-slf4j-2.0.18.jar;C:\Users\admin\.m2\repository\jakarta\annotation\jakarta.annotation-api\3.0.0\jakarta.annotation-api-3.0.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-jackson\4.1.0\spring-boot-starter-jackson-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-jackson\4.1.0\spring-boot-jackson-4.1.0.jar;C:\Users\admin\.m2\repository\tools\jackson\core\jackson-databind\3.1.4\jackson-databind-3.1.4.jar;C:\Users\admin\.m2\repository\tools\jackson\core\jackson-core\3.1.4\jackson-core-3.1.4.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-tomcat\4.1.0\spring-boot-starter-tomcat-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-tomcat-runtime\4.1.0\spring-boot-starter-tomcat-runtime-4.1.0.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-core\11.0.22\tomcat-embed-core-11.0.22.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-el\11.0.22\tomcat-embed-el-11.0.22.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-websocket\11.0.22\tomcat-embed-websocket-11.0.22.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-tomcat\4.1.0\spring-boot-tomcat-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-http-converter\4.1.0\spring-boot-http-converter-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-web\7.0.8\spring-web-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-beans\7.0.8\spring-beans-7.0.8.jar;C:\Users\admin\.m2\repository\io\micrometer\micrometer-observation\1.17.0\micrometer-observation-1.17.0.jar;C:\Users\admin\.m2\repository\io\micrometer\micrometer-commons\1.17.0\micrometer-commons-1.17.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-webmvc\4.1.0\spring-boot-webmvc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-servlet\4.1.0\spring-boot-servlet-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-webmvc\7.0.8\spring-webmvc-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-aop\7.0.8\spring-aop-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-expression\7.0.8\spring-expression-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-jdbc\4.1.0\spring-boot-starter-jdbc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-jdbc\4.1.0\spring-boot-jdbc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-sql\4.1.0\spring-boot-sql-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-transaction\4.1.0\spring-boot-transaction-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-persistence\4.1.0\spring-boot-persistence-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-tx\7.0.8\spring-tx-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-jdbc\7.0.8\spring-jdbc-7.0.8.jar;C:\Users\admin\.m2\repository\com\zaxxer\HikariCP\7.0.2\HikariCP-7.0.2.jar;C:\Users\admin\.m2\repository\org\slf4j\slf4j-api\2.0.18\slf4j-api-2.0.18.jar;C:\Users\admin\.m2\repository\com\alibaba\druid\1.2.18\druid-1.2.18.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-api\0.12.6\jjwt-api-0.12.6.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-impl\0.12.6\jjwt-impl-0.12.6.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-jackson\0.12.6\jjwt-jackson-0.12.6.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-databind\2.21.4\jackson-databind-2.21.4.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-annotations\2.21\jackson-annotations-2.21.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-core\2.21.4\jackson-core-2.21.4.jar;C:\Users\admin\.m2\repository\org\lionsoul\ip2region\3.3.7\ip2region-3.3.7.jar;C:\Users\admin\.m2\repository\com\github\ua-parser\uap-java\1.6.1\uap-java-1.6.1.jar;C:\Users\admin\.m2\repository\org\yaml\snakeyamlLine truncated
|
||||
<property name="sun.cpu.endian" value="little"/>
|
||||
<property name="user.home" value="C:\Users\admin"/>
|
||||
<property name="user.language" value="zh"/>
|
||||
<property name="java.specification.vendor" value="Oracle Corporation"/>
|
||||
<property name="java.version.date" value="2026-04-21"/>
|
||||
<property name="java.home" value="D:\devtool\jdk\jdk21"/>
|
||||
<property name="file.separator" value="\"/>
|
||||
<property name="basedir" value="D:\workspace\code\fms\fms-api"/>
|
||||
<property name="java.vm.compressedOopsMode" value="Zero based"/>
|
||||
<property name="line.separator" value=" "/>
|
||||
<property name="java.vm.specification.vendor" value="Oracle Corporation"/>
|
||||
<property name="java.specification.name" value="Java Platform API Specification"/>
|
||||
<property name="surefire.real.class.path" value="C:\Users\admin\AppData\Local\Temp\surefire10791345176578591782\surefirebooter-20260726214045610_3.jar"/>
|
||||
<property name="user.script" value=""/>
|
||||
<property name="sun.management.compiler" value="HotSpot 64-Bit Tiered Compilers"/>
|
||||
<property name="java.runtime.version" value="21.0.11+10-LTS"/>
|
||||
<property name="user.name" value="admin"/>
|
||||
<property name="stdout.encoding" value="GBK"/>
|
||||
<property name="path.separator" value=";"/>
|
||||
<property name="os.version" value="10.0"/>
|
||||
<property name="java.runtime.name" value="OpenJDK Runtime Environment"/>
|
||||
<property name="file.encoding" value="UTF-8"/>
|
||||
<property name="java.vm.name" value="OpenJDK 64-Bit Server VM"/>
|
||||
<property name="java.vendor.version" value="Temurin-21.0.11+10"/>
|
||||
<property name="localRepository" value="C:\Users\admin\.m2\repository"/>
|
||||
<property name="java.vendor.url.bug" value="https://github.com/adoptium/adoptium-support/issues"/>
|
||||
<property name="java.io.tmpdir" value="C:\Users\admin\AppData\Local\Temp\"/>
|
||||
<property name="java.version" value="21.0.11"/>
|
||||
<property name="user.dir" value="D:\workspace\code\fms\fms-api"/>
|
||||
<property name="os.arch" value="amd64"/>
|
||||
<property name="java.vm.specification.name" value="Java Virtual Machine Specification"/>
|
||||
<property name="sun.os.patch.level" value=""/>
|
||||
<property name="native.encoding" value="GBK"/>
|
||||
<property name="java.library.path" value="D:\devtool\jdk\jdk21\bin;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;D:\devtool\conda;D:\devtool\conda\Library\mingw-w64\bin;D:\devtool\conda\Library\usr\bin;D:\devtool\conda\Library\bin;D:\devtool\conda\Scripts;D:\devtool\conda\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0;C:\WINDOWS\System32\OpenSSH;C:\Program Files\dotnet;C:\Program Files\NVIDIA Corporation\NVIDIA App\NvDLISR;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;D:\soft\Bandizip;D:\devtool\Git\cmd;D:\devtool\nvm;D:\devtool\nodejs;D:\data\sdk\platform-tools;D:\data\sdk\tools;D:\data\sdk\tools;D:\devtool\jdk\jdk17\bin;D:\devtool\maven\bin;D:\devtool\conda\condabin;D:\devtool\mc;C:\Users\admin\AppData\Local\pnpm\bin;C:\Users\admin\AppData\Local\Microsoft\WindowsApps;D:\soft\Microsoft VS Code\bin;D:\soft\CodeBuddy CN\bin;."/>
|
||||
<property name="java.vm.info" value="mixed mode, sharing"/>
|
||||
<property name="stderr.encoding" value="GBK"/>
|
||||
<property name="java.vendor" value="Eclipse Adoptium"/>
|
||||
<property name="java.vm.version" value="21.0.11+10-LTS"/>
|
||||
<property name="sun.io.unicode.encoding" value="UnicodeLittle"/>
|
||||
<property name="java.class.version" value="65.0"/>
|
||||
</properties>
|
||||
<testcase name="databaseExceptionReturnsSystemError" classname="cn.g3soft.fmsapi.exception.GlobalExceptionHandlerTests" time="0.012">
|
||||
<system-out><![CDATA[21:40:46.451 [main] ERROR cn.g3soft.fmsapi.exception.GlobalExceptionHandler -- 系统异常,method=POST,uri=/api/auth/login
|
||||
java.sql.SQLException: connection failed
|
||||
at cn.g3soft.fmsapi.exception.GlobalExceptionHandlerTests.databaseExceptionReturnsSystemError(GlobalExceptionHandlerTests.java:19)
|
||||
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:580)
|
||||
at org.junit.platform.commons.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:701)
|
||||
at org.junit.platform.commons.support.ReflectionSupport.invokeMethod(ReflectionSupport.java:502)
|
||||
at org.junit.jupiter.engine.support.MethodReflectionUtils.invoke(MethodReflectionUtils.java:45)
|
||||
at org.junit.jupiter.engine.execution.MethodInvocation.proceed(MethodInvocation.java:61)
|
||||
at org.junit.jupiter.engine.execution.InvocationInterceptorChain$ValidatingInvocation.proceed(InvocationInterceptorChain.java:124)
|
||||
at org.junit.jupiter.engine.extension.TimeoutExtension.intercept(TimeoutExtension.java:163)
|
||||
at org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestableMethod(TimeoutExtension.java:148)
|
||||
at org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestMethod(TimeoutExtension.java:86)
|
||||
at org.junit.jupiter.engine.execution.InterceptingExecutableInvoker$ReflectiveInterceptorCall.lambda$ofVoidMethod$0(InterceptingExecutableInvoker.java:123)
|
||||
at org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.lambda$invoke$0(InterceptingExecutableInvoker.java:105)
|
||||
at org.junit.jupiter.engine.execution.InvocationInterceptorChain$InterceptedInvocation.proceed(InvocationInterceptorChain.java:99)
|
||||
at org.junit.jupiter.engine.execution.InvocationInterceptorChain.proceed(InvocationInterceptorChain.java:66)
|
||||
at org.junit.jupiter.engine.execution.InvocationInterceptorChain.chainAndInvoke(InvocationInterceptorChain.java:47)
|
||||
at org.junit.jupiter.engine.execution.InvocationInterceptorChain.invoke(InvocationInterceptorChain.java:39)
|
||||
at org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.invoke(InterceptingExecutableInvoker.java:104)
|
||||
at org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.invoke(InterceptingExecutableInvoker.java:98)
|
||||
at org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.invokeVoid(InterceptingExecutableInvoker.java:71)
|
||||
at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.lambda$invokeTestMethod$0(TestMethodTestDescriptor.java:219)
|
||||
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:74)
|
||||
at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.invokeTestMethod(TestMethodTestDescriptor.java:215)
|
||||
at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:157)
|
||||
at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:70)
|
||||
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$2(NodeTestTask.java:176)
|
||||
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:74)
|
||||
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$1(NodeTestTask.java:166)
|
||||
at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:138)
|
||||
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$0(NodeTestTask.java:164)
|
||||
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:74)
|
||||
at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:163)
|
||||
at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:116)
|
||||
at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
|
||||
at org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:42)
|
||||
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$2(NodeTestTask.java:180)
|
||||
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:74)
|
||||
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$1(NodeTestTask.java:166)
|
||||
at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:138)
|
||||
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$0(NodeTestTask.java:164)
|
||||
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:74)
|
||||
at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:163)
|
||||
at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:116)
|
||||
at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
|
||||
at org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:42)
|
||||
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$2(NodeTestTask.java:180)
|
||||
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:74)
|
||||
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$1(NodeTestTask.java:166)
|
||||
at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:138)
|
||||
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$0(NodeTestTask.java:164)
|
||||
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:74)
|
||||
at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:163)
|
||||
at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:116)
|
||||
at org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.submit(SameThreadHierarchicalTestExecutorService.java:36)
|
||||
at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:52)
|
||||
at org.junit.platform.engine.support.hierarchical.HierarchicalTestEngine.execute(HierarchicalTestEngine.java:58)
|
||||
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.executeEngine(EngineExecutionOrchestrator.java:246)
|
||||
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.failOrExecuteEngine(EngineExecutionOrchestrator.java:218)
|
||||
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:179)
|
||||
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:108)
|
||||
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.lambda$execute$0(EngineExecutionOrchestrator.java:66)
|
||||
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.withInterceptedStreams(EngineExecutionOrchestrator.java:157)
|
||||
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:65)
|
||||
at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:125)
|
||||
at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:114)
|
||||
at org.junit.platform.launcher.core.DelegatingLauncher.execute(DelegatingLauncher.java:58)
|
||||
at org.junit.platform.launcher.core.InterceptingLauncher.lambda$execute$2(InterceptingLauncher.java:57)
|
||||
at org.junit.platform.launcher.core.ClasspathAlignmentCheckingLauncherInterceptor.intercept(ClasspathAlignmentCheckingLauncherInterceptor.java:25)
|
||||
at org.junit.platform.launcher.core.InterceptingLauncher.execute(InterceptingLauncher.java:56)
|
||||
at org.junit.platform.launcher.core.DelegatingLauncher.execute(DelegatingLauncher.java:58)
|
||||
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:580)
|
||||
at org.apache.maven.surefire.api.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:125)
|
||||
at org.apache.maven.surefire.junitplatform.LauncherAdapter.executeWithCancellationToken(LauncherAdapter.java:68)
|
||||
at org.apache.maven.surefire.junitplatform.LauncherAdapter.execute(LauncherAdapter.java:54)
|
||||
at org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.execute(JUnitPlatformProvider.java:203)
|
||||
at org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invokeAllTests(JUnitPlatformProvider.java:168)
|
||||
at org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invoke(JUnitPlatformProvider.java:136)
|
||||
at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:385)
|
||||
at org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:162)
|
||||
at org.apache.maven.surefire.booter.ForkedBooter.run(ForkedBooter.java:507)
|
||||
at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:495)
|
||||
]]></system-out>
|
||||
</testcase>
|
||||
<testcase name="saveExceptionReturnsOperationLocation" classname="cn.g3soft.fmsapi.exception.GlobalExceptionHandlerTests" time="0.004">
|
||||
<system-out><![CDATA[21:40:46.455 [main] ERROR cn.g3soft.fmsapi.exception.GlobalExceptionHandler -- 保存失败,table=bs_business,action=update,index=2
|
||||
cn.g3soft.fmsapi.exception.SaveObjectException: 保存失败
|
||||
at cn.g3soft.fmsapi.exception.GlobalExceptionHandlerTests.saveExceptionReturnsOperationLocation(GlobalExceptionHandlerTests.java:32)
|
||||
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:580)
|
||||
at org.junit.platform.commons.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:701)
|
||||
at org.junit.platform.commons.support.ReflectionSupport.invokeMethod(ReflectionSupport.java:502)
|
||||
at org.junit.jupiter.engine.support.MethodReflectionUtils.invoke(MethodReflectionUtils.java:45)
|
||||
at org.junit.jupiter.engine.execution.MethodInvocation.proceed(MethodInvocation.java:61)
|
||||
at org.junit.jupiter.engine.execution.InvocationInterceptorChain$ValidatingInvocation.proceed(InvocationInterceptorChain.java:124)
|
||||
at org.junit.jupiter.engine.extension.TimeoutExtension.intercept(TimeoutExtension.java:163)
|
||||
at org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestableMethod(TimeoutExtension.java:148)
|
||||
at org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestMethod(TimeoutExtension.java:86)
|
||||
at org.junit.jupiter.engine.execution.InterceptingExecutableInvoker$ReflectiveInterceptorCall.lambda$ofVoidMethod$0(InterceptingExecutableInvoker.java:123)
|
||||
at org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.lambda$invoke$0(InterceptingExecutableInvoker.java:105)
|
||||
at org.junit.jupiter.engine.execution.InvocationInterceptorChain$InterceptedInvocation.proceed(InvocationInterceptorChain.java:99)
|
||||
at org.junit.jupiter.engine.execution.InvocationInterceptorChain.proceed(InvocationInterceptorChain.java:66)
|
||||
at org.junit.jupiter.engine.execution.InvocationInterceptorChain.chainAndInvoke(InvocationInterceptorChain.java:47)
|
||||
at org.junit.jupiter.engine.execution.InvocationInterceptorChain.invoke(InvocationInterceptorChain.java:39)
|
||||
at org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.invoke(InterceptingExecutableInvoker.java:104)
|
||||
at org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.invoke(InterceptingExecutableInvoker.java:98)
|
||||
at org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.invokeVoid(InterceptingExecutableInvoker.java:71)
|
||||
at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.lambda$invokeTestMethod$0(TestMethodTestDescriptor.java:219)
|
||||
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:74)
|
||||
at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.invokeTestMethod(TestMethodTestDescriptor.java:215)
|
||||
at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:157)
|
||||
at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:70)
|
||||
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$2(NodeTestTask.java:176)
|
||||
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:74)
|
||||
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$1(NodeTestTask.java:166)
|
||||
at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:138)
|
||||
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$0(NodeTestTask.java:164)
|
||||
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:74)
|
||||
at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:163)
|
||||
at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:116)
|
||||
at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
|
||||
at org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:42)
|
||||
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$2(NodeTestTask.java:180)
|
||||
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:74)
|
||||
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$1(NodeTestTask.java:166)
|
||||
at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:138)
|
||||
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$0(NodeTestTask.java:164)
|
||||
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:74)
|
||||
at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:163)
|
||||
at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:116)
|
||||
at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
|
||||
at org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:42)
|
||||
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$2(NodeTestTask.java:180)
|
||||
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:74)
|
||||
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$1(NodeTestTask.java:166)
|
||||
at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:138)
|
||||
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$0(NodeTestTask.java:164)
|
||||
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:74)
|
||||
at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:163)
|
||||
at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:116)
|
||||
at org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.submit(SameThreadHierarchicalTestExecutorService.java:36)
|
||||
at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:52)
|
||||
at org.junit.platform.engine.support.hierarchical.HierarchicalTestEngine.execute(HierarchicalTestEngine.java:58)
|
||||
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.executeEngine(EngineExecutionOrchestrator.java:246)
|
||||
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.failOrExecuteEngine(EngineExecutionOrchestrator.java:218)
|
||||
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:179)
|
||||
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:108)
|
||||
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.lambda$execute$0(EngineExecutionOrchestrator.java:66)
|
||||
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.withInterceptedStreams(EngineExecutionOrchestrator.java:157)
|
||||
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:65)
|
||||
at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:125)
|
||||
at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:114)
|
||||
at org.junit.platform.launcher.core.DelegatingLauncher.execute(DelegatingLauncher.java:58)
|
||||
at org.junit.platform.launcher.core.InterceptingLauncher.lambda$execute$2(InterceptingLauncher.java:57)
|
||||
at org.junit.platform.launcher.core.ClasspathAlignmentCheckingLauncherInterceptor.intercept(ClasspathAlignmentCheckingLauncherInterceptor.java:25)
|
||||
at org.junit.platform.launcher.core.InterceptingLauncher.execute(InterceptingLauncher.java:56)
|
||||
at org.junit.platform.launcher.core.DelegatingLauncher.execute(DelegatingLauncher.java:58)
|
||||
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:580)
|
||||
at org.apache.maven.surefire.api.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:125)
|
||||
at org.apache.maven.surefire.junitplatform.LauncherAdapter.executeWithCancellationToken(LauncherAdapter.java:68)
|
||||
at org.apache.maven.surefire.junitplatform.LauncherAdapter.execute(LauncherAdapter.java:54)
|
||||
at org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.execute(JUnitPlatformProvider.java:203)
|
||||
at org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invokeAllTests(JUnitPlatformProvider.java:168)
|
||||
at org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invoke(JUnitPlatformProvider.java:136)
|
||||
at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:385)
|
||||
at org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:162)
|
||||
at org.apache.maven.surefire.booter.ForkedBooter.run(ForkedBooter.java:507)
|
||||
at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:495)
|
||||
Caused by: java.sql.SQLException: update failed
|
||||
... 82 common frames omitted
|
||||
]]></system-out>
|
||||
</testcase>
|
||||
</testsuite>
|
||||
+70
@@ -0,0 +1,70 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<testsuite xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="https://maven.apache.org/surefire/maven-surefire-plugin/xsd/surefire-test-report.xsd" version="3.0.2" name="cn.g3soft.fmsapi.service.ActiveSessionRegistryTests" time="0.002" tests="2" errors="0" skipped="0" failures="0" flakes="0">
|
||||
<properties>
|
||||
<property name="java.specification.version" value="21"/>
|
||||
<property name="sun.cpu.isalist" value="amd64"/>
|
||||
<property name="sun.jnu.encoding" value="GBK"/>
|
||||
<property name="java.class.path" value="D:\workspace\code\fms\fms-api\target\test-classes;D:\workspace\code\fms\fms-api\target\classes;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-webmvc\4.1.0\spring-boot-starter-webmvc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter\4.1.0\spring-boot-starter-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-logging\4.1.0\spring-boot-starter-logging-4.1.0.jar;C:\Users\admin\.m2\repository\ch\qos\logback\logback-classic\1.5.34\logback-classic-1.5.34.jar;C:\Users\admin\.m2\repository\ch\qos\logback\logback-core\1.5.34\logback-core-1.5.34.jar;C:\Users\admin\.m2\repository\org\apache\logging\log4j\log4j-to-slf4j\2.25.4\log4j-to-slf4j-2.25.4.jar;C:\Users\admin\.m2\repository\org\apache\logging\log4j\log4j-api\2.25.4\log4j-api-2.25.4.jar;C:\Users\admin\.m2\repository\org\slf4j\jul-to-slf4j\2.0.18\jul-to-slf4j-2.0.18.jar;C:\Users\admin\.m2\repository\jakarta\annotation\jakarta.annotation-api\3.0.0\jakarta.annotation-api-3.0.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-jackson\4.1.0\spring-boot-starter-jackson-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-jackson\4.1.0\spring-boot-jackson-4.1.0.jar;C:\Users\admin\.m2\repository\tools\jackson\core\jackson-databind\3.1.4\jackson-databind-3.1.4.jar;C:\Users\admin\.m2\repository\tools\jackson\core\jackson-core\3.1.4\jackson-core-3.1.4.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-tomcat\4.1.0\spring-boot-starter-tomcat-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-tomcat-runtime\4.1.0\spring-boot-starter-tomcat-runtime-4.1.0.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-core\11.0.22\tomcat-embed-core-11.0.22.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-el\11.0.22\tomcat-embed-el-11.0.22.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-websocket\11.0.22\tomcat-embed-websocket-11.0.22.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-tomcat\4.1.0\spring-boot-tomcat-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-http-converter\4.1.0\spring-boot-http-converter-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-web\7.0.8\spring-web-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-beans\7.0.8\spring-beans-7.0.8.jar;C:\Users\admin\.m2\repository\io\micrometer\micrometer-observation\1.17.0\micrometer-observation-1.17.0.jar;C:\Users\admin\.m2\repository\io\micrometer\micrometer-commons\1.17.0\micrometer-commons-1.17.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-webmvc\4.1.0\spring-boot-webmvc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-servlet\4.1.0\spring-boot-servlet-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-webmvc\7.0.8\spring-webmvc-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-aop\7.0.8\spring-aop-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-expression\7.0.8\spring-expression-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-jdbc\4.1.0\spring-boot-starter-jdbc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-jdbc\4.1.0\spring-boot-jdbc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-sql\4.1.0\spring-boot-sql-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-transaction\4.1.0\spring-boot-transaction-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-persistence\4.1.0\spring-boot-persistence-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-tx\7.0.8\spring-tx-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-jdbc\7.0.8\spring-jdbc-7.0.8.jar;C:\Users\admin\.m2\repository\com\zaxxer\HikariCP\7.0.2\HikariCP-7.0.2.jar;C:\Users\admin\.m2\repository\org\slf4j\slf4j-api\2.0.18\slf4j-api-2.0.18.jar;C:\Users\admin\.m2\repository\com\alibaba\druid\1.2.18\druid-1.2.18.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-api\0.12.6\jjwt-api-0.12.6.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-impl\0.12.6\jjwt-impl-0.12.6.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-jackson\0.12.6\jjwt-jackson-0.12.6.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-databind\2.21.4\jackson-databind-2.21.4.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-annotations\2.21\jackson-annotations-2.21.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-core\2.21.4\jackson-core-2.21.4.jar;C:\Users\admin\.m2\repository\org\lionsoul\ip2region\3.3.7\ip2region-3.3.7.jar;C:\Users\admin\.m2\repository\com\github\ua-parser\uap-java\1.6.1\uap-java-1.6.1.jar;C:\Users\admin\.m2\repository\org\yaml\snakeyaml\2.6\snakLine truncated
|
||||
<property name="java.vm.vendor" value="Eclipse Adoptium"/>
|
||||
<property name="sun.arch.data.model" value="64"/>
|
||||
<property name="user.variant" value=""/>
|
||||
<property name="java.vendor.url" value="https://adoptium.net/"/>
|
||||
<property name="user.timezone" value="Asia/Shanghai"/>
|
||||
<property name="os.name" value="Windows 11"/>
|
||||
<property name="java.vm.specification.version" value="21"/>
|
||||
<property name="APPLICATION_NAME" value="fms-api"/>
|
||||
<property name="sun.java.launcher" value="SUN_STANDARD"/>
|
||||
<property name="user.country" value="CN"/>
|
||||
<property name="sun.boot.library.path" value="D:\devtool\jdk\jdk21\bin"/>
|
||||
<property name="sun.java.command" value="C:\Users\admin\AppData\Local\Temp\surefire10791345176578591782\surefirebooter-20260726214045610_3.jar C:\Users\admin\AppData\Local\Temp\surefire10791345176578591782 2026-07-26T21-40-45_527-jvmRun1 surefire-20260726214045610_1tmp surefire_0-20260726214045610_2tmp"/>
|
||||
<property name="jdk.debug" value="release"/>
|
||||
<property name="surefire.test.class.path" value="D:\workspace\code\fms\fms-api\target\test-classes;D:\workspace\code\fms\fms-api\target\classes;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-webmvc\4.1.0\spring-boot-starter-webmvc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter\4.1.0\spring-boot-starter-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-logging\4.1.0\spring-boot-starter-logging-4.1.0.jar;C:\Users\admin\.m2\repository\ch\qos\logback\logback-classic\1.5.34\logback-classic-1.5.34.jar;C:\Users\admin\.m2\repository\ch\qos\logback\logback-core\1.5.34\logback-core-1.5.34.jar;C:\Users\admin\.m2\repository\org\apache\logging\log4j\log4j-to-slf4j\2.25.4\log4j-to-slf4j-2.25.4.jar;C:\Users\admin\.m2\repository\org\apache\logging\log4j\log4j-api\2.25.4\log4j-api-2.25.4.jar;C:\Users\admin\.m2\repository\org\slf4j\jul-to-slf4j\2.0.18\jul-to-slf4j-2.0.18.jar;C:\Users\admin\.m2\repository\jakarta\annotation\jakarta.annotation-api\3.0.0\jakarta.annotation-api-3.0.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-jackson\4.1.0\spring-boot-starter-jackson-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-jackson\4.1.0\spring-boot-jackson-4.1.0.jar;C:\Users\admin\.m2\repository\tools\jackson\core\jackson-databind\3.1.4\jackson-databind-3.1.4.jar;C:\Users\admin\.m2\repository\tools\jackson\core\jackson-core\3.1.4\jackson-core-3.1.4.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-tomcat\4.1.0\spring-boot-starter-tomcat-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-tomcat-runtime\4.1.0\spring-boot-starter-tomcat-runtime-4.1.0.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-core\11.0.22\tomcat-embed-core-11.0.22.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-el\11.0.22\tomcat-embed-el-11.0.22.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-websocket\11.0.22\tomcat-embed-websocket-11.0.22.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-tomcat\4.1.0\spring-boot-tomcat-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-http-converter\4.1.0\spring-boot-http-converter-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-web\7.0.8\spring-web-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-beans\7.0.8\spring-beans-7.0.8.jar;C:\Users\admin\.m2\repository\io\micrometer\micrometer-observation\1.17.0\micrometer-observation-1.17.0.jar;C:\Users\admin\.m2\repository\io\micrometer\micrometer-commons\1.17.0\micrometer-commons-1.17.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-webmvc\4.1.0\spring-boot-webmvc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-servlet\4.1.0\spring-boot-servlet-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-webmvc\7.0.8\spring-webmvc-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-aop\7.0.8\spring-aop-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-expression\7.0.8\spring-expression-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-jdbc\4.1.0\spring-boot-starter-jdbc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-jdbc\4.1.0\spring-boot-jdbc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-sql\4.1.0\spring-boot-sql-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-transaction\4.1.0\spring-boot-transaction-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-persistence\4.1.0\spring-boot-persistence-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-tx\7.0.8\spring-tx-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-jdbc\7.0.8\spring-jdbc-7.0.8.jar;C:\Users\admin\.m2\repository\com\zaxxer\HikariCP\7.0.2\HikariCP-7.0.2.jar;C:\Users\admin\.m2\repository\org\slf4j\slf4j-api\2.0.18\slf4j-api-2.0.18.jar;C:\Users\admin\.m2\repository\com\alibaba\druid\1.2.18\druid-1.2.18.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-api\0.12.6\jjwt-api-0.12.6.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-impl\0.12.6\jjwt-impl-0.12.6.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-jackson\0.12.6\jjwt-jackson-0.12.6.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-databind\2.21.4\jackson-databind-2.21.4.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-annotations\2.21\jackson-annotations-2.21.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-core\2.21.4\jackson-core-2.21.4.jar;C:\Users\admin\.m2\repository\org\lionsoul\ip2region\3.3.7\ip2region-3.3.7.jar;C:\Users\admin\.m2\repository\com\github\ua-parser\uap-java\1.6.1\uap-java-1.6.1.jar;C:\Users\admin\.m2\repository\org\yaml\snakeyamlLine truncated
|
||||
<property name="sun.cpu.endian" value="little"/>
|
||||
<property name="user.home" value="C:\Users\admin"/>
|
||||
<property name="user.language" value="zh"/>
|
||||
<property name="java.specification.vendor" value="Oracle Corporation"/>
|
||||
<property name="java.version.date" value="2026-04-21"/>
|
||||
<property name="java.home" value="D:\devtool\jdk\jdk21"/>
|
||||
<property name="file.separator" value="\"/>
|
||||
<property name="basedir" value="D:\workspace\code\fms\fms-api"/>
|
||||
<property name="java.vm.compressedOopsMode" value="Zero based"/>
|
||||
<property name="line.separator" value=" "/>
|
||||
<property name="java.vm.specification.vendor" value="Oracle Corporation"/>
|
||||
<property name="java.specification.name" value="Java Platform API Specification"/>
|
||||
<property name="FILE_LOG_CHARSET" value="UTF-8"/>
|
||||
<property name="java.awt.headless" value="true"/>
|
||||
<property name="surefire.real.class.path" value="C:\Users\admin\AppData\Local\Temp\surefire10791345176578591782\surefirebooter-20260726214045610_3.jar"/>
|
||||
<property name="user.script" value=""/>
|
||||
<property name="sun.management.compiler" value="HotSpot 64-Bit Tiered Compilers"/>
|
||||
<property name="java.runtime.version" value="21.0.11+10-LTS"/>
|
||||
<property name="user.name" value="admin"/>
|
||||
<property name="stdout.encoding" value="GBK"/>
|
||||
<property name="path.separator" value=";"/>
|
||||
<property name="os.version" value="10.0"/>
|
||||
<property name="java.runtime.name" value="OpenJDK Runtime Environment"/>
|
||||
<property name="file.encoding" value="UTF-8"/>
|
||||
<property name="java.vm.name" value="OpenJDK 64-Bit Server VM"/>
|
||||
<property name="java.vendor.version" value="Temurin-21.0.11+10"/>
|
||||
<property name="localRepository" value="C:\Users\admin\.m2\repository"/>
|
||||
<property name="java.vendor.url.bug" value="https://github.com/adoptium/adoptium-support/issues"/>
|
||||
<property name="java.io.tmpdir" value="C:\Users\admin\AppData\Local\Temp\"/>
|
||||
<property name="java.version" value="21.0.11"/>
|
||||
<property name="user.dir" value="D:\workspace\code\fms\fms-api"/>
|
||||
<property name="os.arch" value="amd64"/>
|
||||
<property name="java.vm.specification.name" value="Java Virtual Machine Specification"/>
|
||||
<property name="PID" value="5600"/>
|
||||
<property name="sun.os.patch.level" value=""/>
|
||||
<property name="CONSOLE_LOG_CHARSET" value="UTF-8"/>
|
||||
<property name="native.encoding" value="GBK"/>
|
||||
<property name="java.library.path" value="D:\devtool\jdk\jdk21\bin;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;D:\devtool\conda;D:\devtool\conda\Library\mingw-w64\bin;D:\devtool\conda\Library\usr\bin;D:\devtool\conda\Library\bin;D:\devtool\conda\Scripts;D:\devtool\conda\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0;C:\WINDOWS\System32\OpenSSH;C:\Program Files\dotnet;C:\Program Files\NVIDIA Corporation\NVIDIA App\NvDLISR;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;D:\soft\Bandizip;D:\devtool\Git\cmd;D:\devtool\nvm;D:\devtool\nodejs;D:\data\sdk\platform-tools;D:\data\sdk\tools;D:\data\sdk\tools;D:\devtool\jdk\jdk17\bin;D:\devtool\maven\bin;D:\devtool\conda\condabin;D:\devtool\mc;C:\Users\admin\AppData\Local\pnpm\bin;C:\Users\admin\AppData\Local\Microsoft\WindowsApps;D:\soft\Microsoft VS Code\bin;D:\soft\CodeBuddy CN\bin;."/>
|
||||
<property name="java.vm.info" value="mixed mode, sharing"/>
|
||||
<property name="stderr.encoding" value="GBK"/>
|
||||
<property name="java.vendor" value="Eclipse Adoptium"/>
|
||||
<property name="java.vm.version" value="21.0.11+10-LTS"/>
|
||||
<property name="sun.io.unicode.encoding" value="UnicodeLittle"/>
|
||||
<property name="java.class.version" value="65.0"/>
|
||||
<property name="LOGGED_APPLICATION_NAME" value="[fms-api] "/>
|
||||
</properties>
|
||||
<testcase name="newerLoginReplacesPreviousSessionForSameAccount" classname="cn.g3soft.fmsapi.service.ActiveSessionRegistryTests" time="0.001"/>
|
||||
<testcase name="sameUserIdInDifferentOrganizationsHasIndependentSessions" classname="cn.g3soft.fmsapi.service.ActiveSessionRegistryTests" time="0.0"/>
|
||||
</testsuite>
|
||||
+69
@@ -0,0 +1,69 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<testsuite xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="https://maven.apache.org/surefire/maven-surefire-plugin/xsd/surefire-test-report.xsd" version="3.0.2" name="cn.g3soft.fmsapi.service.AuthServiceTests" time="0.218" tests="1" errors="0" skipped="0" failures="0" flakes="0">
|
||||
<properties>
|
||||
<property name="java.specification.version" value="21"/>
|
||||
<property name="sun.cpu.isalist" value="amd64"/>
|
||||
<property name="sun.jnu.encoding" value="GBK"/>
|
||||
<property name="java.class.path" value="D:\workspace\code\fms\fms-api\target\test-classes;D:\workspace\code\fms\fms-api\target\classes;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-webmvc\4.1.0\spring-boot-starter-webmvc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter\4.1.0\spring-boot-starter-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-logging\4.1.0\spring-boot-starter-logging-4.1.0.jar;C:\Users\admin\.m2\repository\ch\qos\logback\logback-classic\1.5.34\logback-classic-1.5.34.jar;C:\Users\admin\.m2\repository\ch\qos\logback\logback-core\1.5.34\logback-core-1.5.34.jar;C:\Users\admin\.m2\repository\org\apache\logging\log4j\log4j-to-slf4j\2.25.4\log4j-to-slf4j-2.25.4.jar;C:\Users\admin\.m2\repository\org\apache\logging\log4j\log4j-api\2.25.4\log4j-api-2.25.4.jar;C:\Users\admin\.m2\repository\org\slf4j\jul-to-slf4j\2.0.18\jul-to-slf4j-2.0.18.jar;C:\Users\admin\.m2\repository\jakarta\annotation\jakarta.annotation-api\3.0.0\jakarta.annotation-api-3.0.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-jackson\4.1.0\spring-boot-starter-jackson-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-jackson\4.1.0\spring-boot-jackson-4.1.0.jar;C:\Users\admin\.m2\repository\tools\jackson\core\jackson-databind\3.1.4\jackson-databind-3.1.4.jar;C:\Users\admin\.m2\repository\tools\jackson\core\jackson-core\3.1.4\jackson-core-3.1.4.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-tomcat\4.1.0\spring-boot-starter-tomcat-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-tomcat-runtime\4.1.0\spring-boot-starter-tomcat-runtime-4.1.0.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-core\11.0.22\tomcat-embed-core-11.0.22.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-el\11.0.22\tomcat-embed-el-11.0.22.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-websocket\11.0.22\tomcat-embed-websocket-11.0.22.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-tomcat\4.1.0\spring-boot-tomcat-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-http-converter\4.1.0\spring-boot-http-converter-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-web\7.0.8\spring-web-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-beans\7.0.8\spring-beans-7.0.8.jar;C:\Users\admin\.m2\repository\io\micrometer\micrometer-observation\1.17.0\micrometer-observation-1.17.0.jar;C:\Users\admin\.m2\repository\io\micrometer\micrometer-commons\1.17.0\micrometer-commons-1.17.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-webmvc\4.1.0\spring-boot-webmvc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-servlet\4.1.0\spring-boot-servlet-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-webmvc\7.0.8\spring-webmvc-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-aop\7.0.8\spring-aop-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-expression\7.0.8\spring-expression-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-jdbc\4.1.0\spring-boot-starter-jdbc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-jdbc\4.1.0\spring-boot-jdbc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-sql\4.1.0\spring-boot-sql-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-transaction\4.1.0\spring-boot-transaction-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-persistence\4.1.0\spring-boot-persistence-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-tx\7.0.8\spring-tx-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-jdbc\7.0.8\spring-jdbc-7.0.8.jar;C:\Users\admin\.m2\repository\com\zaxxer\HikariCP\7.0.2\HikariCP-7.0.2.jar;C:\Users\admin\.m2\repository\org\slf4j\slf4j-api\2.0.18\slf4j-api-2.0.18.jar;C:\Users\admin\.m2\repository\com\alibaba\druid\1.2.18\druid-1.2.18.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-api\0.12.6\jjwt-api-0.12.6.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-impl\0.12.6\jjwt-impl-0.12.6.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-jackson\0.12.6\jjwt-jackson-0.12.6.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-databind\2.21.4\jackson-databind-2.21.4.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-annotations\2.21\jackson-annotations-2.21.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-core\2.21.4\jackson-core-2.21.4.jar;C:\Users\admin\.m2\repository\org\lionsoul\ip2region\3.3.7\ip2region-3.3.7.jar;C:\Users\admin\.m2\repository\com\github\ua-parser\uap-java\1.6.1\uap-java-1.6.1.jar;C:\Users\admin\.m2\repository\org\yaml\snakeyaml\2.6\snakLine truncated
|
||||
<property name="java.vm.vendor" value="Eclipse Adoptium"/>
|
||||
<property name="sun.arch.data.model" value="64"/>
|
||||
<property name="user.variant" value=""/>
|
||||
<property name="java.vendor.url" value="https://adoptium.net/"/>
|
||||
<property name="user.timezone" value="Asia/Shanghai"/>
|
||||
<property name="os.name" value="Windows 11"/>
|
||||
<property name="java.vm.specification.version" value="21"/>
|
||||
<property name="APPLICATION_NAME" value="fms-api"/>
|
||||
<property name="sun.java.launcher" value="SUN_STANDARD"/>
|
||||
<property name="user.country" value="CN"/>
|
||||
<property name="sun.boot.library.path" value="D:\devtool\jdk\jdk21\bin"/>
|
||||
<property name="sun.java.command" value="C:\Users\admin\AppData\Local\Temp\surefire10791345176578591782\surefirebooter-20260726214045610_3.jar C:\Users\admin\AppData\Local\Temp\surefire10791345176578591782 2026-07-26T21-40-45_527-jvmRun1 surefire-20260726214045610_1tmp surefire_0-20260726214045610_2tmp"/>
|
||||
<property name="jdk.debug" value="release"/>
|
||||
<property name="surefire.test.class.path" value="D:\workspace\code\fms\fms-api\target\test-classes;D:\workspace\code\fms\fms-api\target\classes;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-webmvc\4.1.0\spring-boot-starter-webmvc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter\4.1.0\spring-boot-starter-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-logging\4.1.0\spring-boot-starter-logging-4.1.0.jar;C:\Users\admin\.m2\repository\ch\qos\logback\logback-classic\1.5.34\logback-classic-1.5.34.jar;C:\Users\admin\.m2\repository\ch\qos\logback\logback-core\1.5.34\logback-core-1.5.34.jar;C:\Users\admin\.m2\repository\org\apache\logging\log4j\log4j-to-slf4j\2.25.4\log4j-to-slf4j-2.25.4.jar;C:\Users\admin\.m2\repository\org\apache\logging\log4j\log4j-api\2.25.4\log4j-api-2.25.4.jar;C:\Users\admin\.m2\repository\org\slf4j\jul-to-slf4j\2.0.18\jul-to-slf4j-2.0.18.jar;C:\Users\admin\.m2\repository\jakarta\annotation\jakarta.annotation-api\3.0.0\jakarta.annotation-api-3.0.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-jackson\4.1.0\spring-boot-starter-jackson-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-jackson\4.1.0\spring-boot-jackson-4.1.0.jar;C:\Users\admin\.m2\repository\tools\jackson\core\jackson-databind\3.1.4\jackson-databind-3.1.4.jar;C:\Users\admin\.m2\repository\tools\jackson\core\jackson-core\3.1.4\jackson-core-3.1.4.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-tomcat\4.1.0\spring-boot-starter-tomcat-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-tomcat-runtime\4.1.0\spring-boot-starter-tomcat-runtime-4.1.0.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-core\11.0.22\tomcat-embed-core-11.0.22.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-el\11.0.22\tomcat-embed-el-11.0.22.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-websocket\11.0.22\tomcat-embed-websocket-11.0.22.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-tomcat\4.1.0\spring-boot-tomcat-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-http-converter\4.1.0\spring-boot-http-converter-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-web\7.0.8\spring-web-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-beans\7.0.8\spring-beans-7.0.8.jar;C:\Users\admin\.m2\repository\io\micrometer\micrometer-observation\1.17.0\micrometer-observation-1.17.0.jar;C:\Users\admin\.m2\repository\io\micrometer\micrometer-commons\1.17.0\micrometer-commons-1.17.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-webmvc\4.1.0\spring-boot-webmvc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-servlet\4.1.0\spring-boot-servlet-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-webmvc\7.0.8\spring-webmvc-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-aop\7.0.8\spring-aop-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-expression\7.0.8\spring-expression-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-jdbc\4.1.0\spring-boot-starter-jdbc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-jdbc\4.1.0\spring-boot-jdbc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-sql\4.1.0\spring-boot-sql-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-transaction\4.1.0\spring-boot-transaction-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-persistence\4.1.0\spring-boot-persistence-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-tx\7.0.8\spring-tx-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-jdbc\7.0.8\spring-jdbc-7.0.8.jar;C:\Users\admin\.m2\repository\com\zaxxer\HikariCP\7.0.2\HikariCP-7.0.2.jar;C:\Users\admin\.m2\repository\org\slf4j\slf4j-api\2.0.18\slf4j-api-2.0.18.jar;C:\Users\admin\.m2\repository\com\alibaba\druid\1.2.18\druid-1.2.18.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-api\0.12.6\jjwt-api-0.12.6.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-impl\0.12.6\jjwt-impl-0.12.6.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-jackson\0.12.6\jjwt-jackson-0.12.6.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-databind\2.21.4\jackson-databind-2.21.4.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-annotations\2.21\jackson-annotations-2.21.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-core\2.21.4\jackson-core-2.21.4.jar;C:\Users\admin\.m2\repository\org\lionsoul\ip2region\3.3.7\ip2region-3.3.7.jar;C:\Users\admin\.m2\repository\com\github\ua-parser\uap-java\1.6.1\uap-java-1.6.1.jar;C:\Users\admin\.m2\repository\org\yaml\snakeyamlLine truncated
|
||||
<property name="sun.cpu.endian" value="little"/>
|
||||
<property name="user.home" value="C:\Users\admin"/>
|
||||
<property name="user.language" value="zh"/>
|
||||
<property name="java.specification.vendor" value="Oracle Corporation"/>
|
||||
<property name="java.version.date" value="2026-04-21"/>
|
||||
<property name="java.home" value="D:\devtool\jdk\jdk21"/>
|
||||
<property name="file.separator" value="\"/>
|
||||
<property name="basedir" value="D:\workspace\code\fms\fms-api"/>
|
||||
<property name="java.vm.compressedOopsMode" value="Zero based"/>
|
||||
<property name="line.separator" value=" "/>
|
||||
<property name="java.vm.specification.vendor" value="Oracle Corporation"/>
|
||||
<property name="java.specification.name" value="Java Platform API Specification"/>
|
||||
<property name="FILE_LOG_CHARSET" value="UTF-8"/>
|
||||
<property name="java.awt.headless" value="true"/>
|
||||
<property name="surefire.real.class.path" value="C:\Users\admin\AppData\Local\Temp\surefire10791345176578591782\surefirebooter-20260726214045610_3.jar"/>
|
||||
<property name="user.script" value=""/>
|
||||
<property name="sun.management.compiler" value="HotSpot 64-Bit Tiered Compilers"/>
|
||||
<property name="java.runtime.version" value="21.0.11+10-LTS"/>
|
||||
<property name="user.name" value="admin"/>
|
||||
<property name="stdout.encoding" value="GBK"/>
|
||||
<property name="path.separator" value=";"/>
|
||||
<property name="os.version" value="10.0"/>
|
||||
<property name="java.runtime.name" value="OpenJDK Runtime Environment"/>
|
||||
<property name="file.encoding" value="UTF-8"/>
|
||||
<property name="java.vm.name" value="OpenJDK 64-Bit Server VM"/>
|
||||
<property name="java.vendor.version" value="Temurin-21.0.11+10"/>
|
||||
<property name="localRepository" value="C:\Users\admin\.m2\repository"/>
|
||||
<property name="java.vendor.url.bug" value="https://github.com/adoptium/adoptium-support/issues"/>
|
||||
<property name="java.io.tmpdir" value="C:\Users\admin\AppData\Local\Temp\"/>
|
||||
<property name="java.version" value="21.0.11"/>
|
||||
<property name="user.dir" value="D:\workspace\code\fms\fms-api"/>
|
||||
<property name="os.arch" value="amd64"/>
|
||||
<property name="java.vm.specification.name" value="Java Virtual Machine Specification"/>
|
||||
<property name="PID" value="5600"/>
|
||||
<property name="sun.os.patch.level" value=""/>
|
||||
<property name="CONSOLE_LOG_CHARSET" value="UTF-8"/>
|
||||
<property name="native.encoding" value="GBK"/>
|
||||
<property name="java.library.path" value="D:\devtool\jdk\jdk21\bin;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;D:\devtool\conda;D:\devtool\conda\Library\mingw-w64\bin;D:\devtool\conda\Library\usr\bin;D:\devtool\conda\Library\bin;D:\devtool\conda\Scripts;D:\devtool\conda\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0;C:\WINDOWS\System32\OpenSSH;C:\Program Files\dotnet;C:\Program Files\NVIDIA Corporation\NVIDIA App\NvDLISR;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;D:\soft\Bandizip;D:\devtool\Git\cmd;D:\devtool\nvm;D:\devtool\nodejs;D:\data\sdk\platform-tools;D:\data\sdk\tools;D:\data\sdk\tools;D:\devtool\jdk\jdk17\bin;D:\devtool\maven\bin;D:\devtool\conda\condabin;D:\devtool\mc;C:\Users\admin\AppData\Local\pnpm\bin;C:\Users\admin\AppData\Local\Microsoft\WindowsApps;D:\soft\Microsoft VS Code\bin;D:\soft\CodeBuddy CN\bin;."/>
|
||||
<property name="java.vm.info" value="mixed mode, sharing"/>
|
||||
<property name="stderr.encoding" value="GBK"/>
|
||||
<property name="java.vendor" value="Eclipse Adoptium"/>
|
||||
<property name="java.vm.version" value="21.0.11+10-LTS"/>
|
||||
<property name="sun.io.unicode.encoding" value="UnicodeLittle"/>
|
||||
<property name="java.class.version" value="65.0"/>
|
||||
<property name="LOGGED_APPLICATION_NAME" value="[fms-api] "/>
|
||||
</properties>
|
||||
<testcase name="hiddenSuperAdministratorCanLoginWithEmptyPassword" classname="cn.g3soft.fmsapi.service.AuthServiceTests" time="0.216"/>
|
||||
</testsuite>
|
||||
+70
@@ -0,0 +1,70 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<testsuite xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="https://maven.apache.org/surefire/maven-surefire-plugin/xsd/surefire-test-report.xsd" version="3.0.2" name="cn.g3soft.fmsapi.service.DataSaveServiceTests" time="0.453" tests="2" errors="0" skipped="0" failures="0" flakes="0">
|
||||
<properties>
|
||||
<property name="java.specification.version" value="21"/>
|
||||
<property name="sun.cpu.isalist" value="amd64"/>
|
||||
<property name="sun.jnu.encoding" value="GBK"/>
|
||||
<property name="java.class.path" value="D:\workspace\code\fms\fms-api\target\test-classes;D:\workspace\code\fms\fms-api\target\classes;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-webmvc\4.1.0\spring-boot-starter-webmvc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter\4.1.0\spring-boot-starter-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-logging\4.1.0\spring-boot-starter-logging-4.1.0.jar;C:\Users\admin\.m2\repository\ch\qos\logback\logback-classic\1.5.34\logback-classic-1.5.34.jar;C:\Users\admin\.m2\repository\ch\qos\logback\logback-core\1.5.34\logback-core-1.5.34.jar;C:\Users\admin\.m2\repository\org\apache\logging\log4j\log4j-to-slf4j\2.25.4\log4j-to-slf4j-2.25.4.jar;C:\Users\admin\.m2\repository\org\apache\logging\log4j\log4j-api\2.25.4\log4j-api-2.25.4.jar;C:\Users\admin\.m2\repository\org\slf4j\jul-to-slf4j\2.0.18\jul-to-slf4j-2.0.18.jar;C:\Users\admin\.m2\repository\jakarta\annotation\jakarta.annotation-api\3.0.0\jakarta.annotation-api-3.0.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-jackson\4.1.0\spring-boot-starter-jackson-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-jackson\4.1.0\spring-boot-jackson-4.1.0.jar;C:\Users\admin\.m2\repository\tools\jackson\core\jackson-databind\3.1.4\jackson-databind-3.1.4.jar;C:\Users\admin\.m2\repository\tools\jackson\core\jackson-core\3.1.4\jackson-core-3.1.4.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-tomcat\4.1.0\spring-boot-starter-tomcat-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-tomcat-runtime\4.1.0\spring-boot-starter-tomcat-runtime-4.1.0.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-core\11.0.22\tomcat-embed-core-11.0.22.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-el\11.0.22\tomcat-embed-el-11.0.22.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-websocket\11.0.22\tomcat-embed-websocket-11.0.22.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-tomcat\4.1.0\spring-boot-tomcat-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-http-converter\4.1.0\spring-boot-http-converter-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-web\7.0.8\spring-web-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-beans\7.0.8\spring-beans-7.0.8.jar;C:\Users\admin\.m2\repository\io\micrometer\micrometer-observation\1.17.0\micrometer-observation-1.17.0.jar;C:\Users\admin\.m2\repository\io\micrometer\micrometer-commons\1.17.0\micrometer-commons-1.17.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-webmvc\4.1.0\spring-boot-webmvc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-servlet\4.1.0\spring-boot-servlet-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-webmvc\7.0.8\spring-webmvc-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-aop\7.0.8\spring-aop-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-expression\7.0.8\spring-expression-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-jdbc\4.1.0\spring-boot-starter-jdbc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-jdbc\4.1.0\spring-boot-jdbc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-sql\4.1.0\spring-boot-sql-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-transaction\4.1.0\spring-boot-transaction-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-persistence\4.1.0\spring-boot-persistence-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-tx\7.0.8\spring-tx-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-jdbc\7.0.8\spring-jdbc-7.0.8.jar;C:\Users\admin\.m2\repository\com\zaxxer\HikariCP\7.0.2\HikariCP-7.0.2.jar;C:\Users\admin\.m2\repository\org\slf4j\slf4j-api\2.0.18\slf4j-api-2.0.18.jar;C:\Users\admin\.m2\repository\com\alibaba\druid\1.2.18\druid-1.2.18.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-api\0.12.6\jjwt-api-0.12.6.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-impl\0.12.6\jjwt-impl-0.12.6.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-jackson\0.12.6\jjwt-jackson-0.12.6.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-databind\2.21.4\jackson-databind-2.21.4.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-annotations\2.21\jackson-annotations-2.21.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-core\2.21.4\jackson-core-2.21.4.jar;C:\Users\admin\.m2\repository\org\lionsoul\ip2region\3.3.7\ip2region-3.3.7.jar;C:\Users\admin\.m2\repository\com\github\ua-parser\uap-java\1.6.1\uap-java-1.6.1.jar;C:\Users\admin\.m2\repository\org\yaml\snakeyaml\2.6\snakLine truncated
|
||||
<property name="java.vm.vendor" value="Eclipse Adoptium"/>
|
||||
<property name="sun.arch.data.model" value="64"/>
|
||||
<property name="user.variant" value=""/>
|
||||
<property name="java.vendor.url" value="https://adoptium.net/"/>
|
||||
<property name="user.timezone" value="Asia/Shanghai"/>
|
||||
<property name="os.name" value="Windows 11"/>
|
||||
<property name="java.vm.specification.version" value="21"/>
|
||||
<property name="APPLICATION_NAME" value="fms-api"/>
|
||||
<property name="sun.java.launcher" value="SUN_STANDARD"/>
|
||||
<property name="user.country" value="CN"/>
|
||||
<property name="sun.boot.library.path" value="D:\devtool\jdk\jdk21\bin"/>
|
||||
<property name="sun.java.command" value="C:\Users\admin\AppData\Local\Temp\surefire10791345176578591782\surefirebooter-20260726214045610_3.jar C:\Users\admin\AppData\Local\Temp\surefire10791345176578591782 2026-07-26T21-40-45_527-jvmRun1 surefire-20260726214045610_1tmp surefire_0-20260726214045610_2tmp"/>
|
||||
<property name="jdk.debug" value="release"/>
|
||||
<property name="surefire.test.class.path" value="D:\workspace\code\fms\fms-api\target\test-classes;D:\workspace\code\fms\fms-api\target\classes;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-webmvc\4.1.0\spring-boot-starter-webmvc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter\4.1.0\spring-boot-starter-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-logging\4.1.0\spring-boot-starter-logging-4.1.0.jar;C:\Users\admin\.m2\repository\ch\qos\logback\logback-classic\1.5.34\logback-classic-1.5.34.jar;C:\Users\admin\.m2\repository\ch\qos\logback\logback-core\1.5.34\logback-core-1.5.34.jar;C:\Users\admin\.m2\repository\org\apache\logging\log4j\log4j-to-slf4j\2.25.4\log4j-to-slf4j-2.25.4.jar;C:\Users\admin\.m2\repository\org\apache\logging\log4j\log4j-api\2.25.4\log4j-api-2.25.4.jar;C:\Users\admin\.m2\repository\org\slf4j\jul-to-slf4j\2.0.18\jul-to-slf4j-2.0.18.jar;C:\Users\admin\.m2\repository\jakarta\annotation\jakarta.annotation-api\3.0.0\jakarta.annotation-api-3.0.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-jackson\4.1.0\spring-boot-starter-jackson-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-jackson\4.1.0\spring-boot-jackson-4.1.0.jar;C:\Users\admin\.m2\repository\tools\jackson\core\jackson-databind\3.1.4\jackson-databind-3.1.4.jar;C:\Users\admin\.m2\repository\tools\jackson\core\jackson-core\3.1.4\jackson-core-3.1.4.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-tomcat\4.1.0\spring-boot-starter-tomcat-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-tomcat-runtime\4.1.0\spring-boot-starter-tomcat-runtime-4.1.0.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-core\11.0.22\tomcat-embed-core-11.0.22.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-el\11.0.22\tomcat-embed-el-11.0.22.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-websocket\11.0.22\tomcat-embed-websocket-11.0.22.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-tomcat\4.1.0\spring-boot-tomcat-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-http-converter\4.1.0\spring-boot-http-converter-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-web\7.0.8\spring-web-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-beans\7.0.8\spring-beans-7.0.8.jar;C:\Users\admin\.m2\repository\io\micrometer\micrometer-observation\1.17.0\micrometer-observation-1.17.0.jar;C:\Users\admin\.m2\repository\io\micrometer\micrometer-commons\1.17.0\micrometer-commons-1.17.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-webmvc\4.1.0\spring-boot-webmvc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-servlet\4.1.0\spring-boot-servlet-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-webmvc\7.0.8\spring-webmvc-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-aop\7.0.8\spring-aop-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-expression\7.0.8\spring-expression-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-jdbc\4.1.0\spring-boot-starter-jdbc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-jdbc\4.1.0\spring-boot-jdbc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-sql\4.1.0\spring-boot-sql-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-transaction\4.1.0\spring-boot-transaction-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-persistence\4.1.0\spring-boot-persistence-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-tx\7.0.8\spring-tx-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-jdbc\7.0.8\spring-jdbc-7.0.8.jar;C:\Users\admin\.m2\repository\com\zaxxer\HikariCP\7.0.2\HikariCP-7.0.2.jar;C:\Users\admin\.m2\repository\org\slf4j\slf4j-api\2.0.18\slf4j-api-2.0.18.jar;C:\Users\admin\.m2\repository\com\alibaba\druid\1.2.18\druid-1.2.18.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-api\0.12.6\jjwt-api-0.12.6.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-impl\0.12.6\jjwt-impl-0.12.6.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-jackson\0.12.6\jjwt-jackson-0.12.6.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-databind\2.21.4\jackson-databind-2.21.4.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-annotations\2.21\jackson-annotations-2.21.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-core\2.21.4\jackson-core-2.21.4.jar;C:\Users\admin\.m2\repository\org\lionsoul\ip2region\3.3.7\ip2region-3.3.7.jar;C:\Users\admin\.m2\repository\com\github\ua-parser\uap-java\1.6.1\uap-java-1.6.1.jar;C:\Users\admin\.m2\repository\org\yaml\snakeyamlLine truncated
|
||||
<property name="sun.cpu.endian" value="little"/>
|
||||
<property name="user.home" value="C:\Users\admin"/>
|
||||
<property name="user.language" value="zh"/>
|
||||
<property name="java.specification.vendor" value="Oracle Corporation"/>
|
||||
<property name="java.version.date" value="2026-04-21"/>
|
||||
<property name="java.home" value="D:\devtool\jdk\jdk21"/>
|
||||
<property name="file.separator" value="\"/>
|
||||
<property name="basedir" value="D:\workspace\code\fms\fms-api"/>
|
||||
<property name="java.vm.compressedOopsMode" value="Zero based"/>
|
||||
<property name="line.separator" value=" "/>
|
||||
<property name="java.vm.specification.vendor" value="Oracle Corporation"/>
|
||||
<property name="java.specification.name" value="Java Platform API Specification"/>
|
||||
<property name="FILE_LOG_CHARSET" value="UTF-8"/>
|
||||
<property name="java.awt.headless" value="true"/>
|
||||
<property name="surefire.real.class.path" value="C:\Users\admin\AppData\Local\Temp\surefire10791345176578591782\surefirebooter-20260726214045610_3.jar"/>
|
||||
<property name="user.script" value=""/>
|
||||
<property name="sun.management.compiler" value="HotSpot 64-Bit Tiered Compilers"/>
|
||||
<property name="java.runtime.version" value="21.0.11+10-LTS"/>
|
||||
<property name="user.name" value="admin"/>
|
||||
<property name="stdout.encoding" value="GBK"/>
|
||||
<property name="path.separator" value=";"/>
|
||||
<property name="os.version" value="10.0"/>
|
||||
<property name="java.runtime.name" value="OpenJDK Runtime Environment"/>
|
||||
<property name="file.encoding" value="UTF-8"/>
|
||||
<property name="java.vm.name" value="OpenJDK 64-Bit Server VM"/>
|
||||
<property name="java.vendor.version" value="Temurin-21.0.11+10"/>
|
||||
<property name="localRepository" value="C:\Users\admin\.m2\repository"/>
|
||||
<property name="java.vendor.url.bug" value="https://github.com/adoptium/adoptium-support/issues"/>
|
||||
<property name="java.io.tmpdir" value="C:\Users\admin\AppData\Local\Temp\"/>
|
||||
<property name="java.version" value="21.0.11"/>
|
||||
<property name="user.dir" value="D:\workspace\code\fms\fms-api"/>
|
||||
<property name="os.arch" value="amd64"/>
|
||||
<property name="java.vm.specification.name" value="Java Virtual Machine Specification"/>
|
||||
<property name="PID" value="5600"/>
|
||||
<property name="sun.os.patch.level" value=""/>
|
||||
<property name="CONSOLE_LOG_CHARSET" value="UTF-8"/>
|
||||
<property name="native.encoding" value="GBK"/>
|
||||
<property name="java.library.path" value="D:\devtool\jdk\jdk21\bin;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;D:\devtool\conda;D:\devtool\conda\Library\mingw-w64\bin;D:\devtool\conda\Library\usr\bin;D:\devtool\conda\Library\bin;D:\devtool\conda\Scripts;D:\devtool\conda\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0;C:\WINDOWS\System32\OpenSSH;C:\Program Files\dotnet;C:\Program Files\NVIDIA Corporation\NVIDIA App\NvDLISR;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;D:\soft\Bandizip;D:\devtool\Git\cmd;D:\devtool\nvm;D:\devtool\nodejs;D:\data\sdk\platform-tools;D:\data\sdk\tools;D:\data\sdk\tools;D:\devtool\jdk\jdk17\bin;D:\devtool\maven\bin;D:\devtool\conda\condabin;D:\devtool\mc;C:\Users\admin\AppData\Local\pnpm\bin;C:\Users\admin\AppData\Local\Microsoft\WindowsApps;D:\soft\Microsoft VS Code\bin;D:\soft\CodeBuddy CN\bin;."/>
|
||||
<property name="java.vm.info" value="mixed mode, sharing"/>
|
||||
<property name="stderr.encoding" value="GBK"/>
|
||||
<property name="java.vendor" value="Eclipse Adoptium"/>
|
||||
<property name="java.vm.version" value="21.0.11+10-LTS"/>
|
||||
<property name="sun.io.unicode.encoding" value="UnicodeLittle"/>
|
||||
<property name="java.class.version" value="65.0"/>
|
||||
<property name="LOGGED_APPLICATION_NAME" value="[fms-api] "/>
|
||||
</properties>
|
||||
<testcase name="savesDirectArrayInOneTransactionAndKeepsEmptyString" classname="cn.g3soft.fmsapi.service.DataSaveServiceTests" time="0.435"/>
|
||||
<testcase name="sqlFailureRollsBackAndReportsOperationLocation" classname="cn.g3soft.fmsapi.service.DataSaveServiceTests" time="0.016"/>
|
||||
</testsuite>
|
||||
+69
@@ -0,0 +1,69 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<testsuite xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="https://maven.apache.org/surefire/maven-surefire-plugin/xsd/surefire-test-report.xsd" version="3.0.2" name="cn.g3soft.fmsapi.utils.JwtUtilsTests" time="0.098" tests="1" errors="0" skipped="0" failures="0" flakes="0">
|
||||
<properties>
|
||||
<property name="java.specification.version" value="21"/>
|
||||
<property name="sun.cpu.isalist" value="amd64"/>
|
||||
<property name="sun.jnu.encoding" value="GBK"/>
|
||||
<property name="java.class.path" value="D:\workspace\code\fms\fms-api\target\test-classes;D:\workspace\code\fms\fms-api\target\classes;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-webmvc\4.1.0\spring-boot-starter-webmvc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter\4.1.0\spring-boot-starter-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-logging\4.1.0\spring-boot-starter-logging-4.1.0.jar;C:\Users\admin\.m2\repository\ch\qos\logback\logback-classic\1.5.34\logback-classic-1.5.34.jar;C:\Users\admin\.m2\repository\ch\qos\logback\logback-core\1.5.34\logback-core-1.5.34.jar;C:\Users\admin\.m2\repository\org\apache\logging\log4j\log4j-to-slf4j\2.25.4\log4j-to-slf4j-2.25.4.jar;C:\Users\admin\.m2\repository\org\apache\logging\log4j\log4j-api\2.25.4\log4j-api-2.25.4.jar;C:\Users\admin\.m2\repository\org\slf4j\jul-to-slf4j\2.0.18\jul-to-slf4j-2.0.18.jar;C:\Users\admin\.m2\repository\jakarta\annotation\jakarta.annotation-api\3.0.0\jakarta.annotation-api-3.0.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-jackson\4.1.0\spring-boot-starter-jackson-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-jackson\4.1.0\spring-boot-jackson-4.1.0.jar;C:\Users\admin\.m2\repository\tools\jackson\core\jackson-databind\3.1.4\jackson-databind-3.1.4.jar;C:\Users\admin\.m2\repository\tools\jackson\core\jackson-core\3.1.4\jackson-core-3.1.4.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-tomcat\4.1.0\spring-boot-starter-tomcat-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-tomcat-runtime\4.1.0\spring-boot-starter-tomcat-runtime-4.1.0.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-core\11.0.22\tomcat-embed-core-11.0.22.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-el\11.0.22\tomcat-embed-el-11.0.22.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-websocket\11.0.22\tomcat-embed-websocket-11.0.22.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-tomcat\4.1.0\spring-boot-tomcat-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-http-converter\4.1.0\spring-boot-http-converter-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-web\7.0.8\spring-web-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-beans\7.0.8\spring-beans-7.0.8.jar;C:\Users\admin\.m2\repository\io\micrometer\micrometer-observation\1.17.0\micrometer-observation-1.17.0.jar;C:\Users\admin\.m2\repository\io\micrometer\micrometer-commons\1.17.0\micrometer-commons-1.17.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-webmvc\4.1.0\spring-boot-webmvc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-servlet\4.1.0\spring-boot-servlet-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-webmvc\7.0.8\spring-webmvc-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-aop\7.0.8\spring-aop-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-expression\7.0.8\spring-expression-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-jdbc\4.1.0\spring-boot-starter-jdbc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-jdbc\4.1.0\spring-boot-jdbc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-sql\4.1.0\spring-boot-sql-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-transaction\4.1.0\spring-boot-transaction-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-persistence\4.1.0\spring-boot-persistence-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-tx\7.0.8\spring-tx-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-jdbc\7.0.8\spring-jdbc-7.0.8.jar;C:\Users\admin\.m2\repository\com\zaxxer\HikariCP\7.0.2\HikariCP-7.0.2.jar;C:\Users\admin\.m2\repository\org\slf4j\slf4j-api\2.0.18\slf4j-api-2.0.18.jar;C:\Users\admin\.m2\repository\com\alibaba\druid\1.2.18\druid-1.2.18.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-api\0.12.6\jjwt-api-0.12.6.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-impl\0.12.6\jjwt-impl-0.12.6.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-jackson\0.12.6\jjwt-jackson-0.12.6.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-databind\2.21.4\jackson-databind-2.21.4.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-annotations\2.21\jackson-annotations-2.21.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-core\2.21.4\jackson-core-2.21.4.jar;C:\Users\admin\.m2\repository\org\lionsoul\ip2region\3.3.7\ip2region-3.3.7.jar;C:\Users\admin\.m2\repository\com\github\ua-parser\uap-java\1.6.1\uap-java-1.6.1.jar;C:\Users\admin\.m2\repository\org\yaml\snakeyaml\2.6\snakLine truncated
|
||||
<property name="java.vm.vendor" value="Eclipse Adoptium"/>
|
||||
<property name="sun.arch.data.model" value="64"/>
|
||||
<property name="user.variant" value=""/>
|
||||
<property name="java.vendor.url" value="https://adoptium.net/"/>
|
||||
<property name="user.timezone" value="Asia/Shanghai"/>
|
||||
<property name="os.name" value="Windows 11"/>
|
||||
<property name="java.vm.specification.version" value="21"/>
|
||||
<property name="APPLICATION_NAME" value="fms-api"/>
|
||||
<property name="sun.java.launcher" value="SUN_STANDARD"/>
|
||||
<property name="user.country" value="CN"/>
|
||||
<property name="sun.boot.library.path" value="D:\devtool\jdk\jdk21\bin"/>
|
||||
<property name="sun.java.command" value="C:\Users\admin\AppData\Local\Temp\surefire10791345176578591782\surefirebooter-20260726214045610_3.jar C:\Users\admin\AppData\Local\Temp\surefire10791345176578591782 2026-07-26T21-40-45_527-jvmRun1 surefire-20260726214045610_1tmp surefire_0-20260726214045610_2tmp"/>
|
||||
<property name="jdk.debug" value="release"/>
|
||||
<property name="surefire.test.class.path" value="D:\workspace\code\fms\fms-api\target\test-classes;D:\workspace\code\fms\fms-api\target\classes;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-webmvc\4.1.0\spring-boot-starter-webmvc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter\4.1.0\spring-boot-starter-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-logging\4.1.0\spring-boot-starter-logging-4.1.0.jar;C:\Users\admin\.m2\repository\ch\qos\logback\logback-classic\1.5.34\logback-classic-1.5.34.jar;C:\Users\admin\.m2\repository\ch\qos\logback\logback-core\1.5.34\logback-core-1.5.34.jar;C:\Users\admin\.m2\repository\org\apache\logging\log4j\log4j-to-slf4j\2.25.4\log4j-to-slf4j-2.25.4.jar;C:\Users\admin\.m2\repository\org\apache\logging\log4j\log4j-api\2.25.4\log4j-api-2.25.4.jar;C:\Users\admin\.m2\repository\org\slf4j\jul-to-slf4j\2.0.18\jul-to-slf4j-2.0.18.jar;C:\Users\admin\.m2\repository\jakarta\annotation\jakarta.annotation-api\3.0.0\jakarta.annotation-api-3.0.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-jackson\4.1.0\spring-boot-starter-jackson-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-jackson\4.1.0\spring-boot-jackson-4.1.0.jar;C:\Users\admin\.m2\repository\tools\jackson\core\jackson-databind\3.1.4\jackson-databind-3.1.4.jar;C:\Users\admin\.m2\repository\tools\jackson\core\jackson-core\3.1.4\jackson-core-3.1.4.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-tomcat\4.1.0\spring-boot-starter-tomcat-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-tomcat-runtime\4.1.0\spring-boot-starter-tomcat-runtime-4.1.0.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-core\11.0.22\tomcat-embed-core-11.0.22.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-el\11.0.22\tomcat-embed-el-11.0.22.jar;C:\Users\admin\.m2\repository\org\apache\tomcat\embed\tomcat-embed-websocket\11.0.22\tomcat-embed-websocket-11.0.22.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-tomcat\4.1.0\spring-boot-tomcat-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-http-converter\4.1.0\spring-boot-http-converter-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-web\7.0.8\spring-web-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-beans\7.0.8\spring-beans-7.0.8.jar;C:\Users\admin\.m2\repository\io\micrometer\micrometer-observation\1.17.0\micrometer-observation-1.17.0.jar;C:\Users\admin\.m2\repository\io\micrometer\micrometer-commons\1.17.0\micrometer-commons-1.17.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-webmvc\4.1.0\spring-boot-webmvc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-servlet\4.1.0\spring-boot-servlet-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-webmvc\7.0.8\spring-webmvc-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-aop\7.0.8\spring-aop-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-expression\7.0.8\spring-expression-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-starter-jdbc\4.1.0\spring-boot-starter-jdbc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-jdbc\4.1.0\spring-boot-jdbc-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-sql\4.1.0\spring-boot-sql-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-transaction\4.1.0\spring-boot-transaction-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\boot\spring-boot-persistence\4.1.0\spring-boot-persistence-4.1.0.jar;C:\Users\admin\.m2\repository\org\springframework\spring-tx\7.0.8\spring-tx-7.0.8.jar;C:\Users\admin\.m2\repository\org\springframework\spring-jdbc\7.0.8\spring-jdbc-7.0.8.jar;C:\Users\admin\.m2\repository\com\zaxxer\HikariCP\7.0.2\HikariCP-7.0.2.jar;C:\Users\admin\.m2\repository\org\slf4j\slf4j-api\2.0.18\slf4j-api-2.0.18.jar;C:\Users\admin\.m2\repository\com\alibaba\druid\1.2.18\druid-1.2.18.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-api\0.12.6\jjwt-api-0.12.6.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-impl\0.12.6\jjwt-impl-0.12.6.jar;C:\Users\admin\.m2\repository\io\jsonwebtoken\jjwt-jackson\0.12.6\jjwt-jackson-0.12.6.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-databind\2.21.4\jackson-databind-2.21.4.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-annotations\2.21\jackson-annotations-2.21.jar;C:\Users\admin\.m2\repository\com\fasterxml\jackson\core\jackson-core\2.21.4\jackson-core-2.21.4.jar;C:\Users\admin\.m2\repository\org\lionsoul\ip2region\3.3.7\ip2region-3.3.7.jar;C:\Users\admin\.m2\repository\com\github\ua-parser\uap-java\1.6.1\uap-java-1.6.1.jar;C:\Users\admin\.m2\repository\org\yaml\snakeyamlLine truncated
|
||||
<property name="sun.cpu.endian" value="little"/>
|
||||
<property name="user.home" value="C:\Users\admin"/>
|
||||
<property name="user.language" value="zh"/>
|
||||
<property name="java.specification.vendor" value="Oracle Corporation"/>
|
||||
<property name="java.version.date" value="2026-04-21"/>
|
||||
<property name="java.home" value="D:\devtool\jdk\jdk21"/>
|
||||
<property name="file.separator" value="\"/>
|
||||
<property name="basedir" value="D:\workspace\code\fms\fms-api"/>
|
||||
<property name="java.vm.compressedOopsMode" value="Zero based"/>
|
||||
<property name="line.separator" value=" "/>
|
||||
<property name="java.vm.specification.vendor" value="Oracle Corporation"/>
|
||||
<property name="java.specification.name" value="Java Platform API Specification"/>
|
||||
<property name="FILE_LOG_CHARSET" value="UTF-8"/>
|
||||
<property name="java.awt.headless" value="true"/>
|
||||
<property name="surefire.real.class.path" value="C:\Users\admin\AppData\Local\Temp\surefire10791345176578591782\surefirebooter-20260726214045610_3.jar"/>
|
||||
<property name="user.script" value=""/>
|
||||
<property name="sun.management.compiler" value="HotSpot 64-Bit Tiered Compilers"/>
|
||||
<property name="java.runtime.version" value="21.0.11+10-LTS"/>
|
||||
<property name="user.name" value="admin"/>
|
||||
<property name="stdout.encoding" value="GBK"/>
|
||||
<property name="path.separator" value=";"/>
|
||||
<property name="os.version" value="10.0"/>
|
||||
<property name="java.runtime.name" value="OpenJDK Runtime Environment"/>
|
||||
<property name="file.encoding" value="UTF-8"/>
|
||||
<property name="java.vm.name" value="OpenJDK 64-Bit Server VM"/>
|
||||
<property name="java.vendor.version" value="Temurin-21.0.11+10"/>
|
||||
<property name="localRepository" value="C:\Users\admin\.m2\repository"/>
|
||||
<property name="java.vendor.url.bug" value="https://github.com/adoptium/adoptium-support/issues"/>
|
||||
<property name="java.io.tmpdir" value="C:\Users\admin\AppData\Local\Temp\"/>
|
||||
<property name="java.version" value="21.0.11"/>
|
||||
<property name="user.dir" value="D:\workspace\code\fms\fms-api"/>
|
||||
<property name="os.arch" value="amd64"/>
|
||||
<property name="java.vm.specification.name" value="Java Virtual Machine Specification"/>
|
||||
<property name="PID" value="5600"/>
|
||||
<property name="sun.os.patch.level" value=""/>
|
||||
<property name="CONSOLE_LOG_CHARSET" value="UTF-8"/>
|
||||
<property name="native.encoding" value="GBK"/>
|
||||
<property name="java.library.path" value="D:\devtool\jdk\jdk21\bin;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;D:\devtool\conda;D:\devtool\conda\Library\mingw-w64\bin;D:\devtool\conda\Library\usr\bin;D:\devtool\conda\Library\bin;D:\devtool\conda\Scripts;D:\devtool\conda\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0;C:\WINDOWS\System32\OpenSSH;C:\Program Files\dotnet;C:\Program Files\NVIDIA Corporation\NVIDIA App\NvDLISR;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;D:\soft\Bandizip;D:\devtool\Git\cmd;D:\devtool\nvm;D:\devtool\nodejs;D:\data\sdk\platform-tools;D:\data\sdk\tools;D:\data\sdk\tools;D:\devtool\jdk\jdk17\bin;D:\devtool\maven\bin;D:\devtool\conda\condabin;D:\devtool\mc;C:\Users\admin\AppData\Local\pnpm\bin;C:\Users\admin\AppData\Local\Microsoft\WindowsApps;D:\soft\Microsoft VS Code\bin;D:\soft\CodeBuddy CN\bin;."/>
|
||||
<property name="java.vm.info" value="mixed mode, sharing"/>
|
||||
<property name="stderr.encoding" value="GBK"/>
|
||||
<property name="java.vendor" value="Eclipse Adoptium"/>
|
||||
<property name="java.vm.version" value="21.0.11+10-LTS"/>
|
||||
<property name="sun.io.unicode.encoding" value="UnicodeLittle"/>
|
||||
<property name="java.class.version" value="65.0"/>
|
||||
<property name="LOGGED_APPLICATION_NAME" value="[fms-api] "/>
|
||||
</properties>
|
||||
<testcase name="tokenContainsAccountAndSessionClaims" classname="cn.g3soft.fmsapi.utils.JwtUtilsTests" time="0.097"/>
|
||||
</testsuite>
|
||||
@@ -0,0 +1,4 @@
|
||||
-------------------------------------------------------------------------------
|
||||
Test set: cn.g3soft.fmsapi.FmsApiApplicationTests
|
||||
-------------------------------------------------------------------------------
|
||||
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 1.861 s -- in cn.g3soft.fmsapi.FmsApiApplicationTests
|
||||
+4
@@ -0,0 +1,4 @@
|
||||
-------------------------------------------------------------------------------
|
||||
Test set: cn.g3soft.fmsapi.database.OrgDataSourceFactoryTests
|
||||
-------------------------------------------------------------------------------
|
||||
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.185 s -- in cn.g3soft.fmsapi.database.OrgDataSourceFactoryTests
|
||||
+4
@@ -0,0 +1,4 @@
|
||||
-------------------------------------------------------------------------------
|
||||
Test set: cn.g3soft.fmsapi.database.OrgDatabaseConfigLoaderTests
|
||||
-------------------------------------------------------------------------------
|
||||
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.148 s -- in cn.g3soft.fmsapi.database.OrgDatabaseConfigLoaderTests
|
||||
+4
@@ -0,0 +1,4 @@
|
||||
-------------------------------------------------------------------------------
|
||||
Test set: cn.g3soft.fmsapi.exception.GlobalExceptionHandlerTests
|
||||
-------------------------------------------------------------------------------
|
||||
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.018 s -- in cn.g3soft.fmsapi.exception.GlobalExceptionHandlerTests
|
||||
+4
@@ -0,0 +1,4 @@
|
||||
-------------------------------------------------------------------------------
|
||||
Test set: cn.g3soft.fmsapi.service.ActiveSessionRegistryTests
|
||||
-------------------------------------------------------------------------------
|
||||
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.002 s -- in cn.g3soft.fmsapi.service.ActiveSessionRegistryTests
|
||||
@@ -0,0 +1,4 @@
|
||||
-------------------------------------------------------------------------------
|
||||
Test set: cn.g3soft.fmsapi.service.AuthServiceTests
|
||||
-------------------------------------------------------------------------------
|
||||
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.218 s -- in cn.g3soft.fmsapi.service.AuthServiceTests
|
||||
+4
@@ -0,0 +1,4 @@
|
||||
-------------------------------------------------------------------------------
|
||||
Test set: cn.g3soft.fmsapi.service.DataSaveServiceTests
|
||||
-------------------------------------------------------------------------------
|
||||
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.453 s -- in cn.g3soft.fmsapi.service.DataSaveServiceTests
|
||||
@@ -0,0 +1,4 @@
|
||||
-------------------------------------------------------------------------------
|
||||
Test set: cn.g3soft.fmsapi.utils.JwtUtilsTests
|
||||
-------------------------------------------------------------------------------
|
||||
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.098 s -- in cn.g3soft.fmsapi.utils.JwtUtilsTests
|
||||
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
Loaded 100 of 170 files, more files were not shown because too many files have changed in this diff.
Show more
Reference in new issue
Block a user