This commit is contained in:
小蚂蚁云
2026-10-26 08:46:20 +08:00
parent 276740924a
commit 69f5c1767d
26 changed files with 259 additions and 121 deletions
+11
View File
@@ -42,6 +42,8 @@
package v1
import (
"fmt"
"github.com/gogf/gf/v2/net/ghttp"
"github.com/gogf/gf/v2/os/gtime"
"github.com/gogf/gf/v2/util/gmeta"
@@ -177,6 +179,15 @@ type ExampleImportRes struct {
Reasons []string `json:"reasons"` // 失败原因列表
}
// ResMsg 导入结果提示语(response.MsgProvider,前端成功通道直接弹出):
// 无失败行时"成功导入 X 条数据",有失败行时"成功导入 X 条,失败 Y 条"
func (r *ExampleImportRes) ResMsg() string {
if r.Failed > 0 {
return fmt.Sprintf("成功导入 %d 条,失败 %d 条", r.Success, r.Failed)
}
return fmt.Sprintf("成功导入 %d 条数据", r.Success)
}
// ExampleExportReq 导出案例演示请求
type ExampleExportReq struct {
gmeta.Meta `method:"get" path:"/api/example/export" summary:"导出案例演示" permission:"sys:example:export" log:"案例演示-导出数据" logType:"export"`
+11
View File
@@ -42,6 +42,8 @@
package v1
import (
"fmt"
"github.com/gogf/gf/v2/net/ghttp"
"github.com/gogf/gf/v2/os/gtime"
"github.com/gogf/gf/v2/util/gmeta"
@@ -174,6 +176,15 @@ type LevelImportRes struct {
Reasons []string `json:"reasons"` // 失败原因列表
}
// ResMsg 导入结果提示语(response.MsgProvider,前端成功通道直接弹出):
// 无失败行时"成功导入 X 条数据",有失败行时"成功导入 X 条,失败 Y 条"
func (r *LevelImportRes) ResMsg() string {
if r.Failed > 0 {
return fmt.Sprintf("成功导入 %d 条,失败 %d 条", r.Success, r.Failed)
}
return fmt.Sprintf("成功导入 %d 条数据", r.Success)
}
// LevelExportReq 导出职级请求
// 按查询条件导出符合条件的记录
type LevelExportReq struct {
+1
View File
@@ -71,6 +71,7 @@ type LoginLogItem struct {
StatusText string `json:"statusText"` // 状态文本
Error string `json:"error"` // 错误信息
CreateUser string `json:"createUser"` // 创建人
Avatar string `json:"avatar"` // 登录账号头像(读侧按用户名回查补全,已补访问域名)
CreateTime *gtime.Time `json:"createTime"` // 创建时间
UpdateTime *gtime.Time `json:"updateTime"` // 更新时间
}
+1
View File
@@ -71,6 +71,7 @@ type OperLogItem struct {
StatusText string `json:"statusText"` // 状态文本
Error string `json:"error"` // 错误信息
CreateUser string `json:"createUser"` // 操作人
Avatar string `json:"avatar"` // 操作人头像(读侧按用户名回查补全,已补访问域名)
CreateTime *gtime.Time `json:"createTime"` // 创建时间
UpdateTime *gtime.Time `json:"updateTime"` // 更新时间
}
+25 -16
View File
@@ -189,28 +189,37 @@ type TenantBatchDeleteReq struct {
// TenantBatchDeleteRes 批量删除结果
type TenantBatchDeleteRes struct{}
// TenantAccountReq 创建租户账号请求
// 同时创建租户及其初始管理员账号
// TenantAccountReq 添加租户账号请求
// 在指定租户下创建用户账号(租户管理页的用户列表入口),
// 字段口径与 UserAddReq 一致(avatar 提交上传接口返回的地址,
// city 为四级区划编码数组),另带目标租户ID tenantId
type TenantAccountReq struct {
gmeta.Meta `method:"post" path:"/api/tenant/account" summary:"创建租户账号" permission:"sys:tenant:add" log:"租户管理-创建租户账号" logType:"add"`
Name string `json:"name" v:"required#请输入租户名称" dc:"租户名称"` // 租户名称
Contact string `json:"contact" dc:"联系人"` // 联系人
Mobile string `json:"mobile" v:"phone#手机号格式不正确" dc:"联系电话"` // 联系电话
Email string `json:"email" v:"email#邮箱格式不正确" dc:"邮箱"` // 邮箱
Address string `json:"address" dc:"地址"` // 地址
ExpireTime string `json:"expireTime" dc:"过期时间"` // 过期时间
MaxUserNum int `json:"maxUserNum" dc:"用户数上限"` // 用户数上限
Note string `json:"note" dc:"备注"` // 备注
Username string `json:"username" v:"required#请输入管理员账号|length:2,30#账号长度需在2~30位" dc:"初始管理员账号"` // 初始管理员账号
Password string `json:"password" v:"required#请输入密码|length:6,32#密码长度需在6~32位" dc:"初始管理员密码"` // 初始管理员密码
Realname string `json:"realname" dc:"管理员姓名"` // 管理员姓名
gmeta.Meta `method:"post" path:"/api/tenant/account" summary:"添加租户账号" permission:"sys:tenant:add" log:"租户管理-添加账号" logType:"add"`
TenantId int `json:"tenantId" v:"required#缺少租户ID" dc:"目标租户ID"` // 目标租户ID
Username string `json:"username" v:"required#请输入用户名|length:2,30#用户名长度需在2~30位" dc:"用户名"` // 用户名
Password string `json:"password" v:"required#请输入密码|length:6,32#密码长度需在6~32位" dc:"密码"` // 密码
Realname string `json:"realname" v:"required#请输入姓名" dc:"姓名"` // 姓名
Gender int `json:"gender" dc:"性别:1-男 2-女 3-保密"` // 性别
Mobile string `json:"mobile" v:"phone#手机号格式不正确" dc:"手机号"` // 手机号
Email string `json:"email" v:"email#邮箱格式不正确" dc:"邮箱"` // 邮箱
Roles []int64 `json:"roles" dc:"角色ID列表"` // 角色ID列表
DeptId int `json:"deptId" dc:"部门ID"` // 部门ID
LevelId int `json:"levelId" dc:"职级ID"` // 职级ID
PositionId int `json:"positionId" dc:"岗位ID"` // 岗位ID
City []string `json:"city" dc:"省市区街道编码数组"` // 省市区街道编码数组
Address string `json:"address" dc:"详细地址"` // 详细地址
Avatar string `json:"avatar" dc:"头像"` // 头像
Intro string `json:"intro" dc:"个人简介"` // 个人简介
Status int `json:"status" dc:"状态:1-正常 2-禁用"` // 状态
Sort int `json:"sort" dc:"排序"` // 排序
Note string `json:"note" dc:"备注"` // 备注
}
// TenantAccountRes 创建租户账号结果
// TenantAccountRes 添加租户账号结果
type TenantAccountRes struct {
TenantId int64 `json:"tenantId"` // 租户ID
Code string `json:"code"` // 租户编码
UserId int64 `json:"userId"` // 管理员用户ID
UserId int64 `json:"userId"` // 新用户ID
}
// TenantUsersReq 查询租户用户请求
+11
View File
@@ -42,6 +42,8 @@
package v1
import (
"fmt"
"github.com/gogf/gf/v2/net/ghttp"
"github.com/gogf/gf/v2/os/gtime"
"github.com/gogf/gf/v2/util/gmeta"
@@ -255,6 +257,15 @@ type UserImportRes struct {
Reasons []string `json:"reasons"` // 失败原因列表
}
// ResMsg 导入结果提示语(response.MsgProvider,前端成功通道直接弹出):
// 无失败行时"成功导入 X 条数据",有失败行时"成功导入 X 条,失败 Y 条"
func (r *UserImportRes) ResMsg() string {
if r.Failed > 0 {
return fmt.Sprintf("成功导入 %d 条,失败 %d 条", r.Success, r.Failed)
}
return fmt.Sprintf("成功导入 %d 条数据", r.Success)
}
// UserExportReq 导出用户请求
// 按查询条件导出符合条件的记录
type UserExportReq struct {