package dto import ( "github.com/gogf/gf/v2/frame/g" "go.mongodb.org/mongo-driver/v2/bson" ) // GeneratePrivateCategoryTestDataReq 生成私域分类测试数据请求 type GeneratePrivateCategoryTestDataReq struct { g.Meta `path:"/generateTestData" method:"post" tags:"私域分类管理" summary:"生成测试数据" dc:"生成私域分类测试数据"` } // CreatePrivateCategoryReq 创建私域分类请求 type CreatePrivateCategoryReq struct { g.Meta `path:"/createPrivateCategory" method:"post" tags:"私域分类管理" summary:"创建私域分类" dc:"创建新的私域分类"` Name string `json:"name" v:"required" dc:"分类名称"` ParentID *bson.ObjectID `json:"parentId" dc:"父分类ID,为空表示根分类"` Path string `json:"path" dc:"分类路径,如:/root/parent"` Level int `json:"level" dc:"分类层级"` IsLeafNode bool `json:"isLeafNode" dc:"是否叶子节点"` Sort int `json:"sort" dc:"排序"` Image string `json:"image" dc:"分类图片"` } // CreatePrivateCategoryRes 创建私域分类响应 type CreatePrivateCategoryRes struct { ID *bson.ObjectID `json:"id"` // 分类ID } // BatchCreatePrivateCategoryReq 批量创建私域分类请求 type BatchCreatePrivateCategoryReq struct { g.Meta `path:"/batchCreatePrivateCategory" method:"post" tags:"私域分类管理" summary:"批量创建私域分类" dc:"批量创建私域分类"` Categories []CreatePrivateCategoryReq `json:"categories" v:"required" dc:"分类列表"` } // BatchCreatePrivateCategoryRes 批量创建私域分类响应 type BatchCreatePrivateCategoryRes struct { IDs []*bson.ObjectID `json:"ids"` // 创建的ID列表 } // UpdatePrivateCategoryReq 更新私域分类请求 type UpdatePrivateCategoryReq struct { g.Meta `path:"/updatePrivateCategory" method:"put" tags:"私域分类管理" summary:"更新私域分类" dc:"更新私域分类信息"` ID *bson.ObjectID `json:"id" v:"required" dc:"分类ID"` Name string `json:"name" dc:"分类名称"` ParentID string `json:"parentId" dc:"父分类ID"` Path string `json:"path" dc:"分类路径"` Level int `json:"level" dc:"分类层级"` IsLeafNode *bool `json:"isLeafNode" dc:"是否叶子节点"` Sort int `json:"sort" dc:"排序"` Image string `json:"image" dc:"分类图片"` } // DeletePrivateCategoryReq 删除私域分类请求 type DeletePrivateCategoryReq struct { g.Meta `path:"/deletePrivateCategory" method:"delete" tags:"私域分类管理" summary:"删除私域分类" dc:"删除私域分类"` ID *bson.ObjectID `json:"id" v:"required" dc:"分类ID"` } // GetPrivateCategoryReq 获取私域分类详情请求 type GetPrivateCategoryReq struct { g.Meta `path:"/getPrivateCategory" method:"get" tags:"私域分类管理" summary:"获取私域分类详情" dc:"获取私域分类详情"` ID *bson.ObjectID `json:"id" v:"required" dc:"分类ID"` } // GetPrivateCategoryRes 获取私域分类详情响应 type GetPrivateCategoryRes struct { ID *bson.ObjectID `json:"id"` Name string `json:"name"` ParentID string `json:"parentId"` Path string `json:"path"` Level int `json:"level"` IsLeafNode bool `json:"isLeafNode"` Sort int `json:"sort"` Image string `json:"image"` CreatedAt string `json:"createdAt"` UpdatedAt string `json:"updatedAt"` } // ListPrivateCategoryReq 获取私域分类列表请求 type ListPrivateCategoryReq struct { g.Meta `path:"/listPrivateCategory" method:"get" tags:"私域分类管理" summary:"获取私域分类列表" dc:"分页查询私域分类列表"` Name string `json:"name" dc:"分类名称(模糊查询)"` ParentID string `json:"parentId" dc:"父分类ID"` Level int `json:"level" dc:"分类层级"` IsLeafNode *bool `json:"isLeafNode" dc:"是否叶子节点"` PageNum int `json:"pageNum" dc:"页码"` PageSize int `json:"pageSize" dc:"每页大小"` } // ListPrivateCategoryRes 获取私域分类列表响应 type ListPrivateCategoryRes struct { List []*PrivateCategoryListItem `json:"list" dc:"分类列表"` Total int64 `json:"total" dc:"总数"` } // PrivateCategoryListItem 私域分类列表项 type PrivateCategoryListItem struct { ID *bson.ObjectID `json:"id"` Name string `json:"name"` ParentID string `json:"parentId"` Path string `json:"path"` Level int `json:"level"` IsLeafNode bool `json:"isLeafNode"` Sort int `json:"sort"` Image string `json:"image"` CreatedAt string `json:"createdAt"` UpdatedAt string `json:"updatedAt"` } // GetPrivateCategoryTreeReq 获取私域分类树请求 type GetPrivateCategoryTreeReq struct { g.Meta `path:"/getPrivateCategoryTree" method:"get" tags:"私域分类管理" summary:"获取私域分类树" dc:"获取私域分类树"` } // GetPrivateCategoryTreeRes 获取私域分类树响应 type GetPrivateCategoryTreeRes struct { Tree []*PrivateCategoryTreeItem `json:"tree" dc:"分类树"` } // PrivateCategoryTreeItem 私域分类树项 type PrivateCategoryTreeItem struct { ID *bson.ObjectID `json:"id"` Name string `json:"name"` ParentID string `json:"parentId"` Path string `json:"path"` Level int `json:"level"` IsLeafNode bool `json:"isLeafNode"` Sort int `json:"sort"` Image string `json:"image"` }