refactor: 将 OpType 字段从枚举类型改为 string 类型

主要变更:
- Operation.OpType: Type → string
- NewFullOperation 参数: opType Type → opType string
- IsValidOpType 参数: opType Type → opType string
- operationMeta.OpType: *Type → *string
- queryclient.ListRequest.OpType: model.Type → string

优点:
- 更灵活,支持动态扩展操作类型
- 不再受限于预定义的枚举常量
- 简化类型转换逻辑

兼容性:
- Type 常量定义保持不变 (OpTypeCreate, OpTypeUpdate 等)
- 使用时需要 string() 转换: string(model.OpTypeCreate)
- 所有单元测试已更新并通过 (100%)

测试结果:
 api/adapter - PASS
 api/highclient - PASS
 api/logger - PASS
 api/model - PASS
 api/persistence - PASS
 api/queryclient - PASS
 internal/* - PASS
This commit is contained in:
ryan
2025-12-24 16:48:00 +08:00
parent 4b72a37120
commit a90d853a6e
16 changed files with 52 additions and 52 deletions

View File

@@ -57,7 +57,7 @@ func Example_dbOnly() {
// 5. 构造 Operation包含 IP 信息)
op, err := model.NewFullOperation(
model.OpSourceDOIP,
model.OpTypeCreate,
string(model.OpTypeCreate),
"10.1000",
"my-repo",
"10.1000/my-repo/doc001",
@@ -139,7 +139,7 @@ func Example_dbAndTrustlog() {
// 5. 构造 Operation
op, err := model.NewFullOperation(
model.OpSourceDOIP,
model.OpTypeCreate,
string(model.OpTypeCreate),
"10.1000",
"my-repo",
"10.1000/my-repo/doc002",
@@ -212,7 +212,7 @@ func Example_trustlogOnly() {
// 5. 构造 Operation
op, err := model.NewFullOperation(
model.OpSourceDOIP,
model.OpTypeCreate,
string(model.OpTypeCreate),
"10.1000",
"my-repo",
"10.1000/my-repo/doc003",
@@ -278,7 +278,7 @@ func Example_mysqlDatabase() {
// 5. 构造并发布 Operation
op, err := model.NewFullOperation(
model.OpSourceDOIP,
model.OpTypeCreate,
string(model.OpTypeCreate),
"10.1000",
"my-repo",
"10.1000/my-repo/doc004",
@@ -349,7 +349,7 @@ func Example_sqliteDatabase() {
// 5. 构造并发布 Operation
op, err := model.NewFullOperation(
model.OpSourceDOIP,
model.OpTypeCreate,
string(model.OpTypeCreate),
"10.1000",
"my-repo",
"10.1000/my-repo/doc005",