mirror of
https://github.com/bufanyun/hotgo.git
synced 2025-11-14 05:03:49 +08:00
tt
This commit is contained in:
73
hotgo-server/app/form/adminForm/config_form.go
Normal file
73
hotgo-server/app/form/adminForm/config_form.go
Normal file
@@ -0,0 +1,73 @@
|
||||
package adminForm
|
||||
|
||||
import (
|
||||
"github.com/bufanyun/hotgo/app/form"
|
||||
"github.com/bufanyun/hotgo/app/form/input"
|
||||
"github.com/bufanyun/hotgo/app/model/entity"
|
||||
"github.com/gogf/gf/v2/frame/g"
|
||||
)
|
||||
|
||||
// 获取指定配置键的值
|
||||
type ConfigGetValueReq struct {
|
||||
Key string `json:"key" v:"required#配置键不能为空" description:"配置键"`
|
||||
g.Meta `path:"/config/get_value" method:"get" tags:"配置" summary:"获取指定配置键的值"`
|
||||
}
|
||||
type ConfigGetValueRes struct {
|
||||
Value string `json:"value" description:"配置值"`
|
||||
}
|
||||
|
||||
// 名称是否唯一
|
||||
type ConfigNameUniqueReq struct {
|
||||
Name string `json:"name" v:"required#配置名称不能为空" description:"配置名称"`
|
||||
Id int64 `json:"id" description:"配置ID"`
|
||||
g.Meta `path:"/config/name_unique" method:"get" tags:"配置" summary:"配置名称是否唯一"`
|
||||
}
|
||||
type ConfigNameUniqueRes struct {
|
||||
IsUnique bool `json:"is_unique" description:"是否唯一"`
|
||||
}
|
||||
|
||||
// 查询列表
|
||||
type ConfigListReq struct {
|
||||
form.PageReq
|
||||
form.RangeDateReq
|
||||
form.StatusReq
|
||||
Name string `json:"name" description:"配置名称"`
|
||||
g.Meta `path:"/config/list" method:"get" tags:"配置" summary:"获取配置列表"`
|
||||
}
|
||||
|
||||
type ConfigListRes struct {
|
||||
List []*input.SysConfigListModel `json:"list" description:"数据列表"`
|
||||
form.PageRes
|
||||
}
|
||||
|
||||
// 获取指定信息
|
||||
type ConfigViewReq struct {
|
||||
Id string `json:"id" v:"required#配置ID不能为空" description:"配置ID"`
|
||||
g.Meta `path:"/config/view" method:"get" tags:"配置" summary:"获取指定信息"`
|
||||
}
|
||||
type ConfigViewRes struct {
|
||||
*input.SysConfigViewModel
|
||||
}
|
||||
|
||||
// 修改/新增
|
||||
type ConfigEditReq struct {
|
||||
entity.SysConfig
|
||||
g.Meta `path:"/config/edit" method:"post" tags:"配置" summary:"修改/新增配置"`
|
||||
}
|
||||
type ConfigEditRes struct{}
|
||||
|
||||
// 删除
|
||||
type ConfigDeleteReq struct {
|
||||
Id interface{} `json:"id" v:"required#配置ID不能为空" description:"配置ID"`
|
||||
g.Meta `path:"/config/delete" method:"post" tags:"配置" summary:"删除配置"`
|
||||
}
|
||||
type ConfigDeleteRes struct{}
|
||||
|
||||
// 最大排序
|
||||
type ConfigMaxSortReq struct {
|
||||
Id int64 `json:"id" description:"配置ID"`
|
||||
g.Meta `path:"/config/max_sort" method:"get" tags:"配置" summary:"配置最大排序"`
|
||||
}
|
||||
type ConfigMaxSortRes struct {
|
||||
Sort int `json:"sort" description:"排序"`
|
||||
}
|
||||
65
hotgo-server/app/form/adminForm/dept_form.go
Normal file
65
hotgo-server/app/form/adminForm/dept_form.go
Normal file
@@ -0,0 +1,65 @@
|
||||
package adminForm
|
||||
|
||||
import (
|
||||
"github.com/bufanyun/hotgo/app/form/input"
|
||||
"github.com/bufanyun/hotgo/app/model/entity"
|
||||
"github.com/gogf/gf/v2/frame/g"
|
||||
)
|
||||
|
||||
// 名称是否唯一
|
||||
type DeptNameUniqueReq struct {
|
||||
Name string `json:"name" v:"required#部门名称不能为空" description:"部门名称"`
|
||||
Id int64 `json:"id" description:"部门ID"`
|
||||
g.Meta `path:"/dept/name_unique" method:"get" tags:"部门" summary:"部门名称是否唯一"`
|
||||
}
|
||||
type DeptNameUniqueRes struct {
|
||||
IsUnique bool `json:"is_unique" description:"是否唯一"`
|
||||
}
|
||||
|
||||
// 查询列表树
|
||||
type DeptListTreeReq struct {
|
||||
Id int64 `json:"id" description:"部门ID"`
|
||||
g.Meta `path:"/dept/list_tree" method:"get" tags:"部门" summary:"获取部门列表树"`
|
||||
}
|
||||
|
||||
type DeptListTreeRes []*input.AdminDeptListTreeModel
|
||||
|
||||
// 查询列表
|
||||
type DeptListReq struct {
|
||||
Name string `json:"name" description:"部门名称"`
|
||||
g.Meta `path:"/dept/list" method:"get" tags:"部门" summary:"获取部门列表"`
|
||||
}
|
||||
|
||||
type DeptListRes []*input.AdminDeptListModel
|
||||
|
||||
// 获取指定信息
|
||||
type DeptViewReq struct {
|
||||
Id int64 `json:"id" v:"required#部门ID不能为空" description:"部门ID"`
|
||||
g.Meta `path:"/dept/view" method:"get" tags:"部门" summary:"获取指定信息"`
|
||||
}
|
||||
type DeptViewRes struct {
|
||||
*input.AdminDeptViewModel
|
||||
}
|
||||
|
||||
// 修改/新增字典数据
|
||||
type DeptEditReq struct {
|
||||
entity.AdminDept
|
||||
g.Meta `path:"/dept/edit" method:"post" tags:"部门" summary:"修改/新增部门"`
|
||||
}
|
||||
type DeptEditRes struct{}
|
||||
|
||||
// 删除字典类型
|
||||
type DeptDeleteReq struct {
|
||||
Id interface{} `json:"id" v:"required#部门ID不能为空" description:"部门ID"`
|
||||
g.Meta `path:"/dept/delete" method:"post" tags:"部门" summary:"删除部门"`
|
||||
}
|
||||
type DeptDeleteRes struct{}
|
||||
|
||||
// 最大排序
|
||||
type DeptMaxSortReq struct {
|
||||
Id int64 `json:"id" description:"部门ID"`
|
||||
g.Meta `path:"/dept/max_sort" method:"get" tags:"部门" summary:"部门最大排序"`
|
||||
}
|
||||
type DeptMaxSortRes struct {
|
||||
Sort int `json:"sort" description:"排序"`
|
||||
}
|
||||
136
hotgo-server/app/form/adminForm/dict_form.go
Normal file
136
hotgo-server/app/form/adminForm/dict_form.go
Normal file
@@ -0,0 +1,136 @@
|
||||
package adminForm
|
||||
|
||||
import (
|
||||
"github.com/bufanyun/hotgo/app/form"
|
||||
"github.com/bufanyun/hotgo/app/model/entity"
|
||||
"github.com/gogf/gf/v2/frame/g"
|
||||
)
|
||||
|
||||
/************************ 字典数据 *****************/
|
||||
|
||||
// 数据键值是否唯一
|
||||
type DictDataUniqueReq struct {
|
||||
Value string `json:"value" v:"required#数据键值不能为空" description:"数据键值"`
|
||||
Type string `json:"type" example:"sys_common_status" v:"required#字典类型不能为空" description:"字典类型"`
|
||||
Id int64 `json:"id" description:"字典数据ID"`
|
||||
g.Meta `path:"/dict_data/unique" method:"get" tags:"字典" summary:"数据键值是否唯一"`
|
||||
}
|
||||
type DictDataUniqueRes struct {
|
||||
IsUnique bool `json:"is_unique" description:"是否唯一"`
|
||||
}
|
||||
|
||||
// 查询字典数据最大排序
|
||||
type DictDataMaxSortReq struct {
|
||||
Type string `json:"type" example:"sys_common_status" v:"required#字典类型不能为空" description:"字典类型"`
|
||||
g.Meta `path:"/dict_data/max_sort" method:"get" tags:"字典" summary:"查询字典数据最大排序"`
|
||||
}
|
||||
type DictDataMaxSortRes struct {
|
||||
Sort int `json:"sort" description:"排序"`
|
||||
}
|
||||
|
||||
// 修改/新增字典数据
|
||||
type DictDataEditReq struct {
|
||||
entity.SysDictData
|
||||
g.Meta `path:"/dict_data/edit" method:"post" tags:"字典" summary:"修改/新增字典数据"`
|
||||
}
|
||||
type DictDataEditRes struct{}
|
||||
|
||||
// 删除字典类型
|
||||
type DictDataDeleteReq struct {
|
||||
Id interface{} `json:"id" v:"required#字典数据ID不能为空" description:"字典数据ID"`
|
||||
g.Meta `path:"/dict_data/delete" method:"post" tags:"字典" summary:"删除字典数据"`
|
||||
}
|
||||
type DictDataDeleteRes struct{}
|
||||
|
||||
// 获取指定字典数据信息
|
||||
type DictDataViewReq struct {
|
||||
Id string `json:"id" v:"required#字典数据ID不能为空" description:"字典数据ID"`
|
||||
g.Meta `path:"/dict_data/view" method:"get" tags:"字典" summary:"获取指定字典数据信息"`
|
||||
}
|
||||
type DictDataViewRes struct {
|
||||
*entity.SysDictData
|
||||
}
|
||||
|
||||
// 获取字典数据列表
|
||||
type DictDataListReq struct {
|
||||
form.PageReq
|
||||
Type string `json:"type" example:"sys_common_status" v:"required#字典类型不能为空" description:"字典类型"`
|
||||
g.Meta `path:"/dict_data/list" method:"get" tags:"字典" summary:"获取字典数据列表"`
|
||||
}
|
||||
type DictDataListRes struct {
|
||||
List []*entity.SysDictData `json:"list" description:"数据列表"`
|
||||
form.PageRes
|
||||
}
|
||||
|
||||
// 获取指定字典类型的属性数据
|
||||
type DictAttributeReq struct {
|
||||
Type string `json:"type" example:"sys_common_status" v:"required#字典类型不能为空" description:"字典类型"`
|
||||
g.Meta `path:"/dict/attribute" method:"get" tags:"字典" summary:"获取指定字典类型的属性数据"`
|
||||
}
|
||||
type DictAttributeRes []*entity.SysDictData
|
||||
|
||||
/************************ 字典类型 *****************/
|
||||
|
||||
// 修改/新增字典类型
|
||||
type DictTypeExportReq struct {
|
||||
form.PageReq
|
||||
form.RangeDateReq
|
||||
form.StatusReq
|
||||
Name string `json:"name" description:"字典名称"`
|
||||
Type string `json:"type" description:"字典类型"`
|
||||
g.Meta `path:"/dict_type/export" method:"get" tags:"字典" summary:"导出字典类型"`
|
||||
}
|
||||
type DictTypeExportRes struct{}
|
||||
|
||||
// 刷新字典缓存
|
||||
type DictTypeRefreshCacheReq struct {
|
||||
g.Meta `path:"/dict_type/refresh_cache" method:"get" tags:"字典" summary:"刷新字典缓存"`
|
||||
}
|
||||
type DictTypeRefreshCacheRes struct{}
|
||||
|
||||
// 获取字典类型列表
|
||||
type DictTypeListReq struct {
|
||||
form.PageReq
|
||||
form.RangeDateReq
|
||||
form.StatusReq
|
||||
Name string `json:"name" description:"字典名称"`
|
||||
Type string `json:"type" description:"字典类型"`
|
||||
g.Meta `path:"/dict_type/list" method:"get" tags:"字典" summary:"获取字典类型列表"`
|
||||
}
|
||||
type DictTypeListRes struct {
|
||||
List []*entity.SysDictType `json:"list" description:"数据列表"`
|
||||
form.PageRes
|
||||
}
|
||||
|
||||
// 修改/新增字典类型
|
||||
type DictTypeEditReq struct {
|
||||
entity.SysDictType
|
||||
g.Meta `path:"/dict_type/edit" method:"post" tags:"字典" summary:"修改/新增字典类型"`
|
||||
}
|
||||
type DictTypeEditRes struct{}
|
||||
|
||||
// 删除字典类型
|
||||
type DictTypeDeleteReq struct {
|
||||
Id interface{} `json:"id" v:"required#字典类型ID不能为空" description:"字典类型ID"`
|
||||
g.Meta `path:"/dict_type/delete" method:"post" tags:"字典" summary:"删除字典类型"`
|
||||
}
|
||||
type DictTypeDeleteRes struct{}
|
||||
|
||||
// 获取指定字典类型信息
|
||||
type DictTypeViewReq struct {
|
||||
Id string `json:"id" v:"required#字典类型ID不能为空" description:"字典类型ID"`
|
||||
g.Meta `path:"/dict_type/view" method:"get" tags:"字典" summary:"获取指定字典类型信息"`
|
||||
}
|
||||
type DictTypeViewRes struct {
|
||||
*entity.SysDictType
|
||||
}
|
||||
|
||||
// 类型是否唯一
|
||||
type DictTypeUniqueReq struct {
|
||||
Type string `json:"type" example:"sys_common_status" v:"required#字典类型不能为空" description:"字典类型"`
|
||||
Id int64 `json:"id" description:"字典类型ID"`
|
||||
g.Meta `path:"/dict_type/unique" method:"get" tags:"字典" summary:"类型是否唯一"`
|
||||
}
|
||||
type DictTypeUniqueRes struct {
|
||||
IsUnique bool `json:"is_unique" description:"是否唯一"`
|
||||
}
|
||||
47
hotgo-server/app/form/adminForm/log_form.go
Normal file
47
hotgo-server/app/form/adminForm/log_form.go
Normal file
@@ -0,0 +1,47 @@
|
||||
package adminForm
|
||||
|
||||
import (
|
||||
"github.com/bufanyun/hotgo/app/form"
|
||||
"github.com/bufanyun/hotgo/app/form/input"
|
||||
"github.com/gogf/gf/v2/frame/g"
|
||||
)
|
||||
|
||||
// 清空日志
|
||||
type LogClearReq struct {
|
||||
g.Meta `path:"/log/clear" method:"post" tags:"日志" summary:"清空日志"`
|
||||
}
|
||||
type LogClearRes struct{}
|
||||
|
||||
// 导出
|
||||
type LogExportReq struct {
|
||||
form.PageReq
|
||||
form.RangeDateReq
|
||||
Module string `json:"module" description:"应用端口"`
|
||||
MemberId int `json:"member_id" description:"用户ID"`
|
||||
TakeUpTime int `json:"take_up_time" description:"请求耗时"`
|
||||
Method string `json:"method" description:"请求方式"`
|
||||
Url string `json:"url" description:"请求路径"`
|
||||
Ip string `json:"ip" description:"访问IP"`
|
||||
ErrorCode string `json:"error_code" description:"状态码"`
|
||||
g.Meta `path:"/log/export" method:"get" tags:"日志" summary:"导出日志"`
|
||||
}
|
||||
type LogExportRes struct{}
|
||||
|
||||
// 获取菜单列表
|
||||
type LogListReq struct {
|
||||
form.PageReq
|
||||
form.RangeDateReq
|
||||
Module string `json:"module" description:"应用端口"`
|
||||
MemberId int `json:"member_id" description:"用户ID"`
|
||||
TakeUpTime int `json:"take_up_time" description:"请求耗时"`
|
||||
Method string `json:"method" description:"请求方式"`
|
||||
Url string `json:"url" description:"请求路径"`
|
||||
Ip string `json:"ip" description:"访问IP"`
|
||||
ErrorCode string `json:"error_code" description:"状态码"`
|
||||
g.Meta `path:"/log/list" method:"get" tags:"日志" summary:"获取日志列表"`
|
||||
}
|
||||
|
||||
type LogListRes struct {
|
||||
List []*input.LogListModel `json:"list" description:"数据列表"`
|
||||
form.PageRes
|
||||
}
|
||||
41
hotgo-server/app/form/adminForm/login_form.go
Normal file
41
hotgo-server/app/form/adminForm/login_form.go
Normal file
@@ -0,0 +1,41 @@
|
||||
//
|
||||
// @Link https://github.com/bufanyun/hotgo
|
||||
// @Copyright Copyright (c) 2022 HotGo CLI
|
||||
// @Author Ms <133814250@qq.com>
|
||||
// @License https://github.com/bufanyun/hotgo/blob/master/LICENSE
|
||||
//
|
||||
package adminForm
|
||||
|
||||
import (
|
||||
"github.com/bufanyun/hotgo/app/model"
|
||||
"github.com/gogf/gf/v2/frame/g"
|
||||
)
|
||||
|
||||
// 注销登录
|
||||
type LoginLogoutReq struct {
|
||||
g.Meta `path:"/login/logout" method:"post" tags:"登录" summary:"注销登录"`
|
||||
}
|
||||
type LoginLogoutRes struct{}
|
||||
|
||||
// 获取登录验证码
|
||||
type LoginCaptchaReq struct {
|
||||
g.Meta `path:"/login/captcha" method:"get" tags:"登录" summary:"获取登录验证码"`
|
||||
}
|
||||
type LoginCaptchaRes struct {
|
||||
Cid string `json:"cid" v:"" description:"验证码ID"`
|
||||
Base64 string `json:"base64" v:"" description:"验证码"`
|
||||
}
|
||||
|
||||
// 提交登录
|
||||
type LoginReq struct {
|
||||
g.Meta `path:"/login/sign" method:"post" tags:"登录" summary:"提交登录"`
|
||||
Username string `json:"username" v:"required#用户名不能为空" description:"用户名"`
|
||||
Password string `json:"password" v:"required#密码不能为空" description:"密码"`
|
||||
Cid string `json:"cid" v:"required#验证码ID不能为空" description:"验证码ID"`
|
||||
Code string `json:"code" v:"required#验证码不能为空" description:"验证码"`
|
||||
Device string `json:"device" description:"登录设备"`
|
||||
}
|
||||
type LoginRes struct {
|
||||
model.Identity
|
||||
Token string `json:"token" v:"" description:"登录token"`
|
||||
}
|
||||
212
hotgo-server/app/form/adminForm/member_form.go
Normal file
212
hotgo-server/app/form/adminForm/member_form.go
Normal file
@@ -0,0 +1,212 @@
|
||||
//
|
||||
// @Link https://github.com/bufanyun/hotgo
|
||||
// @Copyright Copyright (c) 2022 HotGo CLI
|
||||
// @Author Ms <133814250@qq.com>
|
||||
// @License https://github.com/bufanyun/hotgo/blob/master/LICENSE
|
||||
//
|
||||
package adminForm
|
||||
|
||||
import (
|
||||
"github.com/bufanyun/hotgo/app/form"
|
||||
"github.com/bufanyun/hotgo/app/form/input"
|
||||
"github.com/bufanyun/hotgo/app/model"
|
||||
"github.com/bufanyun/hotgo/app/model/entity"
|
||||
"github.com/gogf/gf/v2/frame/g"
|
||||
"github.com/gogf/gf/v2/os/gtime"
|
||||
)
|
||||
|
||||
// 更新会员资料
|
||||
type MemberUpdateProfileReq struct {
|
||||
Mobile int `json:"mobile" description:"手机号"`
|
||||
Email string `json:"email" description:"邮箱"`
|
||||
Realname string `json:"realname" description:"真实姓名"`
|
||||
g.Meta `path:"/member/update_profile" method:"post" tags:"会员" summary:"更新会员资料"`
|
||||
}
|
||||
type MemberUpdateProfileRes struct{}
|
||||
|
||||
// 修改登录密码
|
||||
type MemberUpdatePwdReq struct {
|
||||
OldPassword string `json:"oldPassword" v:"required#原密码不能为空" description:"原密码"`
|
||||
NewPassword string `json:"newPassword" v:"required|length:6,16#新密码不能为空#新密码需在6~16之间" description:"新密码"`
|
||||
g.Meta `path:"/member/update_pwd" method:"post" tags:"会员" summary:"重置密码"`
|
||||
}
|
||||
type MemberUpdatePwdRes struct{}
|
||||
|
||||
// 获取登录用户的基本信息
|
||||
type MemberProfileReq struct {
|
||||
g.Meta `path:"/member/profile" method:"get" tags:"会员" summary:"获取登录用户的基本信息"`
|
||||
}
|
||||
type MemberProfileRes struct {
|
||||
PostGroup string `json:"postGroup" description:"岗位名称"`
|
||||
RoleGroup string `json:"roleGroup" description:"角色名称"`
|
||||
User *input.AdminMemberViewModel `json:"user" description:"用户基本信息"`
|
||||
SysDept *input.AdminDeptViewModel `json:"sysDept" description:"部门信息"`
|
||||
SysRoles []*input.AdminRoleListModel `json:"sysRoles" description:"角色列表"`
|
||||
PostIds int64 `json:"postIds" description:"当前岗位"`
|
||||
RoleIds int64 `json:"roleIds" description:"当前角色"`
|
||||
}
|
||||
|
||||
// 重置密码
|
||||
type MemberResetPwdReq struct {
|
||||
Password string `json:"password" v:"required#密码不能为空" description:"密码"`
|
||||
Id int64 `json:"id" description:"会员ID"`
|
||||
g.Meta `path:"/member/reset_pwd" method:"post" tags:"会员" summary:"重置密码"`
|
||||
}
|
||||
type MemberResetPwdRes struct{}
|
||||
|
||||
// 邮箱是否唯一
|
||||
type MemberEmailUniqueReq struct {
|
||||
Email string `json:"email" v:"required#邮箱不能为空" description:"邮箱"`
|
||||
Id int64 `json:"id" description:"会员ID"`
|
||||
g.Meta `path:"/member/email_unique" method:"get" tags:"会员" summary:"邮箱是否唯一"`
|
||||
}
|
||||
type MemberEmailUniqueRes struct {
|
||||
IsUnique bool `json:"is_unique" description:"是否唯一"`
|
||||
}
|
||||
|
||||
// 手机号是否唯一
|
||||
type MemberMobileUniqueReq struct {
|
||||
Mobile string `json:"mobile" v:"required#手机号不能为空" description:"手机号"`
|
||||
Id int64 `json:"id" description:"会员ID"`
|
||||
g.Meta `path:"/member/mobile_unique" method:"get" tags:"会员" summary:"手机号是否唯一"`
|
||||
}
|
||||
type MemberMobileUniqueRes struct {
|
||||
IsUnique bool `json:"is_unique" description:"是否唯一"`
|
||||
}
|
||||
|
||||
// 名称是否唯一
|
||||
type MemberNameUniqueReq struct {
|
||||
Username string `json:"username" v:"required#会员名称不能为空" description:"会员名称"`
|
||||
Id int64 `json:"id" description:"会员ID"`
|
||||
g.Meta `path:"/member/name_unique" method:"get" tags:"会员" summary:"会员名称是否唯一"`
|
||||
}
|
||||
type MemberNameUniqueRes struct {
|
||||
IsUnique bool `json:"is_unique" description:"是否唯一"`
|
||||
}
|
||||
|
||||
// 查询列表
|
||||
type MemberListReq struct {
|
||||
form.PageReq
|
||||
form.RangeDateReq
|
||||
form.StatusReq
|
||||
DeptId int `json:"dept_id" description:"部门ID"`
|
||||
Mobile int `json:"mobile" description:"手机号"`
|
||||
Username string `json:"username" description:"用户名"`
|
||||
Realname string `json:"realname" description:"真实姓名"`
|
||||
StartTime string `json:"start_time" description:"开始时间"`
|
||||
EndTime string `json:"end_time" description:"结束时间"`
|
||||
Name string `json:"name" description:"岗位名称"`
|
||||
Code string `json:"code" description:"岗位编码"`
|
||||
g.Meta `path:"/member/list" method:"get" tags:"会员" summary:"获取会员列表"`
|
||||
}
|
||||
|
||||
type MemberListRes struct {
|
||||
List []*input.AdminMemberListModel `json:"list" description:"数据列表"`
|
||||
form.PageRes
|
||||
}
|
||||
|
||||
// 获取指定信息
|
||||
type MemberViewReq struct {
|
||||
Id int64 `json:"id" description:"会员ID"` // v:"required#会员ID不能为空"
|
||||
g.Meta `path:"/member/view" method:"get" tags:"会员" summary:"获取指定信息"`
|
||||
}
|
||||
type MemberViewRes struct {
|
||||
*input.AdminMemberViewModel
|
||||
Posts []*input.AdminPostListModel `json:"posts" description:"可选岗位"`
|
||||
PostIds []int64 `json:"postIds" description:"当前岗位"`
|
||||
Roles []*input.AdminRoleListModel `json:"roles" description:"可选角色"`
|
||||
RoleIds []int64 `json:"roleIds" description:"当前角色"`
|
||||
DeptName string `json:"dept_name" description:"部门名称"`
|
||||
}
|
||||
|
||||
// 修改/新增
|
||||
type MemberEditReq struct {
|
||||
input.AdminMemberEditInp
|
||||
g.Meta `path:"/member/edit" method:"post" tags:"会员" summary:"修改/新增会员"`
|
||||
}
|
||||
type MemberEditRes struct{}
|
||||
|
||||
// 删除
|
||||
type MemberDeleteReq struct {
|
||||
Id interface{} `json:"id" v:"required#会员ID不能为空" description:"会员ID"`
|
||||
g.Meta `path:"/member/delete" method:"post" tags:"会员" summary:"删除会员"`
|
||||
}
|
||||
type MemberDeleteRes struct{}
|
||||
|
||||
// 最大排序
|
||||
type MemberMaxSortReq struct {
|
||||
Id int64 `json:"id" description:"会员ID"`
|
||||
g.Meta `path:"/member/max_sort" method:"get" tags:"会员" summary:"会员最大排序"`
|
||||
}
|
||||
type MemberMaxSortRes struct {
|
||||
Sort int `json:"sort" description:"排序"`
|
||||
}
|
||||
|
||||
// 获取登录用户信息
|
||||
type MemberInfoReq struct {
|
||||
g.Meta `path:"/member/info" method:"get" tags:"会员" summary:"获取登录用户信息" description:"获取管理后台的登录用户信息"`
|
||||
}
|
||||
|
||||
type PortalConfigContentOptions struct {
|
||||
TitleRequired bool `json:"titleRequired" titleRequired:""`
|
||||
MoreUrl string `json:"moreUrl" description:"模块地址"`
|
||||
Refresh int `json:"refresh" description:"刷新"`
|
||||
}
|
||||
|
||||
type PortalConfigContent struct {
|
||||
Id int `json:"id" description:"内容ID"`
|
||||
X int `json:"x" description:""`
|
||||
Y int `json:"y" description:""`
|
||||
W int `json:"w" description:"宽"`
|
||||
H int `json:"h" description:"高"`
|
||||
I int `json:"i" description:""`
|
||||
Key string `json:"key" description:""`
|
||||
IsShowTitle string `json:"isShowTitle" description:""`
|
||||
IsAllowDrag bool `json:"isAllowDrag" description:""`
|
||||
Name string `json:"name" description:""`
|
||||
Type string `json:"type" description:""`
|
||||
Url string `json:"url" description:""`
|
||||
Options []*PortalConfigContentOptions `json:"options" description:""`
|
||||
Moved bool `json:"moved" description:""`
|
||||
}
|
||||
|
||||
type PortalConfig struct {
|
||||
CreateByName string `json:"createByName" description:"创建者名称"`
|
||||
CreateDeptName string `json:"createDeptName" description:"创建部门名称"`
|
||||
ImportErrInfo string `json:"importErrInfo" description:"导出错误信息"`
|
||||
Id string `json:"id" description:"用户ID"`
|
||||
SearchValue string `json:"searchValue" description:"搜索内容"`
|
||||
CreateBy string `json:"createBy" description:"创建者名称"`
|
||||
CreateDept string `json:"createDept" description:"创建部门名称"`
|
||||
CreateTime *gtime.Time `json:"createTime" description:"创建时间"`
|
||||
UpdateBy string `json:"updateBy" description:"更新者名称"`
|
||||
UpdateTime *gtime.Time `json:"updateTime" description:"更新时间"`
|
||||
UpdateIp string `json:"updateIp" description:"更新iP"`
|
||||
Remark string `json:"remark" description:"备注"`
|
||||
Version string `json:"version" description:"版本号"`
|
||||
DelFlag string `json:"delFlag" description:"删除标签"`
|
||||
HandleType string `json:"handleType" description:""`
|
||||
Params string `json:"params" description:""`
|
||||
Name string `json:"name" description:"配置名称"`
|
||||
Code string `json:"code" description:"配置代码"`
|
||||
ApplicationRange string `json:"applicationRange" description:""`
|
||||
IsDefault string `json:"isDefault" description:"是否默认"`
|
||||
ResourceId string `json:"resourceId" description:""`
|
||||
ResourceName string `json:"resourceName" description:""`
|
||||
SystemDefinedId string `json:"systemDefinedId" description:""`
|
||||
Sort string `json:"sort" description:"排序"`
|
||||
SaveType string `json:"saveType" description:""`
|
||||
Status string `json:"status" description:"状态"`
|
||||
RecordLog string `json:"recordLog" description:""`
|
||||
PortalConfigContent string `json:"content" description:"配置内容"`
|
||||
}
|
||||
|
||||
type MemberInfoRes struct {
|
||||
DefaultPortalConfig []*PortalConfig `json:"defaultPortalConfig" description:"默认用户配置"`
|
||||
LincenseInfo string `json:"lincenseInfo" description:"应用版本号"`
|
||||
Permissions []string `json:"permissions"description:"权限"`
|
||||
Roles []string `json:"roles" description:"角色"`
|
||||
SysNoticeList []*entity.AdminNotice `json:"sysNoticeList" description:"系统公告"`
|
||||
UserPortalConfig []*PortalConfig `json:"userPortalConfig" description:"用户配置"`
|
||||
User model.Identity `json:"user" description:"用户信息"`
|
||||
}
|
||||
92
hotgo-server/app/form/adminForm/menu_form.go
Normal file
92
hotgo-server/app/form/adminForm/menu_form.go
Normal file
@@ -0,0 +1,92 @@
|
||||
package adminForm
|
||||
|
||||
import (
|
||||
"github.com/bufanyun/hotgo/app/form"
|
||||
"github.com/bufanyun/hotgo/app/model"
|
||||
"github.com/bufanyun/hotgo/app/model/entity"
|
||||
"github.com/gogf/gf/v2/frame/g"
|
||||
)
|
||||
|
||||
// 菜单最大排序
|
||||
type MenuMaxSortReq struct {
|
||||
Id int64 `json:"id" description:"菜单ID"`
|
||||
g.Meta `path:"/menu/max_sort" method:"get" tags:"菜单" summary:"菜单最大排序"`
|
||||
}
|
||||
type MenuMaxSortRes struct {
|
||||
Sort int `json:"sort" description:"排序"`
|
||||
}
|
||||
|
||||
// 菜单编码是否唯一
|
||||
type MenuCodeUniqueReq struct {
|
||||
Code string `json:"code" v:"required#菜单编码不能为空" description:"菜单编码"`
|
||||
Id int64 `json:"id" description:"菜单ID"`
|
||||
g.Meta `path:"/menu/code_unique" method:"get" tags:"菜单" summary:"菜单编码是否唯一"`
|
||||
}
|
||||
type MenuCodeUniqueRes struct {
|
||||
IsUnique bool `json:"is_unique" description:"是否唯一"`
|
||||
}
|
||||
|
||||
// 菜单名称是否唯一
|
||||
type MenuNameUniqueReq struct {
|
||||
Name string `json:"name" v:"required#菜单名称不能为空" description:"菜单名称"`
|
||||
Id int64 `json:"id" description:"菜单ID"`
|
||||
g.Meta `path:"/menu/name_unique" method:"get" tags:"菜单" summary:"菜单名称是否唯一"`
|
||||
}
|
||||
type MenuNameUniqueRes struct {
|
||||
IsUnique bool `json:"is_unique" description:"是否唯一"`
|
||||
}
|
||||
|
||||
// 修改/新增字典数据
|
||||
type MenuEditReq struct {
|
||||
entity.AdminMenu
|
||||
g.Meta `path:"/menu/edit" method:"post" tags:"菜单" summary:"修改/新增菜单"`
|
||||
}
|
||||
type MenuEditRes struct{}
|
||||
|
||||
// 删除字典类型
|
||||
type MenuDeleteReq struct {
|
||||
Id interface{} `json:"id" v:"required#菜单ID不能为空" description:"菜单ID"`
|
||||
g.Meta `path:"/menu/delete" method:"post" tags:"菜单" summary:"删除菜单"`
|
||||
}
|
||||
type MenuDeleteRes struct{}
|
||||
|
||||
// 获取指定字典数据信息
|
||||
type MenuViewReq struct {
|
||||
Id string `json:"id" v:"required#菜单ID不能为空" description:"菜单ID"`
|
||||
g.Meta `path:"/menu/view" method:"get" tags:"菜单" summary:"获取指定菜单信息"`
|
||||
}
|
||||
type MenuViewRes struct {
|
||||
*entity.AdminMenu
|
||||
}
|
||||
|
||||
// 获取菜单列表
|
||||
type MenuListReq struct {
|
||||
form.PageReq
|
||||
Pid int64 `json:"pid" description:"父ID"`
|
||||
g.Meta `path:"/menu/list" method:"get" tags:"菜单" summary:"获取菜单列表"`
|
||||
}
|
||||
|
||||
type MenuListRes struct {
|
||||
List []*entity.AdminMenu `json:"list" description:"数据列表"`
|
||||
form.PageRes
|
||||
}
|
||||
|
||||
// 查询菜单列表
|
||||
type MenuSearchListReq struct {
|
||||
Name string `json:"name" description:"菜单名称"`
|
||||
form.StatusReq
|
||||
g.Meta `path:"/menu/search_list" method:"get" tags:"菜单" summary:"获取菜单列表"`
|
||||
}
|
||||
|
||||
type MenuSearchListRes []*model.TreeMenu
|
||||
|
||||
// 查询角色菜单列表
|
||||
type MenuRoleListReq struct {
|
||||
RoleId string `json:"role_id" description:"角色ID"`
|
||||
g.Meta `path:"/menu/role_list" method:"get" tags:"菜单" summary:"查询角色菜单列表"`
|
||||
}
|
||||
|
||||
type MenuRoleListRes struct {
|
||||
Menus []*model.LabelTreeMenu `json:"menus" description:"菜单列表"`
|
||||
CheckedKeys []int64 `json:"checkedKeys" description:"选择的菜单ID"`
|
||||
}
|
||||
64
hotgo-server/app/form/adminForm/notice_form.go
Normal file
64
hotgo-server/app/form/adminForm/notice_form.go
Normal file
@@ -0,0 +1,64 @@
|
||||
package adminForm
|
||||
|
||||
import (
|
||||
"github.com/bufanyun/hotgo/app/form"
|
||||
"github.com/bufanyun/hotgo/app/form/input"
|
||||
"github.com/bufanyun/hotgo/app/model/entity"
|
||||
"github.com/gogf/gf/v2/frame/g"
|
||||
)
|
||||
|
||||
// 名称是否唯一
|
||||
type NoticeNameUniqueReq struct {
|
||||
Title string `json:"name" v:"required#公告名称不能为空" description:"公告名称"`
|
||||
Id int64 `json:"id" description:"公告ID"`
|
||||
g.Meta `path:"/notice/name_unique" method:"get" tags:"公告" summary:"公告名称是否唯一"`
|
||||
}
|
||||
type NoticeNameUniqueRes struct {
|
||||
IsUnique bool `json:"is_unique" description:"是否唯一"`
|
||||
}
|
||||
|
||||
// 查询列表
|
||||
type NoticeListReq struct {
|
||||
form.PageReq
|
||||
form.RangeDateReq
|
||||
form.StatusReq
|
||||
Name string `json:"name" description:"公告名称"`
|
||||
g.Meta `path:"/notice/list" method:"get" tags:"公告" summary:"获取公告列表"`
|
||||
}
|
||||
|
||||
type NoticeListRes struct {
|
||||
List []*input.AdminNoticeListModel `json:"list" description:"数据列表"`
|
||||
form.PageRes
|
||||
}
|
||||
|
||||
// 获取指定信息
|
||||
type NoticeViewReq struct {
|
||||
Id string `json:"id" v:"required#公告ID不能为空" description:"公告ID"`
|
||||
g.Meta `path:"/notice/view" method:"get" tags:"公告" summary:"获取指定信息"`
|
||||
}
|
||||
type NoticeViewRes struct {
|
||||
*input.AdminNoticeViewModel
|
||||
}
|
||||
|
||||
// 修改/新增
|
||||
type NoticeEditReq struct {
|
||||
entity.AdminNotice
|
||||
g.Meta `path:"/notice/edit" method:"post" tags:"公告" summary:"修改/新增公告"`
|
||||
}
|
||||
type NoticeEditRes struct{}
|
||||
|
||||
// 删除
|
||||
type NoticeDeleteReq struct {
|
||||
Id interface{} `json:"id" v:"required#公告ID不能为空" description:"公告ID"`
|
||||
g.Meta `path:"/notice/delete" method:"post" tags:"公告" summary:"删除公告"`
|
||||
}
|
||||
type NoticeDeleteRes struct{}
|
||||
|
||||
// 最大排序
|
||||
type NoticeMaxSortReq struct {
|
||||
Id int64 `json:"id" description:"公告ID"`
|
||||
g.Meta `path:"/notice/max_sort" method:"get" tags:"公告" summary:"公告最大排序"`
|
||||
}
|
||||
type NoticeMaxSortRes struct {
|
||||
Sort int `json:"sort" description:"排序"`
|
||||
}
|
||||
75
hotgo-server/app/form/adminForm/post_form.go
Normal file
75
hotgo-server/app/form/adminForm/post_form.go
Normal file
@@ -0,0 +1,75 @@
|
||||
package adminForm
|
||||
|
||||
import (
|
||||
"github.com/bufanyun/hotgo/app/form"
|
||||
"github.com/bufanyun/hotgo/app/form/input"
|
||||
"github.com/bufanyun/hotgo/app/model/entity"
|
||||
"github.com/gogf/gf/v2/frame/g"
|
||||
)
|
||||
|
||||
// 修改/新增字典数据
|
||||
type PostEditReq struct {
|
||||
entity.AdminPost
|
||||
g.Meta `path:"/post/edit" method:"post" tags:"岗位" summary:"修改/新增岗位"`
|
||||
}
|
||||
type PostEditRes struct{}
|
||||
|
||||
// 删除字典类型
|
||||
type PostDeleteReq struct {
|
||||
Id interface{} `json:"id" v:"required#岗位ID不能为空" description:"岗位ID"`
|
||||
g.Meta `path:"/post/delete" method:"post" tags:"岗位" summary:"删除岗位"`
|
||||
}
|
||||
type PostDeleteRes struct{}
|
||||
|
||||
// 最大排序
|
||||
type PostMaxSortReq struct {
|
||||
Id int64 `json:"id" description:"岗位ID"`
|
||||
g.Meta `path:"/post/max_sort" method:"get" tags:"岗位" summary:"岗位最大排序"`
|
||||
}
|
||||
type PostMaxSortRes struct {
|
||||
Sort int `json:"sort" description:"排序"`
|
||||
}
|
||||
|
||||
// 获取列表
|
||||
type PostListReq struct {
|
||||
form.PageReq
|
||||
form.RangeDateReq
|
||||
form.StatusReq
|
||||
Name string `json:"name" description:"岗位名称"`
|
||||
Code string `json:"code" description:"岗位编码"`
|
||||
g.Meta `path:"/post/list" method:"get" tags:"岗位" summary:"获取岗位列表"`
|
||||
}
|
||||
|
||||
type PostListRes struct {
|
||||
List []*input.AdminPostListModel `json:"list" description:"数据列表"`
|
||||
form.PageRes
|
||||
}
|
||||
|
||||
// 获取指定信息
|
||||
type PostViewReq struct {
|
||||
Id string `json:"id" v:"required#岗位ID不能为空" description:"岗位ID"`
|
||||
g.Meta `path:"/post/view" method:"get" tags:"岗位" summary:"获取指定信息"`
|
||||
}
|
||||
type PostViewRes struct {
|
||||
*input.AdminPostViewModel
|
||||
}
|
||||
|
||||
// 编码是否唯一
|
||||
type PostCodeUniqueReq struct {
|
||||
Code string `json:"code" v:"required#岗位编码不能为空" description:"岗位编码"`
|
||||
Id int64 `json:"id" description:"岗位ID"`
|
||||
g.Meta `path:"/post/code_unique" method:"get" tags:"岗位" summary:"岗位编码是否唯一"`
|
||||
}
|
||||
type PostCodeUniqueRes struct {
|
||||
IsUnique bool `json:"is_unique" description:"是否唯一"`
|
||||
}
|
||||
|
||||
// 名称是否唯一
|
||||
type PostNameUniqueReq struct {
|
||||
Name string `json:"name" v:"required#岗位名称不能为空" description:"岗位名称"`
|
||||
Id int64 `json:"id" description:"岗位ID"`
|
||||
g.Meta `path:"/post/name_unique" method:"get" tags:"岗位" summary:"岗位名称是否唯一"`
|
||||
}
|
||||
type PostNameUniqueRes struct {
|
||||
IsUnique bool `json:"is_unique" description:"是否唯一"`
|
||||
}
|
||||
89
hotgo-server/app/form/adminForm/role_form.go
Normal file
89
hotgo-server/app/form/adminForm/role_form.go
Normal file
@@ -0,0 +1,89 @@
|
||||
//
|
||||
// @Link https://github.com/bufanyun/hotgo
|
||||
// @Copyright Copyright (c) 2022 HotGo CLI
|
||||
// @Author Ms <133814250@qq.com>
|
||||
// @License https://github.com/bufanyun/hotgo/blob/master/LICENSE
|
||||
//
|
||||
package adminForm
|
||||
|
||||
import (
|
||||
"github.com/bufanyun/hotgo/app/form"
|
||||
"github.com/bufanyun/hotgo/app/form/input"
|
||||
"github.com/gogf/gf/v2/frame/g"
|
||||
)
|
||||
|
||||
// 查询列表
|
||||
type RoleMemberListReq struct {
|
||||
form.PageReq
|
||||
form.RangeDateReq
|
||||
form.StatusReq
|
||||
Role int `json:"role" description:"角色ID"`
|
||||
DeptId int `json:"dept_id" description:"部门ID"`
|
||||
Mobile int `json:"mobile" description:"手机号"`
|
||||
Username string `json:"username" description:"用户名"`
|
||||
Realname string `json:"realname" description:"真实姓名"`
|
||||
StartTime string `json:"start_time" description:"开始时间"`
|
||||
EndTime string `json:"end_time" description:"结束时间"`
|
||||
Name string `json:"name" description:"岗位名称"`
|
||||
Code string `json:"code" description:"岗位编码"`
|
||||
g.Meta `path:"/role/member_list" method:"get" tags:"角色" summary:"获取角色下的会员列表"`
|
||||
}
|
||||
|
||||
type RoleMemberListRes struct {
|
||||
List []*input.AdminMemberListModel `json:"list" description:"数据列表"`
|
||||
form.PageRes
|
||||
}
|
||||
|
||||
// 查询列表
|
||||
type RoleListReq struct {
|
||||
form.PageReq
|
||||
form.RangeDateReq
|
||||
form.StatusReq
|
||||
DeptId int `json:"dept_id" description:"部门ID"`
|
||||
Mobile int `json:"mobile" description:"手机号"`
|
||||
Username string `json:"username" description:"用户名"`
|
||||
Realname string `json:"realname" description:"真实姓名"`
|
||||
StartTime string `json:"start_time" description:"开始时间"`
|
||||
EndTime string `json:"end_time" description:"结束时间"`
|
||||
Name string `json:"name" description:"岗位名称"`
|
||||
Code string `json:"code" description:"岗位编码"`
|
||||
g.Meta `path:"/role/list" method:"get" tags:"角色" summary:"获取角色列表"`
|
||||
}
|
||||
|
||||
type RoleListRes struct {
|
||||
List []*input.AdminRoleListModel `json:"list" description:"数据列表"`
|
||||
form.PageRes
|
||||
}
|
||||
|
||||
// 动态路由
|
||||
type RoleDynamicReq struct {
|
||||
g.Meta `path:"/role/dynamic" method:"get" tags:"路由" summary:"获取动态路由" description:"获取登录用户动态路由"`
|
||||
}
|
||||
|
||||
type RoleDynamicMeta struct {
|
||||
Title string `json:"title" description:"菜单标题"`
|
||||
Icon string `json:"icon" description:"菜单图标"`
|
||||
NoCache bool `json:"noCache" description:"是否缓存"`
|
||||
Remark string `json:"remark" description:"备注"`
|
||||
}
|
||||
|
||||
type RoleDynamicBase struct {
|
||||
Id int64 `json:"id" description:"菜单ID"`
|
||||
Pid int64 `json:"pid" description:"父ID"`
|
||||
Name string `json:"name" description:"菜单名称"`
|
||||
Code string `json:"code" description:"菜单编码"`
|
||||
Path string `json:"path" description:"路由地址"`
|
||||
Hidden bool `json:"hidden" description:"是否隐藏"`
|
||||
Redirect string `json:"redirect" description:"重定向"`
|
||||
Component string `json:"component" description:"组件路径"`
|
||||
AlwaysShow bool `json:"alwaysShow" description:"暂时不知道干啥"`
|
||||
IsFrame string `json:"isFrame" description:"是否为外链(0是 1否)"`
|
||||
Meta *RoleDynamicMeta `json:"meta" description:"配置数据集"`
|
||||
}
|
||||
|
||||
type RoleDynamicMenu struct {
|
||||
RoleDynamicBase
|
||||
Children []*RoleDynamicBase `json:"children" description:"子菜单"`
|
||||
}
|
||||
|
||||
type RoleDynamicRes []*RoleDynamicMenu
|
||||
34
hotgo-server/app/form/apiForm/base_form.go
Normal file
34
hotgo-server/app/form/apiForm/base_form.go
Normal file
@@ -0,0 +1,34 @@
|
||||
//
|
||||
// @Link https://github.com/bufanyun/hotgo
|
||||
// @Copyright Copyright (c) 2022 HotGo CLI
|
||||
// @Author Ms <133814250@qq.com>
|
||||
// @License https://github.com/bufanyun/hotgo/blob/master/LICENSE
|
||||
//
|
||||
package apiForm
|
||||
|
||||
import (
|
||||
"github.com/bufanyun/hotgo/app/com"
|
||||
"github.com/gogf/gf/v2/frame/g"
|
||||
)
|
||||
|
||||
// 获取lang信息
|
||||
type BaseLangReq struct {
|
||||
g.Meta `path:"/base/lang" method:"get" tags:"基础" summary:"获取lang信息"`
|
||||
L string `json:"l" v:"required#语言不能为空" description:"语言"`
|
||||
}
|
||||
type BaseLangRes struct {
|
||||
}
|
||||
|
||||
// 获取登录验证码
|
||||
type IpLocationReq struct {
|
||||
g.Meta `path:"/base/ip_location" method:"get" tags:"基础" summary:"获取IP归属地信息"`
|
||||
Ip string `json:"ip" v:"required#ip不能为空" description:"ipv4地址"`
|
||||
}
|
||||
type IpLocationRes struct {
|
||||
com.IpLocationData
|
||||
}
|
||||
|
||||
type ExportReq struct {
|
||||
g.Meta `path:"/base/export" method:"get" tags:"字典" summary:"导出字典类型"`
|
||||
}
|
||||
type ExportRes struct{}
|
||||
13
hotgo-server/app/form/apiForm/dict_form.go
Normal file
13
hotgo-server/app/form/apiForm/dict_form.go
Normal file
@@ -0,0 +1,13 @@
|
||||
package apiForm
|
||||
|
||||
import (
|
||||
"github.com/bufanyun/hotgo/app/model/entity"
|
||||
"github.com/gogf/gf/v2/frame/g"
|
||||
)
|
||||
|
||||
// 获取指定字典类型的属性数据
|
||||
type DictAttributeReq struct {
|
||||
Type string `json:"type" example:"sys_common_status" v:"required#字典类型不能为空" description:"字典类型"`
|
||||
g.Meta `path:"/dict/attribute" method:"get" tags:"字典" summary:"获取指定字典类型的属性数据"`
|
||||
}
|
||||
type DictAttributeRes []*entity.SysDictData
|
||||
47
hotgo-server/app/form/apiForm/log_form.go
Normal file
47
hotgo-server/app/form/apiForm/log_form.go
Normal file
@@ -0,0 +1,47 @@
|
||||
package apiForm
|
||||
|
||||
import (
|
||||
"github.com/bufanyun/hotgo/app/form"
|
||||
"github.com/bufanyun/hotgo/app/form/input"
|
||||
"github.com/gogf/gf/v2/frame/g"
|
||||
)
|
||||
|
||||
// 清空日志
|
||||
type LogClearReq struct {
|
||||
g.Meta `path:"/log/clear" method:"post" tags:"日志" summary:"清空日志"`
|
||||
}
|
||||
type LogClearRes struct{}
|
||||
|
||||
// 导出
|
||||
type LogExportReq struct {
|
||||
form.PageReq
|
||||
form.RangeDateReq
|
||||
Module string `json:"module" description:"应用端口"`
|
||||
MemberId int `json:"member_id" description:"用户ID"`
|
||||
TakeUpTime int `json:"take_up_time" description:"请求耗时"`
|
||||
Method string `json:"method" description:"请求方式"`
|
||||
Url string `json:"url" description:"请求路径"`
|
||||
Ip string `json:"ip" description:"访问IP"`
|
||||
ErrorCode string `json:"error_code" description:"状态码"`
|
||||
g.Meta `path:"/log/export" method:"get" tags:"日志" summary:"导出日志"`
|
||||
}
|
||||
type LogExportRes struct{}
|
||||
|
||||
// 获取菜单列表
|
||||
type LogListReq struct {
|
||||
form.PageReq
|
||||
form.RangeDateReq
|
||||
Module string `json:"module" description:"应用端口"`
|
||||
MemberId int `json:"member_id" description:"用户ID"`
|
||||
TakeUpTime int `json:"take_up_time" description:"请求耗时"`
|
||||
Method string `json:"method" description:"请求方式"`
|
||||
Url string `json:"url" description:"请求路径"`
|
||||
Ip string `json:"ip" description:"访问IP"`
|
||||
ErrorCode string `json:"error_code" description:"状态码"`
|
||||
g.Meta `path:"/log/list" method:"get" tags:"日志" summary:"获取日志列表"`
|
||||
}
|
||||
|
||||
type LogListRes struct {
|
||||
List []*input.LogListModel `json:"list" description:"数据列表"`
|
||||
form.PageRes
|
||||
}
|
||||
37
hotgo-server/app/form/apiForm/login_form.go
Normal file
37
hotgo-server/app/form/apiForm/login_form.go
Normal file
@@ -0,0 +1,37 @@
|
||||
package apiForm
|
||||
|
||||
import (
|
||||
"github.com/bufanyun/hotgo/app/model"
|
||||
"github.com/gogf/gf/v2/frame/g"
|
||||
)
|
||||
|
||||
// 注销登录
|
||||
type LoginLogoutReq struct {
|
||||
g.Meta `path:"/login/logout" method:"get" tags:"登录" summary:"注销登录"`
|
||||
}
|
||||
type LoginLogoutRes struct{}
|
||||
|
||||
// 登录效验
|
||||
type LoginCheckReq struct {
|
||||
g.Meta `path:"/login/check" method:"get" tags:"登录" summary:"登录效验"`
|
||||
}
|
||||
type LoginCheckRes struct {
|
||||
IsValidCodeLogin bool `json:"isValidCodeLogin" description:"是否验证码"`
|
||||
Message string `json:"message" description:"消息"`
|
||||
Result string `json:"result" description:"响应"`
|
||||
// Sessionid string `json:"sessionid" description:"sessionid"`
|
||||
}
|
||||
|
||||
// 提交登录
|
||||
type LoginReq struct {
|
||||
g.Meta `path:"/login/sign" method:"post" tags:"登录" summary:"提交登录"`
|
||||
Username string `json:"username" v:"required#用户名不能为空" description:"用户名"`
|
||||
Password string `json:"password" v:"required#密码不能为空" description:"密码"`
|
||||
Cid string `json:"cid" v:"required#验证码ID不能为空" description:"验证码ID"`
|
||||
Code string `json:"code" v:"required#验证码不能为空" description:"验证码"`
|
||||
Device string `json:"device" description:"登录设备"`
|
||||
}
|
||||
type LoginRes struct {
|
||||
model.Identity
|
||||
Token string `json:"token" v:"" description:"登录token"`
|
||||
}
|
||||
20
hotgo-server/app/form/apiForm/member_form.go
Normal file
20
hotgo-server/app/form/apiForm/member_form.go
Normal file
@@ -0,0 +1,20 @@
|
||||
package apiForm
|
||||
|
||||
import (
|
||||
"github.com/bufanyun/hotgo/app/form/input"
|
||||
"github.com/gogf/gf/v2/frame/g"
|
||||
)
|
||||
|
||||
// 获取登录用户的基本信息
|
||||
type MemberProfileReq struct {
|
||||
g.Meta `path:"/member/profile" method:"get" tags:"会员" summary:"获取登录用户的基本信息"`
|
||||
}
|
||||
type MemberProfileRes struct {
|
||||
PostGroup string `json:"postGroup" description:"岗位名称"`
|
||||
RoleGroup string `json:"roleGroup" description:"角色名称"`
|
||||
User *input.AdminMemberViewModel `json:"user" description:"用户基本信息"`
|
||||
SysDept *input.AdminDeptViewModel `json:"sysDept" description:"部门信息"`
|
||||
SysRoles []*input.AdminRoleListModel `json:"sysRoles" description:"角色列表"`
|
||||
PostIds int64 `json:"postIds" description:"当前岗位"`
|
||||
RoleIds int64 `json:"roleIds" description:"当前角色"`
|
||||
}
|
||||
28
hotgo-server/app/form/common.go
Normal file
28
hotgo-server/app/form/common.go
Normal file
@@ -0,0 +1,28 @@
|
||||
//
|
||||
// @Link https://github.com/bufanyun/hotgo
|
||||
// @Copyright Copyright (c) 2022 HotGo CLI
|
||||
// @Author Ms <133814250@qq.com>
|
||||
// @License https://github.com/bufanyun/hotgo/blob/master/LICENSE
|
||||
//
|
||||
package form
|
||||
|
||||
// 分页
|
||||
type PageReq struct {
|
||||
Page int `json:"page" example:"10" d:"1" v:"min:1#页码最小值不能低于1" description:"当前页码"`
|
||||
Limit int `json:"limit" example:"1" d:"10" v:"min:1|max:100#|每页数量最小值不能低于1|最大值不能大于100" description:"每页数量"`
|
||||
}
|
||||
type PageRes struct {
|
||||
PageReq
|
||||
TotalCount int `json:"total_count" example:"0" description:"全部数据量"`
|
||||
}
|
||||
|
||||
// 时间查询
|
||||
type RangeDateReq struct {
|
||||
StartTime string `json:"start_time" v:"date#开始日期格式不正确" description:"开始日期"`
|
||||
EndTime string `json:"end_time" v:"date#结束日期格式不正确" description:"结束日期"`
|
||||
}
|
||||
|
||||
// 状态查询
|
||||
type StatusReq struct {
|
||||
Status int `json:"status" v:"in:0,1,2,3#状态可选范围:0~3" description:"状态"`
|
||||
}
|
||||
75
hotgo-server/app/form/input/admin_dept_input.go
Normal file
75
hotgo-server/app/form/input/admin_dept_input.go
Normal file
@@ -0,0 +1,75 @@
|
||||
package input
|
||||
|
||||
import "github.com/bufanyun/hotgo/app/model/entity"
|
||||
|
||||
// 名称是否唯一
|
||||
type AdminDeptNameUniqueInp struct {
|
||||
Name string
|
||||
Id int64
|
||||
}
|
||||
|
||||
type AdminDeptNameUniqueModel struct {
|
||||
IsUnique bool
|
||||
}
|
||||
|
||||
// 最大排序
|
||||
type AdminDeptMaxSortInp struct {
|
||||
Id int64
|
||||
}
|
||||
|
||||
type AdminDeptMaxSortModel struct {
|
||||
Sort int
|
||||
}
|
||||
|
||||
// 修改/新增字典数据
|
||||
type AdminDeptEditInp struct {
|
||||
entity.AdminDept
|
||||
}
|
||||
type AdminDeptEditModel struct{}
|
||||
|
||||
// 删除字典类型
|
||||
type AdminDeptDeleteInp struct {
|
||||
Id interface{}
|
||||
}
|
||||
type AdminDeptDeleteModel struct{}
|
||||
|
||||
// 获取信息
|
||||
type AdminDeptViewInp struct {
|
||||
Id int64
|
||||
}
|
||||
|
||||
type AdminDeptViewModel struct {
|
||||
entity.AdminDept
|
||||
}
|
||||
|
||||
// 获取列表
|
||||
type AdminDeptListInp struct {
|
||||
Name string
|
||||
}
|
||||
|
||||
// 树
|
||||
type AdminDeptTreeDept struct {
|
||||
entity.AdminDept
|
||||
Children []*AdminDeptTreeDept `json:"children"`
|
||||
}
|
||||
|
||||
type AdminDeptListModel AdminDeptTreeDept
|
||||
|
||||
// 获取列表树
|
||||
type AdminDeptListTreeInp struct {
|
||||
Name string
|
||||
}
|
||||
|
||||
// 树
|
||||
type AdminDeptListTreeDept struct {
|
||||
Id int64 `json:"id" `
|
||||
Key int64 `json:"key" `
|
||||
Pid int64 `json:"pid" `
|
||||
Label string `json:"label"`
|
||||
Title string `json:"title"`
|
||||
Name string `json:"name"`
|
||||
Type string `json:"type"`
|
||||
Children []*AdminDeptListTreeDept `json:"children"`
|
||||
}
|
||||
|
||||
type AdminDeptListTreeModel AdminDeptListTreeDept
|
||||
171
hotgo-server/app/form/input/admin_member_input.go
Normal file
171
hotgo-server/app/form/input/admin_member_input.go
Normal file
@@ -0,0 +1,171 @@
|
||||
package input
|
||||
|
||||
import (
|
||||
"github.com/bufanyun/hotgo/app/model"
|
||||
"github.com/bufanyun/hotgo/app/model/entity"
|
||||
"github.com/gogf/gf/v2/os/gtime"
|
||||
)
|
||||
|
||||
// 更新会员资料
|
||||
type AdminMemberUpdateProfileInp struct {
|
||||
Mobile int
|
||||
Email string
|
||||
Realname string
|
||||
}
|
||||
|
||||
// 获取指定会员资料
|
||||
type AdminMemberProfileInp struct {
|
||||
Id int64
|
||||
}
|
||||
type AdminMemberProfileModel struct {
|
||||
PostGroup string `json:"postGroup" description:"岗位名称"`
|
||||
RoleGroup string `json:"roleGroup" description:"角色名称"`
|
||||
User *AdminMemberViewModel `json:"user" description:"用户基本信息"`
|
||||
SysDept *AdminDeptViewModel `json:"sysDept" description:"部门信息"`
|
||||
SysRoles []*AdminRoleListModel `json:"sysRoles" description:"角色列表"`
|
||||
PostIds int64 `json:"postIds" description:"当前岗位"`
|
||||
RoleIds int64 `json:"roleIds" description:"当前角色"`
|
||||
}
|
||||
|
||||
// 更新会员资料
|
||||
type MemberUpdateProfileInp struct {
|
||||
Mobile int
|
||||
Email string
|
||||
Realname string
|
||||
}
|
||||
|
||||
// 修改登录密码
|
||||
type AdminMemberUpdatePwdInp struct {
|
||||
Id int64
|
||||
OldPassword string
|
||||
NewPassword string
|
||||
}
|
||||
|
||||
// 重置密码
|
||||
type AdminMemberResetPwdInp struct {
|
||||
Password string
|
||||
Id int64
|
||||
}
|
||||
|
||||
// 邮箱是否唯一
|
||||
type AdminMemberEmailUniqueInp struct {
|
||||
Email string
|
||||
Id int64
|
||||
}
|
||||
|
||||
type AdminMemberEmailUniqueModel struct {
|
||||
IsUnique bool
|
||||
}
|
||||
|
||||
// 手机号是否唯一
|
||||
type AdminMemberMobileUniqueInp struct {
|
||||
Mobile string
|
||||
Id int64
|
||||
}
|
||||
|
||||
type AdminMemberMobileUniqueModel struct {
|
||||
IsUnique bool
|
||||
}
|
||||
|
||||
// 名称是否唯一
|
||||
type AdminMemberNameUniqueInp struct {
|
||||
Username string
|
||||
Id int64
|
||||
}
|
||||
|
||||
type AdminMemberNameUniqueModel struct {
|
||||
IsUnique bool
|
||||
}
|
||||
|
||||
// 最大排序
|
||||
type AdminMemberMaxSortInp struct {
|
||||
Id int64
|
||||
}
|
||||
|
||||
type AdminMemberMaxSortModel struct {
|
||||
Sort int
|
||||
}
|
||||
|
||||
// 修改/新增字典数据
|
||||
type AdminMemberEditInp struct {
|
||||
Id int64 `json:"id" description:""`
|
||||
PostIds []int64 `json:"postIds" v:"required#岗位不能为空" description:"岗位ID"`
|
||||
DeptId int64 `json:"dept_id" v:"required#部门不能为空" description:"部门ID"`
|
||||
Username string `json:"username" v:"required#账号不能为空" description:"帐号"`
|
||||
Password string `json:"password" description:"密码"`
|
||||
Realname string `json:"realname" description:"真实姓名"`
|
||||
Avatar string `json:"avatar" description:"头像"`
|
||||
Sex string `json:"sex" description:"性别[0:未知;1:男;2:女]"`
|
||||
Qq string `json:"qq" description:"qq"`
|
||||
Email string `json:"email" description:"邮箱"`
|
||||
Birthday *gtime.Time `json:"birthday" description:"生日"`
|
||||
ProvinceId int `json:"province_id" description:"省"`
|
||||
CityId int `json:"city_id" description:"城市"`
|
||||
AreaId int `json:"area_id" description:"地区"`
|
||||
Address string `json:"address" description:"默认地址"`
|
||||
Mobile string `json:"mobile" description:"手机号码"`
|
||||
HomePhone string `json:"home_phone" description:"家庭号码"`
|
||||
DingtalkRobotToken string `json:"dingtalk_robot_token" description:"钉钉机器人token"`
|
||||
Role int `json:"role" v:"required#角色不能为空" description:"权限"`
|
||||
Remark string `json:"remark" description:"备注"`
|
||||
Status string `json:"status" description:"状态"`
|
||||
CreatedAt *gtime.Time `json:"created_at" description:"创建时间"`
|
||||
UpdatedAt *gtime.Time `json:"updated_at" description:"修改时间"`
|
||||
}
|
||||
|
||||
type AdminMemberAddInp struct {
|
||||
AdminMemberEditInp
|
||||
PasswordHash string `json:"password_hash" description:"密码hash"`
|
||||
Salt string `json:"salt" description:"密码盐"`
|
||||
}
|
||||
|
||||
type AdminMemberEditModel struct{}
|
||||
|
||||
// 删除字典类型
|
||||
type AdminMemberDeleteInp struct {
|
||||
Id interface{}
|
||||
}
|
||||
type AdminMemberDeleteModel struct{}
|
||||
|
||||
// 获取信息
|
||||
type AdminMemberViewInp struct {
|
||||
Id int64
|
||||
}
|
||||
|
||||
type AdminMemberViewModel struct {
|
||||
entity.AdminMember
|
||||
}
|
||||
|
||||
// 获取列表
|
||||
type AdminMemberListInp struct {
|
||||
Page int
|
||||
Limit int
|
||||
Name string
|
||||
Code string
|
||||
DeptId int
|
||||
Mobile int
|
||||
Username string
|
||||
Realname string
|
||||
StartTime string
|
||||
EndTime string
|
||||
Status int
|
||||
}
|
||||
|
||||
type AdminMemberListModel struct {
|
||||
entity.AdminMember
|
||||
DeptName string `json:"dept_name"`
|
||||
RoleName string `json:"role_name"`
|
||||
}
|
||||
|
||||
// 登录
|
||||
type AdminMemberLoginSignInp struct {
|
||||
Username string
|
||||
Password string
|
||||
Device string
|
||||
Cid string
|
||||
Code string
|
||||
}
|
||||
type AdminMemberLoginSignModel struct {
|
||||
model.Identity
|
||||
Token string `json:"token" v:"" description:"登录token"`
|
||||
}
|
||||
64
hotgo-server/app/form/input/admin_notice_input.go
Normal file
64
hotgo-server/app/form/input/admin_notice_input.go
Normal file
@@ -0,0 +1,64 @@
|
||||
package input
|
||||
|
||||
import "github.com/bufanyun/hotgo/app/model/entity"
|
||||
|
||||
// 名称是否唯一
|
||||
type AdminNoticeNameUniqueInp struct {
|
||||
Title string
|
||||
Id int64
|
||||
}
|
||||
|
||||
type AdminNoticeNameUniqueModel struct {
|
||||
IsUnique bool
|
||||
}
|
||||
|
||||
// 最大排序
|
||||
type AdminNoticeMaxSortInp struct {
|
||||
Id int64
|
||||
}
|
||||
|
||||
type AdminNoticeMaxSortModel struct {
|
||||
Sort int
|
||||
}
|
||||
|
||||
// 修改/新增字典数据
|
||||
type AdminNoticeEditInp struct {
|
||||
entity.AdminNotice
|
||||
}
|
||||
type AdminNoticeEditModel struct{}
|
||||
|
||||
// 删除字典类型
|
||||
type AdminNoticeDeleteInp struct {
|
||||
Id interface{}
|
||||
}
|
||||
type AdminNoticeDeleteModel struct{}
|
||||
|
||||
// 获取信息
|
||||
type AdminNoticeViewInp struct {
|
||||
Id string
|
||||
}
|
||||
|
||||
type AdminNoticeViewModel struct {
|
||||
entity.AdminNotice
|
||||
}
|
||||
|
||||
// 获取列表
|
||||
type AdminNoticeListInp struct {
|
||||
Page int
|
||||
Limit int
|
||||
Name string
|
||||
Code string
|
||||
DeptId int
|
||||
Mobile int
|
||||
Username string
|
||||
Realname string
|
||||
StartTime string
|
||||
EndTime string
|
||||
Status int
|
||||
}
|
||||
|
||||
type AdminNoticeListModel struct {
|
||||
entity.AdminNotice
|
||||
DeptName string `json:"dept_name"`
|
||||
RoleName string `json:"role_name"`
|
||||
}
|
||||
68
hotgo-server/app/form/input/admin_post_input.go
Normal file
68
hotgo-server/app/form/input/admin_post_input.go
Normal file
@@ -0,0 +1,68 @@
|
||||
package input
|
||||
|
||||
import (
|
||||
"github.com/bufanyun/hotgo/app/model/entity"
|
||||
)
|
||||
|
||||
// 获取列表
|
||||
type AdminPostListInp struct {
|
||||
Page int
|
||||
Limit int
|
||||
Name string
|
||||
Code string
|
||||
Status int
|
||||
}
|
||||
|
||||
type AdminPostListModel struct {
|
||||
entity.AdminPost
|
||||
}
|
||||
|
||||
// 获取信息
|
||||
type AdminPostViewInp struct {
|
||||
Id string
|
||||
}
|
||||
|
||||
type AdminPostViewModel struct {
|
||||
entity.AdminPost
|
||||
}
|
||||
|
||||
// 编码是否唯一
|
||||
type AdminPostCodeUniqueInp struct {
|
||||
Code string
|
||||
Id int64
|
||||
}
|
||||
|
||||
type AdminPostCodeUniqueModel struct {
|
||||
IsUnique bool
|
||||
}
|
||||
|
||||
// 名称是否唯一
|
||||
type AdminPostNameUniqueInp struct {
|
||||
Name string
|
||||
Id int64
|
||||
}
|
||||
|
||||
type AdminPostNameUniqueModel struct {
|
||||
IsUnique bool
|
||||
}
|
||||
|
||||
// 最大排序
|
||||
type AdminPostMaxSortInp struct {
|
||||
Id int64
|
||||
}
|
||||
|
||||
type AdminPostMaxSortModel struct {
|
||||
Sort int
|
||||
}
|
||||
|
||||
// 修改/新增字典数据
|
||||
type AdminPostEditInp struct {
|
||||
entity.AdminPost
|
||||
}
|
||||
type AdminPostEditModel struct{}
|
||||
|
||||
// 删除字典类型
|
||||
type AdminPostDeleteInp struct {
|
||||
Id interface{}
|
||||
}
|
||||
type AdminPostDeleteModel struct{}
|
||||
44
hotgo-server/app/form/input/admin_role_input.go
Normal file
44
hotgo-server/app/form/input/admin_role_input.go
Normal file
@@ -0,0 +1,44 @@
|
||||
package input
|
||||
|
||||
import (
|
||||
"github.com/bufanyun/hotgo/app/form"
|
||||
"github.com/bufanyun/hotgo/app/model"
|
||||
"github.com/bufanyun/hotgo/app/model/entity"
|
||||
)
|
||||
|
||||
// 获取列表
|
||||
type AdminRoleListInp struct {
|
||||
Page int
|
||||
Limit int
|
||||
}
|
||||
|
||||
type AdminRoleListModel struct {
|
||||
entity.AdminRole
|
||||
}
|
||||
|
||||
// 查询列表
|
||||
type AdminRoleMemberListInp struct {
|
||||
form.PageReq
|
||||
form.RangeDateReq
|
||||
form.StatusReq
|
||||
Role int `json:"role" description:"角色ID"`
|
||||
DeptId int `json:"dept_id" description:"部门ID"`
|
||||
Mobile int `json:"mobile" description:"手机号"`
|
||||
Username string `json:"username" description:"用户名"`
|
||||
Realname string `json:"realname" description:"真实姓名"`
|
||||
StartTime string `json:"start_time" description:"开始时间"`
|
||||
EndTime string `json:"end_time" description:"结束时间"`
|
||||
Name string `json:"name" description:"岗位名称"`
|
||||
Code string `json:"code" description:"岗位编码"`
|
||||
}
|
||||
|
||||
type AdminRoleMemberListModel []*AdminMemberListModel
|
||||
|
||||
// 查询角色菜单列表
|
||||
type MenuRoleListInp struct {
|
||||
RoleId int64
|
||||
}
|
||||
type MenuRoleListModel struct {
|
||||
Menus []*model.LabelTreeMenu `json:"menus" description:"菜单列表"`
|
||||
CheckedKeys []int64 `json:"checkedKeys" description:"选择的菜单ID"`
|
||||
}
|
||||
72
hotgo-server/app/form/input/sys_config_input.go
Normal file
72
hotgo-server/app/form/input/sys_config_input.go
Normal file
@@ -0,0 +1,72 @@
|
||||
package input
|
||||
|
||||
import "github.com/bufanyun/hotgo/app/model/entity"
|
||||
|
||||
// 获取指定配置键的值
|
||||
type SysConfigGetValueInp struct {
|
||||
Key string
|
||||
}
|
||||
type SysConfigGetValueModel struct {
|
||||
Value string
|
||||
}
|
||||
|
||||
// 名称是否唯一
|
||||
type SysConfigNameUniqueInp struct {
|
||||
Name string
|
||||
Id int64
|
||||
}
|
||||
|
||||
type SysConfigNameUniqueModel struct {
|
||||
IsUnique bool
|
||||
}
|
||||
|
||||
// 最大排序
|
||||
type SysConfigMaxSortInp struct {
|
||||
Id int64
|
||||
}
|
||||
|
||||
type SysConfigMaxSortModel struct {
|
||||
Sort int
|
||||
}
|
||||
|
||||
// 修改/新增字典数据
|
||||
type SysConfigEditInp struct {
|
||||
entity.SysConfig
|
||||
}
|
||||
type SysConfigEditModel struct{}
|
||||
|
||||
// 删除字典类型
|
||||
type SysConfigDeleteInp struct {
|
||||
Id interface{}
|
||||
}
|
||||
type SysConfigDeleteModel struct{}
|
||||
|
||||
// 获取信息
|
||||
type SysConfigViewInp struct {
|
||||
Id string
|
||||
}
|
||||
|
||||
type SysConfigViewModel struct {
|
||||
entity.SysConfig
|
||||
}
|
||||
|
||||
// 获取列表
|
||||
type SysConfigListInp struct {
|
||||
Page int
|
||||
Limit int
|
||||
Name string
|
||||
Code string
|
||||
DeptId int
|
||||
Mobile int
|
||||
Username string
|
||||
Realname string
|
||||
StartTime string
|
||||
EndTime string
|
||||
Status int
|
||||
}
|
||||
|
||||
type SysConfigListModel struct {
|
||||
entity.SysConfig
|
||||
DeptName string `json:"dept_name"`
|
||||
RoleName string `json:"role_name"`
|
||||
}
|
||||
26
hotgo-server/app/form/input/sys_log_input.go
Normal file
26
hotgo-server/app/form/input/sys_log_input.go
Normal file
@@ -0,0 +1,26 @@
|
||||
package input
|
||||
|
||||
import (
|
||||
"github.com/bufanyun/hotgo/app/model/entity"
|
||||
)
|
||||
|
||||
// 获取菜单列表
|
||||
type LogListInp struct {
|
||||
Page int
|
||||
Limit int
|
||||
Module string
|
||||
MemberId int
|
||||
TakeUpTime int
|
||||
Method string
|
||||
Url string
|
||||
Ip string
|
||||
ErrorCode string
|
||||
StartTime string
|
||||
EndTime string
|
||||
}
|
||||
|
||||
type LogListModel struct {
|
||||
entity.SysLog
|
||||
MemberName string `json:"member_name"`
|
||||
Region string `json:"region"`
|
||||
}
|
||||
Reference in New Issue
Block a user