diff --git a/enums/data_type.go b/enums/data_type.go new file mode 100644 index 0000000..529fbb6 --- /dev/null +++ b/enums/data_type.go @@ -0,0 +1,45 @@ +// Package enums ... +// +// Description : enums ... +// +// Author : go_developer@163.com<白茶清欢> +// +// Date : 2025-08-22 23:58 +package enums + +import ( + "strings" +) + +type SwaggerDataType string + +func (sdt SwaggerDataType) String() string { + return string(sdt) +} + +// MarshalJSON 支持序列化 +func (sdt SwaggerDataType) MarshalJSON() ([]byte, error) { + return []byte(`"` + sdt.String() + `"`), nil +} + +// UnmarshalJSON 支持反序列化 +func (sdt *SwaggerDataType) UnmarshalJSON(d []byte) error { + *sdt = SwaggerDataType(strings.Trim(string(d), `"`)) + return nil +} + +const ( + SwaggerDataTypeInteger SwaggerDataType = "integer" // 32 位有符号 + SwaggerDataTypeLong SwaggerDataType = "long" // 64 位有符号 + SwaggerDataTypeFloat SwaggerDataType = "number" + SwaggerDataTypeDouble SwaggerDataType = "number" + SwaggerDataTypeNumber SwaggerDataType = "number" + SwaggerDataTypeByte SwaggerDataType = "string" + SwaggerDataTypeBinary SwaggerDataType = "binary" // 任意 8 进制序列 + SwaggerDataTypeString SwaggerDataType = "string" + SwaggerDataTypeDate SwaggerDataType = "string" + SwaggerDataTypePassword SwaggerDataType = "password" + SwaggerDataTypeBoolean SwaggerDataType = "boolean" + SwaggerDataTypeArray SwaggerDataType = "array" + SwaggerDataTypeObject SwaggerDataType = "object" +)