Files
junhong_cmp_fiber/internal/model/dto/wecom_dto.go
break 73f5125d3d
All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 8m26s
七月迭代短暂完结,还有很多后端的关键东西没有弄,这是一版赶时间做的东西
2026-07-25 17:06:58 +08:00

73 lines
4.9 KiB
Go
Raw 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 "time"
// SaveWeComApplicationRequest 保存企业微信自建应用请求。
type SaveWeComApplicationRequest struct {
CorpID string `json:"corp_id" validate:"required,min=1,max=64" description:"企业微信企业 ID"`
AgentID int64 `json:"agent_id" validate:"required,gt=0" description:"企业微信自建应用 AgentID"`
Name string `json:"name" validate:"required,min=1,max=100" description:"应用展示名称"`
Secret string `json:"secret" validate:"required,min=1,max=512" description:"应用 Secret管理端使用明文传入服务端加密保存"`
CallbackToken string `json:"callback_token" validate:"required,min=1,max=512" description:"回调 Token管理端使用明文传入服务端加密保存"`
EncodingAESKey string `json:"encoding_aes_key" validate:"required,len=43" description:"回调 EncodingAESKey管理端使用明文传入服务端加密保存"`
Status int `json:"status" validate:"oneof=0 1" enum:"0,1" description:"状态 (0:禁用, 1:启用)"`
}
// WeComApplicationListRequest 查询企业微信应用配置列表请求。
type WeComApplicationListRequest struct {
Page int `json:"page" query:"page" validate:"omitempty,min=1" minimum:"1" default:"1" description:"页码,默认 1"`
PageSize int `json:"page_size" query:"page_size" validate:"omitempty,min=1,max=100" minimum:"1" maximum:"100" default:"20" description:"每页数量,默认 20最大 100"`
}
// WeComApplicationResponse 企业微信应用配置响应,仅允许超级管理员读取明文凭据。
type WeComApplicationResponse struct {
ID uint `json:"id" description:"应用配置 ID"`
CorpID string `json:"corp_id" description:"企业微信企业 ID"`
AgentID int64 `json:"agent_id" description:"企业微信自建应用 AgentID"`
Name string `json:"name" description:"应用展示名称"`
Secret string `json:"secret" description:"应用 Secret 明文,仅超级管理员可见"`
CallbackToken string `json:"callback_token" description:"回调 Token 明文,仅超级管理员可见"`
EncodingAESKey string `json:"encoding_aes_key" description:"回调 EncodingAESKey 明文,仅超级管理员可见"`
DefaultCreatorUserID string `json:"default_creator_userid" description:"代理等非企微账号发起审批时使用的默认企微成员 userid"`
DefaultCreatorName string `json:"default_creator_name" description:"默认企微审批发起人姓名快照"`
Status int `json:"status" description:"状态 (0:禁用, 1:启用)"`
StatusName string `json:"status_name" description:"状态名称(中文)"`
CredentialsSet bool `json:"credentials_set" description:"Secret、回调 Token 和 EncodingAESKey 是否均已配置"`
LastConnectedAt *time.Time `json:"last_connected_at" description:"最近一次成功取得 access_token 的时间"`
CreatedAt time.Time `json:"created_at" description:"创建时间"`
UpdatedAt time.Time `json:"updated_at" description:"更新时间"`
}
// SaveWeComDefaultCreatorRequest 保存企业微信应用默认审批发起人请求。
type SaveWeComDefaultCreatorRequest struct {
UserID string `json:"userid" validate:"required,min=1,max=64" description:"从应用当前可见成员中选择的默认发起人 userid"`
}
// SaveWeComDefaultCreatorParams 保存默认审批发起人的路径与请求参数。
type SaveWeComDefaultCreatorParams struct {
ID uint `path:"id" required:"true" description:"企业微信应用配置 ID"`
SaveWeComDefaultCreatorRequest
}
// WeComApplicationListResponse 企业微信应用列表响应。
type WeComApplicationListResponse struct {
Items []WeComApplicationResponse `json:"items" description:"企业微信应用配置列表"`
Total int64 `json:"total" description:"总数量"`
Page int `json:"page" description:"当前页码"`
PageSize int `json:"page_size" description:"每页数量"`
}
// WeComConnectionTestResponse 企业微信连接测试响应。
type WeComConnectionTestResponse struct {
Success bool `json:"success" description:"是否成功取得 access_token"`
}
// WeComApprovalCallbackRequest 企业微信审批回调路径与签名参数。
type WeComApprovalCallbackRequest struct {
ApplicationID uint `path:"application_id" required:"true" minimum:"1" description:"企业微信应用配置 ID"`
MsgSignature string `query:"msg_signature" required:"true" description:"企业微信回调消息签名"`
Timestamp string `query:"timestamp" required:"true" description:"企业微信回调时间戳"`
Nonce string `query:"nonce" required:"true" description:"企业微信回调随机串"`
EchoStr string `query:"echostr" description:"GET 回调地址验证使用的加密随机串"`
}