Files
quyun-v2/backend/app/http/tenant/dto/tenant_join_admin.go

67 lines
2.2 KiB
Go
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
package dto
import (
"strings"
"time"
"quyun/v2/app/requests"
"quyun/v2/pkg/consts"
)
// AdminTenantInviteCreateForm 租户管理员创建邀请码的请求参数。
type AdminTenantInviteCreateForm struct {
// Code 邀请码(可选):为空时由后端生成;建议只包含数字/字母,便于人工输入。
Code string `json:"code"`
// MaxUses 最大可使用次数可选0 表示不限次数;大于 0 时用尽后自动失效。
MaxUses *int `json:"max_uses"`
// ExpiresAt 过期时间(可选):为空表示不过期;到期后不可再使用。
ExpiresAt *time.Time `json:"expires_at"`
// Remark 备注(可选):用于审计记录生成目的/投放渠道等。
Remark string `json:"remark"`
}
// AdminTenantInviteDisableForm 租户管理员禁用邀请码的请求参数。
type AdminTenantInviteDisableForm struct {
// Reason 禁用原因(可选):用于审计与追溯。
Reason string `json:"reason"`
}
// AdminTenantInviteListFilter 租户管理员分页查询邀请码列表的过滤条件。
type AdminTenantInviteListFilter struct {
requests.Pagination
// Status 按状态过滤可选active/disabled/expired。
Status *consts.TenantInviteStatus `query:"status" json:"status"`
// Code 按邀请码模糊过滤可选支持部分匹配like
Code *string `query:"code" json:"code"`
}
// CodeTrimmed 对 code 进行空白与大小写处理,便于统一查询。
func (f *AdminTenantInviteListFilter) CodeTrimmed() string {
if f == nil || f.Code == nil {
return ""
}
return strings.ToLower(strings.TrimSpace(*f.Code))
}
// AdminTenantJoinRequestListFilter 租户管理员分页查询加入申请的过滤条件。
type AdminTenantJoinRequestListFilter struct {
requests.Pagination
// UserID 按申请人用户ID过滤可选
UserID *int64 `query:"user_id" json:"user_id"`
// Status 按申请状态过滤可选pending/approved/rejected。
Status *consts.TenantJoinRequestStatus `query:"status" json:"status"`
}
// AdminTenantJoinRequestDecideForm 租户管理员通过/拒绝加入申请的请求参数。
type AdminTenantJoinRequestDecideForm struct {
// Reason 审核说明(可选):用于审计记录通过/拒绝原因。
Reason string `json:"reason"`
}