222 lines
14 KiB
Go
222 lines
14 KiB
Go
package api_feature
|
||
|
||
import (
|
||
entity "cid/model/entity/dict"
|
||
"time"
|
||
|
||
"gitea.com/red-future/common/beans"
|
||
"github.com/gogf/gf/v2/frame/g"
|
||
)
|
||
|
||
// CreateFieldMappingConfigReq 创建字段映射配置请求
|
||
type CreateFieldMappingConfigReq struct {
|
||
g.Meta `path:"/field-mapping-configs" method:"post" tags:"字段映射配置" summary:"创建字段映射配置" dc:"创建新的字段映射配置"`
|
||
ConfigName string `json:"configName" v:"required#配置名称不能为空" dc:"配置名称"`
|
||
VendorName string `json:"vendorName" v:"required#厂商名称不能为空" dc:"厂商名称"`
|
||
ApiName string `json:"apiName" v:"required#接口名称不能为空" dc:"接口名称"`
|
||
ApiVersion string `json:"apiVersion" dc:"接口版本"`
|
||
SourceField string `json:"sourceField" v:"required#源字段不能为空" dc:"源字段名"`
|
||
SourceFieldType string `json:"sourceFieldType" dc:"源字段数据类型"`
|
||
SourceFieldDesc string `json:"sourceFieldDesc" dc:"源字段描述"`
|
||
TargetField string `json:"targetField" v:"required#目标字段不能为空" dc:"目标字段名"`
|
||
TargetFieldType string `json:"targetFieldType" v:"required#目标字段类型不能为空" dc:"目标数据类型"`
|
||
TargetFieldDesc string `json:"targetFieldDesc" dc:"字段描述"`
|
||
TransformType string `json:"transformType" dc:"转换类型" d:"direct"`
|
||
TransformParams map[string]interface{} `json:"transformParams" dc:"转换参数"`
|
||
ValidationRules map[string]interface{} `json:"validationRules" dc:"验证规则"`
|
||
DefaultValue string `json:"defaultValue" dc:"默认值"`
|
||
IsRequired bool `json:"isRequired" dc:"是否必填" d:"false"`
|
||
IsActive bool `json:"isActive" dc:"是否启用" d:"true"`
|
||
Priority int `json:"priority" dc:"优先级" d:"0"`
|
||
BusinessDomain string `json:"businessDomain" dc:"业务域"`
|
||
FieldGroup string `json:"fieldGroup" dc:"字段分组"`
|
||
ConfigVersion int `json:"configVersion" dc:"配置版本号" d:"1"`
|
||
EffectiveDate *time.Time `json:"effectiveDate" dc:"生效时间"`
|
||
ExpiryDate *time.Time `json:"expiryDate" dc:"失效时间"`
|
||
CreatedBy string `json:"createdBy" dc:"创建人"`
|
||
}
|
||
|
||
// CreateFieldMappingConfigRes 创建字段映射配置响应
|
||
type CreateFieldMappingConfigRes struct {
|
||
Id int64 `json:"id" dc:"配置ID"`
|
||
}
|
||
|
||
// ListFieldMappingConfigReq 获取字段映射配置列表请求
|
||
type ListFieldMappingConfigReq struct {
|
||
g.Meta `path:"/field-mapping-configs" method:"get" tags:"字段映射配置" summary:"获取字段映射配置列表" dc:"分页查询字段映射配置列表"`
|
||
*beans.Page
|
||
ConfigName string `json:"configName" dc:"配置名称"`
|
||
VendorName string `json:"vendorName" dc:"厂商名称"`
|
||
ApiName string `json:"apiName" dc:"接口名称"`
|
||
ApiVersion string `json:"apiVersion" dc:"接口版本"`
|
||
SourceField string `json:"sourceField" dc:"源字段名"`
|
||
TargetField string `json:"targetField" dc:"目标字段名"`
|
||
TransformType string `json:"transformType" dc:"转换类型"`
|
||
IsActive *bool `json:"isActive" dc:"是否启用"`
|
||
BusinessDomain string `json:"businessDomain" dc:"业务域"`
|
||
FieldGroup string `json:"fieldGroup" dc:"字段分组"`
|
||
Keyword string `json:"keyword" dc:"关键字搜索"`
|
||
}
|
||
|
||
// ListFieldMappingConfigRes 获取字段映射配置列表响应
|
||
type ListFieldMappingConfigRes struct {
|
||
List []FieldMappingConfigItem `json:"list" dc:"配置列表"`
|
||
Total int `json:"total" dc:"总数"`
|
||
}
|
||
|
||
// FieldMappingConfigItem 字段映射配置列表项
|
||
type FieldMappingConfigItem struct {
|
||
Id int64 `json:"id,string" dc:"配置ID"`
|
||
ConfigName string `json:"configName" dc:"配置名称"`
|
||
VendorName string `json:"vendorName" dc:"厂商名称"`
|
||
ApiName string `json:"apiName" dc:"接口名称"`
|
||
ApiVersion string `json:"apiVersion" dc:"接口版本"`
|
||
SourceField string `json:"sourceField" dc:"源字段名"`
|
||
TargetField string `json:"targetField" dc:"目标字段名"`
|
||
TargetFieldType string `json:"targetFieldType" dc:"目标数据类型"`
|
||
TransformType string `json:"transformType" dc:"转换类型"`
|
||
TransformTypeName string `json:"transformTypeName" dc:"转换类型名称"`
|
||
IsActive bool `json:"isActive" dc:"是否启用"`
|
||
Priority int `json:"priority" dc:"优先级"`
|
||
BusinessDomain string `json:"businessDomain" dc:"业务域"`
|
||
BusinessDomainName string `json:"businessDomainName" dc:"业务域名称"`
|
||
FieldGroup string `json:"fieldGroup" dc:"字段分组"`
|
||
ConfigVersion int `json:"configVersion" dc:"配置版本号"`
|
||
CreatedBy string `json:"createdBy" dc:"创建人"`
|
||
CreatedTime time.Time `json:"createdTime" dc:"创建时间"`
|
||
UpdatedBy string `json:"updatedBy" dc:"更新人"`
|
||
UpdatedTime time.Time `json:"updatedTime" dc:"更新时间"`
|
||
}
|
||
|
||
// GetFieldMappingConfigReq 获取字段映射配置详情请求
|
||
type GetFieldMappingConfigReq struct {
|
||
g.Meta `path:"/field-mapping-configs/{id}" method:"get" tags:"字段映射配置" summary:"获取字段映射配置详情" dc:"获取字段映射配置详情"`
|
||
Id int64 `json:"id" v:"required#配置ID不能为空" dc:"配置ID"`
|
||
}
|
||
|
||
// GetFieldMappingConfigRes 获取字段映射配置详情响应
|
||
type GetFieldMappingConfigRes struct {
|
||
*entity.FieldMappingConfig
|
||
TransformTypeName string `json:"transformTypeName,omitempty" dc:"转换类型名称"`
|
||
BusinessDomainName string `json:"businessDomainName,omitempty" dc:"业务域名称"`
|
||
}
|
||
|
||
// UpdateFieldMappingConfigReq 更新字段映射配置请求
|
||
type UpdateFieldMappingConfigReq struct {
|
||
g.Meta `path:"/field-mapping-configs/{id}" method:"put" tags:"字段映射配置" summary:"更新字段映射配置" dc:"更新字段映射配置信息"`
|
||
Id int64 `json:"id" v:"required#配置ID不能为空" dc:"配置ID"`
|
||
ConfigName string `json:"configName" dc:"配置名称"`
|
||
VendorName string `json:"vendorName" dc:"厂商名称"`
|
||
ApiName string `json:"apiName" dc:"接口名称"`
|
||
ApiVersion string `json:"apiVersion" dc:"接口版本"`
|
||
SourceField string `json:"sourceField" dc:"源字段名"`
|
||
SourceFieldType string `json:"sourceFieldType" dc:"源字段数据类型"`
|
||
SourceFieldDesc string `json:"sourceFieldDesc" dc:"源字段描述"`
|
||
TargetField string `json:"targetField" dc:"目标字段名"`
|
||
TargetFieldType string `json:"targetFieldType" dc:"目标数据类型"`
|
||
TargetFieldDesc string `json:"targetFieldDesc" dc:"字段描述"`
|
||
TransformType string `json:"transformType" dc:"转换类型"`
|
||
TransformParams map[string]interface{} `json:"transformParams" dc:"转换参数"`
|
||
ValidationRules map[string]interface{} `json:"validationRules" dc:"验证规则"`
|
||
DefaultValue string `json:"defaultValue" dc:"默认值"`
|
||
IsRequired bool `json:"isRequired" dc:"是否必填"`
|
||
IsActive bool `json:"isActive" dc:"是否启用"`
|
||
Priority int `json:"priority" dc:"优先级"`
|
||
BusinessDomain string `json:"businessDomain" dc:"业务域"`
|
||
FieldGroup string `json:"fieldGroup" dc:"字段分组"`
|
||
ConfigVersion int `json:"configVersion" dc:"配置版本号"`
|
||
EffectiveDate *time.Time `json:"effectiveDate" dc:"生效时间"`
|
||
ExpiryDate *time.Time `json:"expiryDate" dc:"失效时间"`
|
||
UpdatedBy string `json:"updatedBy" dc:"更新人"`
|
||
}
|
||
|
||
// DeleteFieldMappingConfigReq 删除字段映射配置请求
|
||
type DeleteFieldMappingConfigReq struct {
|
||
g.Meta `path:"/field-mapping-configs/{id}" method:"delete" tags:"字段映射配置" summary:"删除字段映射配置" dc:"删除字段映射配置"`
|
||
Id int64 `json:"id" v:"required#配置ID不能为空" dc:"配置ID"`
|
||
}
|
||
|
||
// UpdateFieldMappingConfigStatusReq 更新字段映射配置状态请求
|
||
type UpdateFieldMappingConfigStatusReq struct {
|
||
g.Meta `path:"/field-mapping-configs/{id}/status" method:"put" tags:"字段映射配置" summary:"更新字段映射配置状态" dc:"更新字段映射配置状态"`
|
||
Id int64 `json:"id" v:"required#配置ID不能为空" dc:"配置ID"`
|
||
IsActive bool `json:"isActive" v:"required#状态不能为空" dc:"是否启用:true启用/false停用"`
|
||
}
|
||
|
||
// BatchCreateFieldMappingConfigReq 批量创建字段映射配置请求
|
||
type BatchCreateFieldMappingConfigReq struct {
|
||
g.Meta `path:"/field-mapping-configs/batch" method:"post" tags:"字段映射配置" summary:"批量创建字段映射配置" dc:"批量创建字段映射配置"`
|
||
Configs []BatchFieldMappingConfigItem `json:"configs" v:"required#配置列表不能为空" dc:"配置列表"`
|
||
}
|
||
|
||
// BatchFieldMappingConfigItem 批量创建配置项
|
||
type BatchFieldMappingConfigItem struct {
|
||
ConfigName string `json:"configName" v:"required#配置名称不能为空" dc:"配置名称"`
|
||
VendorName string `json:"vendorName" v:"required#厂商名称不能为空" dc:"厂商名称"`
|
||
ApiName string `json:"apiName" v:"required#接口名称不能为空" dc:"接口名称"`
|
||
ApiVersion string `json:"apiVersion" dc:"接口版本"`
|
||
SourceField string `json:"sourceField" v:"required#源字段不能为空" dc:"源字段名"`
|
||
SourceFieldType string `json:"sourceFieldType" dc:"源字段数据类型"`
|
||
SourceFieldDesc string `json:"sourceFieldDesc" dc:"源字段描述"`
|
||
TargetField string `json:"targetField" v:"required#目标字段不能为空" dc:"目标字段名"`
|
||
TargetFieldType string `json:"targetFieldType" v:"required#目标字段类型不能为空" dc:"目标数据类型"`
|
||
TargetFieldDesc string `json:"targetFieldDesc" dc:"字段描述"`
|
||
TransformType string `json:"transformType" dc:"转换类型" d:"direct"`
|
||
TransformParams map[string]interface{} `json:"transformParams" dc:"转换参数"`
|
||
ValidationRules map[string]interface{} `json:"validationRules" dc:"验证规则"`
|
||
DefaultValue string `json:"defaultValue" dc:"默认值"`
|
||
IsRequired bool `json:"isRequired" dc:"是否必填" d:"false"`
|
||
IsActive bool `json:"isActive" dc:"是否启用" d:"true"`
|
||
Priority int `json:"priority" dc:"优先级" d:"0"`
|
||
BusinessDomain string `json:"businessDomain" dc:"业务域"`
|
||
FieldGroup string `json:"fieldGroup" dc:"字段分组"`
|
||
ConfigVersion int `json:"configVersion" dc:"配置版本号" d:"1"`
|
||
}
|
||
|
||
// BatchCreateFieldMappingConfigRes 批量创建字段映射配置响应
|
||
type BatchCreateFieldMappingConfigRes struct {
|
||
SuccessCount int `json:"successCount" dc:"成功数量"`
|
||
FailedCount int `json:"failedCount" dc:"失败数量"`
|
||
FailedItems []BatchCreateFailedItem `json:"failedItems" dc:"失败项列表"`
|
||
}
|
||
|
||
// BatchCreateFailedItem 批量创建失败项
|
||
type BatchCreateFailedItem struct {
|
||
Index int `json:"index" dc:"项索引"`
|
||
ConfigName string `json:"configName" dc:"配置名称"`
|
||
Error string `json:"error" dc:"错误信息"`
|
||
}
|
||
|
||
// QueryFieldMappingByVendorApiReq 根据厂商和接口查询字段映射请求
|
||
type QueryFieldMappingByVendorApiReq struct {
|
||
g.Meta `path:"/field-mapping-configs/query" method:"get" tags:"字段映射配置" summary:"根据厂商和接口查询字段映射" dc:"根据厂商和接口查询字段映射配置"`
|
||
VendorName string `json:"vendorName" v:"required#厂商名称不能为空" dc:"厂商名称"`
|
||
ApiName string `json:"apiName" v:"required#接口名称不能为空" dc:"接口名称"`
|
||
ApiVersion string `json:"apiVersion" dc:"接口版本"`
|
||
IsActive *bool `json:"isActive" dc:"是否启用" d:"true"`
|
||
}
|
||
|
||
// QueryFieldMappingByVendorApiRes 根据厂商和接口查询字段映射响应
|
||
type QueryFieldMappingByVendorApiRes struct {
|
||
List []*entity.FieldMappingConfig `json:"list" dc:"字段映射配置列表"`
|
||
}
|
||
|
||
// ValidateFieldMappingReq 验证字段映射配置请求
|
||
type ValidateFieldMappingReq struct {
|
||
g.Meta `path:"/field-mapping-configs/validate" method:"post" tags:"字段映射配置" summary:"验证字段映射配置" dc:"验证字段映射配置的有效性"`
|
||
ConfigName string `json:"configName" v:"required#配置名称不能为空" dc:"配置名称"`
|
||
VendorName string `json:"vendorName" v:"required#厂商名称不能为空" dc:"厂商名称"`
|
||
ApiName string `json:"apiName" v:"required#接口名称不能为空" dc:"接口名称"`
|
||
SourceField string `json:"sourceField" v:"required#源字段不能为空" dc:"源字段名"`
|
||
TargetField string `json:"targetField" v:"required#目标字段不能为空" dc:"目标字段名"`
|
||
TestValue interface{} `json:"testValue" dc:"测试值"`
|
||
}
|
||
|
||
// ValidateFieldMappingRes 验证字段映射配置响应
|
||
type ValidateFieldMappingRes struct {
|
||
IsValid bool `json:"isValid" dc:"是否有效"`
|
||
TransformedValue interface{} `json:"transformedValue" dc:"转换后的值"`
|
||
Error string `json:"error" dc:"错误信息"`
|
||
Warnings []string `json:"warnings" dc:"警告信息"`
|
||
}
|