迁移:包名 cn.g3soft.fmsapi → cn.g3soft.erp;artifactId/name fms-api → erp-api;启动类 FmsApiApplication → ErpApiApplication;配置前缀 fms.* → erp.*;FMS_JWT_SECRET → ERP_JWT_SECRET;未带入流程引擎(service/workflow、WorkflowController*)、数据库迁移脚本(config/migrations、tools/migration)与 data/files;一并迁入 Maven Wrapper、config/dbconfigs、config/legacy-tls.security、start.cmd。
重构:拆解 utils.DbUtils(1470 行)为 common.util.SqlText + database.{MetadataReader,RowReader,RowWriter} + database.model(5 个 record);认证专用账号查询移出访问层到 service.auth.UserAccountReader;新建 common/(ApiResponse + exception 6 + util 5 + util/snowflake 9);database/ 分 org/(多机构连接)与 model/(纯数据载体);JwtUtils 与客户端信息采集簇归入 service.auth。
清理:删除迁移带入的空目录、HELP.md,及 pom 中 Initializr 留下的空 url/licenses/developers/scm;修正 OrgDataSourceFactoryTests 的陈旧断言(停留在 2026-07 的旧策略,实现已于 2026-08 反转为继续重试、不停建连线程、不 failFast)。
验证:mvn test 80/80 通过;另有 2 个 @SpringBootTest 需真实 SQL Server。本次仅提交 server/;根 .gitignore、根 .gitattributes 与 docs/ 的同步改动不在本次范围内。
837 B
837 B
Organization Database Configs
Each organization uses one SQL Server connection file named {ORG_ID}.properties.
Organization IDs are normalized to uppercase and may contain only letters, numbers,
underscores, and hyphens.
Example: G3HD.properties
url=jdbc:sqlserver://127.0.0.1:1433;databaseName=G3HD
username=sa
password=your-password
driver=com.microsoft.sqlserver.jdbc.SQLServerDriver
The *.properties files in this directory are ignored by Git.
Development startup for legacy SQL Server
Run the following command from the server directory when connecting to a
legacy SQL Server that only supports TLS 1.0:
set JAVA_HOME=D:\devtool\jdk\jdk-21
set PATH=%JAVA_HOME%\bin;%PATH%
mvn "-Dspring-boot.run.jvmArguments=-Djava.security.properties=./config/legacy-tls.security" spring-boot:run