* fix:修复响应污染问题 * fix:修改存储相关文件为中文注释 * fix:修复二次退款问题 * fix:修复多个考虑不全面问题 1.误删用户数据 2.R2存储默认区域 3.删除失败导致孤儿记录 4.网络抖动事变时重试 5.前端无限次请求获取图片 6.文件管理权限 * fix:修复字符串截断异常问题和文件下载超时问题 * fix:修复多图问题 * fix:异步生成图片时未配置oss提示错误信息 * fix:修复关闭异步后同步生成出错问题 * feat:新增文件存储测试功能,防止设置后不生效 * fix:修复同步图片转异步后计费错误 * fix:修复无下限扣款问题 * fix:修复结算重复扣款问题 * fix:修复计费出错导致的0费用结算 * fix:修复回调双重履约 * fix:修复预扣事务 * fix:修复费用字段类型问题 * fix:修复缓存问题 * fix:修复安全问题 * fix:修复数据库操作事务问题 * refactor:重构事务使用方式,改为官方推荐的dao形式 * fix:修复余额更新隐患 * fix:修复N+1查询问题 * fix:修复密钥安全问题 * fix:结算失败时打印错误日志 * improve:优化扣款 * fix:修复用户接口越权 --------- Co-authored-by: chengqian <wuchengqian@kkidc.com>
73 lines
3.0 KiB
Go
73 lines
3.0 KiB
Go
package v1
|
|
|
|
import "github.com/gogf/gf/v2/frame/g"
|
|
|
|
// AdminSettingsCategoriesReq 获取所有设置分类
|
|
type AdminSettingsCategoriesReq struct {
|
|
g.Meta `path:"/settings/categories" method:"get" mime:"json" tags:"管理后台-系统设置" summary:"获取设置分类列表"`
|
|
}
|
|
|
|
type SettingCategoryItem struct {
|
|
Key string `json:"key"`
|
|
Label string `json:"label"`
|
|
Icon string `json:"icon,omitempty"`
|
|
Order int `json:"order"`
|
|
}
|
|
|
|
type AdminSettingsCategoriesRes struct {
|
|
List []SettingCategoryItem `json:"list"`
|
|
}
|
|
|
|
// AdminSettingsGetReq 获取指定分类的设置(含 schema + 当前值)
|
|
type AdminSettingsGetReq struct {
|
|
g.Meta `path:"/settings/{category}" method:"get" mime:"json" tags:"管理后台-系统设置" summary:"获取分类设置"`
|
|
Category string `json:"category" in:"path" v:"required" dc:"设置分类"`
|
|
}
|
|
|
|
type AdminSettingItem struct {
|
|
Key string `json:"key"`
|
|
Value any `json:"value"`
|
|
Type string `json:"type"`
|
|
Label string `json:"label"`
|
|
Description string `json:"description,omitempty"`
|
|
Sensitive bool `json:"sensitive,omitempty"`
|
|
Validation string `json:"validation,omitempty"`
|
|
Default any `json:"default"`
|
|
}
|
|
|
|
type AdminSettingsGetRes struct {
|
|
List []AdminSettingItem `json:"list"`
|
|
}
|
|
|
|
// AdminSettingsUpdateReq 更新指定分类的设置
|
|
type AdminSettingsUpdateReq struct {
|
|
g.Meta `path:"/settings/{category}" method:"put" mime:"json" tags:"管理后台-系统设置" summary:"更新分类设置"`
|
|
Category string `json:"category" in:"path" v:"required" dc:"设置分类"`
|
|
Settings map[string]any `json:"settings" v:"required" dc:"设置键值对"`
|
|
}
|
|
|
|
type AdminSettingsUpdateRes struct{}
|
|
|
|
// AdminStorageTestReq 测试对象存储(OSS/S3/COS)配置连通性。
|
|
// 携带表单中的存储配置(可含未保存的改动);access_key_id / access_key_secret 为空或掩码
|
|
// "******" 时后端回落到已保存的值,从而支持「未保存直接测试」。
|
|
type AdminStorageTestReq struct {
|
|
g.Meta `path:"/settings/storage/test" method:"post" mime:"json" tags:"管理后台-系统设置" summary:"测试对象存储配置"`
|
|
Provider string `json:"storage_provider" dc:"存储供应商"`
|
|
Endpoint string `json:"storage_endpoint" dc:"存储端点"`
|
|
Region string `json:"storage_region" dc:"存储区域"`
|
|
Bucket string `json:"storage_bucket" dc:"存储桶名称"`
|
|
AccessKeyID string `json:"storage_access_key_id" dc:"Access Key ID,空/掩码回落已保存值"`
|
|
SecretKey string `json:"storage_access_key_secret" dc:"Access Key Secret,空/掩码回落已保存值"`
|
|
UseSSL bool `json:"storage_use_ssl" dc:"是否启用 SSL"`
|
|
PathPrefix string `json:"storage_path_prefix" dc:"路径前缀"`
|
|
}
|
|
|
|
type AdminStorageTestRes struct {
|
|
Uploaded bool `json:"uploaded"` // 测试图片上传成功
|
|
Downloaded bool `json:"downloaded"` // 下载并校验内容一致
|
|
Deleted bool `json:"deleted"` // 测试对象清理成功
|
|
ElapsedMs int64 `json:"elapsed_ms"` // 往返耗时(毫秒)
|
|
Message string `json:"message"` // 结果描述
|
|
}
|