// Code generated by goctl. DO NOT EDIT.
package types

// The basic response with data | 基础带数据信息
// swagger:model BaseDataInfo
type BaseDataInfo struct {
	// Error code | 错误代码
	Code int `json:"code"`
	// Message | 提示信息
	Msg string `json:"msg"`
	// Data | 数据
	Data string `json:"data,omitempty"`
}

// The basic response with data | 基础带数据信息
// swagger:model BaseListInfo
type BaseListInfo struct {
	// The total number of data | 数据总数
	Total uint64 `json:"total"`
	// Data | 数据
	Data string `json:"data,omitempty"`
}

// The basic response without data | 基础不带数据信息
// swagger:model BaseMsgResp
type BaseMsgResp struct {
	// Error code | 错误代码
	Code int `json:"code"`
	// Message | 提示信息
	Msg string `json:"msg"`
}

// The page request parameters | 列表请求参数
// swagger:model PageInfo
type PageInfo struct {
	// Page number | 第几页
	// required : true
	// min : 0
	Page uint64 `json:"page" validate:"required,number,gt=0"`
	// Page size | 单页数据行数
	// required : true
	// max : 100000
	PageSize uint64 `json:"pageSize" validate:"required,number,lt=100000"`
}

// Basic ID request | 基础ID参数请求
// swagger:model IDReq
type IDReq struct {
	// ID
	// Required: true
	Id uint64 `json:"id" validate:"number"`
}

// Basic IDs request | 基础ID数组参数请求
// swagger:model IDsReq
type IDsReq struct {
	// IDs
	// Required: true
	Ids []uint64 `json:"ids"`
}

// Basic ID request | 基础ID地址参数请求
// swagger:model IDPathReq
type IDPathReq struct {
	// ID
	// Required: true
	Id uint64 `path:"id"`
}

// Basic ID request (int32) | 基础ID参数请求 (int32)
// swagger:model IDInt32Req
type IDInt32Req struct {
	// ID
	// Required: true
	Id int32 `json:"id" validate:"number"`
}

// Basic IDs request (int32) | 基础ID数组参数请求 (int32)
// swagger:model IDsInt32Req
type IDsInt32Req struct {
	// IDs
	// Required: true
	Ids []int32 `json:"ids"`
}

// Basic ID request (int32) | 基础ID地址参数请求 (int32)
// swagger:model IDInt32PathReq
type IDInt32PathReq struct {
	// ID
	// Required: true
	Id int32 `path:"id"`
}

// Basic ID request (uint32) | 基础ID参数请求 (uint32)
// swagger:model IDUint32Req
type IDUint32Req struct {
	// ID
	// Required: true
	Id uint32 `json:"id" validate:"number"`
}

// Basic IDs request (uint32) | 基础ID数组参数请求 (uint32)
// swagger:model IDsUint32Req
type IDsUint32Req struct {
	// IDs
	// Required: true
	Ids []uint32 `json:"ids"`
}

// Basic ID request (uint32) | 基础ID地址参数请求 (uint32)
// swagger:model IDUint32PathReq
type IDUint32PathReq struct {
	// ID
	// Required: true
	Id uint32 `path:"id"`
}

// Basic ID request (int64) | 基础ID参数请求 (int64)
// swagger:model IDInt64Req
type IDInt64Req struct {
	// ID
	// Required: true
	Id int64 `json:"id" validate:"number"`
}

// Basic IDs request (int64) | 基础ID数组参数请求 (int64)
// swagger:model IDsInt64Req
type IDsInt64Req struct {
	// IDs
	// Required: true
	Ids []int64 `json:"ids"`
}

// Basic ID request (int64) | 基础ID地址参数请求 (int64)
// swagger:model IDInt64PathReq
type IDInt64PathReq struct {
	// ID
	// Required: true
	Id int64 `path:"id"`
}

// Basic UUID request in path | 基础UUID地址参数请求
// swagger:model UUIDPathReq
type UUIDPathReq struct {
	// ID
	// Required: true
	Id string `path:"id"`
}

// Basic UUID request | 基础UUID参数请求
// swagger:model UUIDReq
type UUIDReq struct {
	// ID
	// required : true
	// max length : 36
	// min length : 36
	Id string `json:"id" validate:"required,len=36"`
}

// Basic UUID array request | 基础UUID数组参数请求
// swagger:model UUIDsReq
type UUIDsReq struct {
	// Ids
	// Required: true
	Ids []string `json:"ids"`
}

// The base ID response data | 基础ID信息
// swagger:model BaseIDInfo
type BaseIDInfo struct {
	// ID
	Id *uint64 `json:"id,optional"`
	// Create date | 创建日期
	CreatedAt *int64 `json:"createdAt,optional"`
	// Update date | 更新日期
	UpdatedAt *int64 `json:"updatedAt,optional"`
}

// The base ID response data (int64) | 基础ID信息 (int64)
// swagger:model BaseIDInt64Info
type BaseIDInt64Info struct {
	// ID
	Id *int64 `json:"id,optional"`
	// Create date | 创建日期
	CreatedAt *int64 `json:"createdAt,optional"`
	// Update date | 更新日期
	UpdatedAt *int64 `json:"updatedAt,optional"`
}

// The base ID response data (int32) | 基础ID信息 (int32)
// swagger:model BaseIDInt32Info
type BaseIDInt32Info struct {
	// ID
	Id *int32 `json:"id,optional"`
	// Create date | 创建日期
	CreatedAt *int64 `json:"createdAt,optional"`
	// Update date | 更新日期
	UpdatedAt *int64 `json:"updatedAt,optional"`
}

// The base ID response data (uint32) | 基础ID信息 (uint32)
// swagger:model BaseIDUint32Info
type BaseIDUint32Info struct {
	// ID
	Id *uint32 `json:"id,optional"`
	// Create date | 创建日期
	CreatedAt *int64 `json:"createdAt,optional"`
	// Update date | 更新日期
	UpdatedAt *int64 `json:"updatedAt,optional"`
}

// The base UUID response data | 基础UUID信息
// swagger:model BaseUUIDInfo
type BaseUUIDInfo struct {
	// ID
	Id *string `json:"id,optional"`
	// Create date | 创建日期
	CreatedAt *int64 `json:"createdAt,optional"`
	// Update date | 更新日期
	UpdatedAt *int64 `json:"updatedAt,optional"`
}

type Condition struct {
	Equal       int      `json:"equal"`
	LabelIdList []uint64 `json:"labelIdList"`
}

type Action struct {
	Type    int    `json:"type"`
	Content string `json:"content"`
	Meta    Meta   `json:"meta,optional"`
}

type Meta struct {
	Filename string `json:"filename,optional"`
}

// The response data of server information | Server信息
// swagger:model ServerInfo
type ServerInfo struct {
	BaseIDInfo
	// Status 1: normal 2: ban | 状态 1 正常 2 禁用
	Status *uint8 `json:"status,optional"`
	// 名称
	Name *string `json:"name,optional"`
	// 公网ip
	PublicIp *string `json:"publicIp,optional"`
	// 内网ip
	PrivateIp *string `json:"privateIp,optional"`
	// 管理端口
	AdminPort *string `json:"adminPort,optional"`
}

// The response data of server list | Server列表数据
// swagger:model ServerListResp
type ServerListResp struct {
	BaseDataInfo
	// Server list data | Server列表数据
	Data ServerListInfo `json:"data"`
}

// Server list data | Server列表数据
// swagger:model ServerListInfo
type ServerListInfo struct {
	BaseListInfo
	// The API list data | Server列表数据
	Data []ServerInfo `json:"data"`
}

// Get server list request params | Server列表请求参数
// swagger:model ServerListReq
type ServerListReq struct {
	PageInfo
	// 名称
	Name *string `json:"name,optional"`
	// 公网ip
	PublicIp *string `json:"publicIp,optional"`
	// 内网ip
	PrivateIp *string `json:"privateIp,optional"`
}

// Server information response | Server信息返回体
// swagger:model ServerInfoResp
type ServerInfoResp struct {
	BaseDataInfo
	// Server information | Server数据
	Data ServerInfo `json:"data"`
}

// The response data of wx information | Wx信息
// swagger:model WxInfo
type WxInfo struct {
	BaseIDInfo
	// Status 1: normal 2: ban | 状态 1 正常 2 禁用
	Status *uint8 `json:"status,optional"`
	// 服务器id
	ServerId *uint64 `json:"serverId,optional"`
	// 服务器名称
	ServerName *string `json:"serverName,optional"`
	// 端口号
	Port *string `json:"port,optional"`
	// 进程号
	ProcessId *string `json:"processId,optional"`
	// 回调地址
	Callback *string `json:"callback,optional"`
	// 微信id
	Wxid *string `json:"wxid,optional"`
	// 微信账号
	Account *string `json:"account,optional"`
	// 微信昵称
	Nickname *string `json:"nickname,optional"`
	// 手机号
	Tel *string `json:"tel,optional"`
	// 微信头像
	HeadBig *string `json:"headBig,optional"`
	// 组织ID
	OrganizationId *uint64 `json:"organizationId,optional"`
	// 组织名称
	OrganizationName *string `json:"organizationName,optional"`
	// 模式ID
	AgentId *uint64 `json:"agentId,optional"`
	// 模式信息
	AgentInfo *AgentInfo `json:"agentInfo,optional"`
	// 大模型服务地址
	ApiBase *string `json:"apiBase,optional"`
	// 大模型服务密钥
	ApiKey *string `json:"apiKey,optional"`
}

// The response data of wx list | Wx列表数据
// swagger:model WxListResp
type WxListResp struct {
	BaseDataInfo
	// Wx list data | Wx列表数据
	Data WxListInfo `json:"data"`
}

// Wx list data | Wx列表数据
// swagger:model WxListInfo
type WxListInfo struct {
	BaseListInfo
	// The API list data | Wx列表数据
	Data []WxInfo `json:"data"`
}

// Get wx list request params | Wx列表请求参数
// swagger:model WxListReq
type WxListReq struct {
	PageInfo
	// 服务器id
	ServerId *uint64 `json:"serverId,optional"`
	// 租户id
	OrganizationId *uint64 `json:"organizationId,optional"`
	// 租户名称
	OrganizationName *string `json:"organizationName,optional"`
	// 端口号
	Port *string `json:"port,optional"`
	// 进程号
	ProcessId *string `json:"processId,optional"`
	// 回调地址
	Callback *string `json:"callback,optional"`
}

// Wx information response | Wx信息返回体
// swagger:model WxInfoResp
type WxInfoResp struct {
	BaseDataInfo
	// Wx information | Wx数据
	Data WxInfo `json:"data"`
}

// The data of agent information | Agent信息
// swagger:model AgentInfo
type AgentInfo struct {
	BaseIDInfo
	// name | 角色名称
	Name *string `json:"name,optional"`
	// role | 角色设定
	Role *string `json:"role,optional"`
	// status | 状态 1-正常 2-禁用
	Status *int `json:"status,optional"`
	// background | 背景介绍
	Background *string `json:"background,optional"`
	// examples | 对话案例
	Examples     *string `json:"examples,optional"`
	DatasetId    *string `json:"dataset_id,optional"`
	CollectionId *string `json:"collection_id,optional"`
}

// The response data of agent list | Agent列表数据
// swagger:model AgentListResp
type AgentListResp struct {
	BaseDataInfo
	// Agent list data | Agent列表数据
	Data AgentListInfo `json:"data"`
}

// Agent list data | Agent列表数据
// swagger:model AgentListInfo
type AgentListInfo struct {
	BaseListInfo
	// The API list data | Agent列表数据
	Data []AgentInfo `json:"data"`
}

// Get agent list request params | Agent列表请求参数
// swagger:model AgentListReq
type AgentListReq struct {
	PageInfo
	// name | 角色名称
	Name *string `json:"name,optional"`
	// role | 角色设定
	Role *string `json:"role,optional"`
	// background | 背景介绍
	Background *string `json:"background,optional"`
	// status | 状态 1-可用 2-不可用
	Status *int `json:"status,optional"`
}

// Agent information response | Agent信息返回体
// swagger:model AgentInfoResp
type AgentInfoResp struct {
	BaseDataInfo
	// Agent information | Agent数据
	Data AgentInfo `json:"data"`
}

type VectorModel struct {
	Model            *string `json:"model"`
	Name             *string `json:"name"`
	CharsPointsPrice *uint64 `json:"charsPointsPrice"`
	DefaultToken     *uint64 `json:"defaultToken"`
	MaxToken         *uint64 `json:"maxToken"`
	Weight           *uint64 `json:"weight"`
}

type AgentModel struct {
	Model            *string `json:"model"`
	Name             *string `json:"name"`
	MaxContext       *uint64 `json:"maxContext"`
	MaxResponse      *uint64 `json:"maxResponse"`
	CharsPointsPrice *uint64 `json:"charsPointsPrice"`
}

type DatasetId struct {
	ID          *string `json:"id"`
	ParentID    *string `json:"parentId"`
	TeamId      *string `json:"teamId"`
	TmbId       *string `json:"tmbId"`
	Type        *string `json:"type"`
	Status      *string `json:"status"`
	Avatar      *string `json:"avatar"`
	Name        *string `json:"name"`
	VectorModel *string `json:"vectorModel"`
	AgentModel  *string `json:"agentModel"`
	Intro       *string `json:"intro"`
}

// Dataset info | 知识库详情
// swagger:model DatasetInfo
type DatasetInfo struct {
	ID          *string     `json:"id"`
	ParentID    *string     `json:"parentId"`
	TeamId      *string     `json:"teamId"`
	TmbId       *string     `json:"tmbId"`
	Type        *string     `json:"type"`
	Name        *string     `json:"name"`
	Intro       *string     `json:"intro"`
	Status      *string     `json:"status"`
	Avatar      *string     `json:"avatar"`
	VectorModel VectorModel `json:"vectorModel"`
	AgentModel  AgentModel  `json:"agentModel"`
	Permission  *string     `json:"permission"`
	CanWrite    *bool       `json:"canWrite"`
	IsOwner     *bool       `json:"isOwner"`
}

type Index struct {
	DefaultIndex *bool   `json:"defaultIndex"`
	Type         *string `json:"type"`
	DataId       *string `json:"dataId"`
	Text         *string `json:"text"`
	ID           *string `json:"id"`
}

// Collection Info | 集合详情
// swagger:model CollectionInfo
type CollectionInfo struct {
	ID             *string   `json:"id"`
	ParentID       *string   `json:"parentId"`
	TmbId          *string   `json:"tmbId,optional"`
	Type           *string   `json:"type"`
	Name           *string   `json:"name"`
	DataAmount     *uint64   `json:"dataAmount,optional"`
	TrainingAmount *uint64   `json:"trainingAmount,optional"`
	TrainingType   *string   `json:"trainingType,optional"`
	ChunkSize      *uint64   `json:"chunkSize,optional"`
	ChunkSplitter  *string   `json:"chunkSplitter,optional"`
	QaPrompt       *string   `json:"qaPrompt,optional"`
	RawTextLength  *uint64   `json:"rawTextLength,optional"`
	CanWrite       *bool     `json:"canWrite,optional"`
	SourceName     *string   `json:"sourceName,optional"`
	DatasetId      DatasetId `json:"datasetId,optional"`
}

// swagger:model CollectionDetailReq
type CollectionDetailReq struct {
	ID *string `json:"id"`
}

// swagger:model CollectionInfoResp
type CollectionInfoResp struct {
	BaseDataInfo
	Data CollectionInfo `json:"data"`
}

// swagger:model DataDetailReq
type DataDetailReq struct {
	ID *string `json:"id"`
}

// swagger:model DataDetailResp
type DataDetailResp struct {
	BaseDataInfo
	Data DataInfo `json:"data"`
}

// swagger:model CollectionSimpleInfo
type CollectionSimpleInfo struct {
	ID             *string `json:"id"`
	ParentID       *string `json:"parentId"`
	TmbId          *string `json:"tmbId,optional"`
	Type           *string `json:"type"`
	Name           *string `json:"name"`
	DataAmount     *uint64 `json:"dataAmount,optional"`
	TrainingAmount *uint64 `json:"trainingAmount,optional"`
}

// swagger:model DataInfo
type DataInfo struct {
	ID           *string `json:"id"`
	Q            *string `json:"q"`
	A            *string `json:"a"`
	ChunkIndex   *uint64 `json:"chunkIndex"`
	Indexes      []Index `json:"indexes"`
	DatasetId    *string `json:"datasetId"`
	CollectionId *string `json:"collectionId"`
	SourceName   *string `json:"sourceName"`
	CanWrite     *bool   `json:"canWrite"`
	IsOwner      *bool   `json:"isOwner"`
}

// swagger:model DataSimpleInfo
type DataSimpleInfo struct {
	ID           *string `json:"id"`
	Q            *string `json:"q"`
	A            *string `json:"a"`
	ChunkIndex   *uint64 `json:"chunkIndex"`
	DatasetId    *string `json:"datasetId"`
	CollectionId *string `json:"collectionId"`
}

// Get collection list request params | Collection列表请求参数
// swagger:model CollectionListReq
type CollectionListReq struct {
	// required : true
	// min : 0
	PageNum *int `json:"pageNum" validate:"required,number,gt=0"`
	// required : true
	// max : 100000
	PageSize *int `json:"pageSize" validate:"required,number,lt=100000"`
	// required : true
	DatasetId *string `json:"datasetId" validate:"required"`
}

// Collection list response | Collection List信息返回体
// swagger:model CollectionListResp
type CollectionListResp struct {
	BaseDataInfo
	// Agent information | Agent数据
	Data []CollectionSimpleInfo `json:"data"`
	// required : true
	// min : 0
	PageNum *int `json:"pageNum" validate:"required,number,gt=0"`
	// required : true
	// max : 100000
	PageSize *int `json:"pageSize" validate:"required,number,lt=100000"`
	Total    *int `json:"total"`
}

// Get collection list request params | Collection列表请求参数
// swagger:model DataListReq
type DataListReq struct {
	// required : true
	// min : 0
	PageNum *int `json:"pageNum" validate:"required,number,gt=0"`
	// required : true
	// max : 100000
	PageSize *int `json:"pageSize" validate:"required,number,lt=100000"`
	// required : true
	CollectionId *string `json:"collectionId" validate:"required"`
}

// Data list response | Data List信息返回体
// swagger:model DataListResp
type DataListResp struct {
	BaseDataInfo
	// Agent information | Agent数据
	Data []DataSimpleInfo `json:"data"`
	// required : true
	// min : 0
	PageNum *int `json:"pageNum" validate:"required,number,gt=0"`
	// required : true
	// max : 100000
	PageSize *int `json:"pageSize" validate:"required,number,lt=100000"`
	Total    *int `json:"total"`
}

// Data create request | 信息请求体
// swagger:model CreateDataInfoReq
type CreateDataInfoReq struct {
	// required : true
	CollectionId *string `json:"collectionId" validate:"required"`
	// Q
	// required : true
	Q *string `json:"q" validate:"required"`
	// A
	// required : true
	A *string `json:"a" validate:"required"`
}

//	IndexSingle {
//		Text A *string `json:"text"`
//	}
//
// Data create request | 信息返回体
// swagger:model UpdateDataInfoReq
type UpdateDataInfoReq struct {
	// ID
	// required : true
	DataId *string `json:"dataId" validate:"required"`
	// Q
	// required : true
	Q *string `json:"q" validate:"required"`
	// A
	// required : true
	A *string `json:"a" validate:"required"`
}

// swagger:model DeleteDataReq
type DeleteDataReq struct {
	// required : true
	ID *string `json:"id" validate:"required"`
}

type LoginQRStatus struct {
	// 登陆二维码
	QRCode string `json:"qRCode,optional"`
	// 登陆二维码状态
	Status string `json:"status,optional"`
	// 登陆二维码状态描述
	StatusDesc string `json:"statusDesc,optional"`
}

// 刷新登陆二维码请求参数
// swagger:model RefreshLoginQRReq
type RefreshLoginQRReq struct {
	// 服务器id
	ServerId *uint64 `json:"serverId,optional"`
	// 端口号
	Port *string `json:"port,optional"`
	// 回调地址
	Callback *string `json:"callback,optional"`
}

// 刷新登陆二维码返回参数
// swagger:model RefreshLoginQRResp
type RefreshLoginQRResp struct {
	BaseDataInfo
	// 二维码Base64
	Data LoginQRStatus `json:"data,optional"`
}

// 发送微信文本消息请求参数
// swagger:model SendTextMsgReq
type SendTextMsgReq struct {
	// 属主微信id
	WxWxid *string `json:"senderWxId"`
	// 微信id 公众号微信ID
	Wxid *string `json:"receiverWxId"`
	// 微信文本消息内容
	Msg *string `json:"msg"`
}

// 发送微信图片消息请求参数
// swagger:model SendPicMsgReq
type SendPicMsgReq struct {
	// 属主微信id
	WxWxid *string `json:"wxWxid"`
	// 微信id 公众号微信ID
	Wxid *string `json:"wxid"`
	// 微信图片路径(本地或网络,本地需要上传操作,如:C:\\x.jpg)
	Picpath *string `json:"picpath"`
	// 微信图片自定义名称(此属性只有网络图片有)
	Diyfilename *string `json:"diyfilename,optional"`
}

// 发送微信图片(本地)请求参数
// swagger:model SendPicMsgLocalReq
type SendPicMsgLocalReq struct {
	// 属主微信id
	WxWxid *string `json:"wxWxid"`
	// 微信id 公众号微信ID
	Wxid *string `json:"wxid"`
	// 微信图片路径(本地或网络,本地需要上传操作,如:C:\\x.jpg)
	Picpath *string `json:"picpath"`
}

// The response data of contact list | Contact列表数据
// swagger:model ContactListResp
type ContactListResp struct {
	BaseDataInfo
	// Contact list data | Contact列表数据
	Data ContactListInfo `json:"data"`
}

// Contact list data | Contact列表数据
// swagger:model ContactListInfo
type ContactListInfo struct {
	BaseListInfo
	// The API list data | Contact列表数据
	Data []ContactInfo `json:"data"`
}

// Get contact list request params | Contact列表请求参数
// swagger:model ContactListReq
type ContactListReq struct {
	PageInfo
	// Label ID list | 标签ID列表
	LabelIDs []uint64 `json:"labelIDs,optional"`
	// 属主微信id
	WxWxid *string `json:"wxWxid,optional"`
	// 微信id 公众号微信ID
	Wxid *string `json:"wxid,optional"`
	// 微信账号
	Account *string `json:"account,optional"`
	// 联系人类型:1好友,2群组,3公众号,4企业微信联系人
	Type *int `json:"type,optional"`
}

// Contact information response | Contact信息返回体
// swagger:model ContactInfoResp
type ContactInfoResp struct {
	BaseDataInfo
	// Contact information | Contact数据
	Data ContactInfo `json:"data"`
}

// swagger:model AddNewFriendReq
type AddNewFriendReq struct {
	OwnerWxid string `json:"ownerWxid"`
	Wxid      string `json:"wxid"`
	Gid       string `json:"gid"`
	Desc      string `json:"desc"`
	AddType   string `json:"addType"`
}

// ContactLabelList | Contact标签列表
type ContactLabelList struct {
	// label
	Label *string `json:"label,optional"`
	// value
	Value *uint64 `json:"value,optional"`
}

// The response data of contact information | Contact信息
// swagger:model ContactInfo
type ContactInfo struct {
	BaseIDInfo
	// Status 1: normal 2: ban | 状态 1 正常 2 禁用
	Status *uint8 `json:"status,optional"`
	// 属主微信id
	WxWxid *string `json:"wxWxid,optional"`
	// 联系人类型:1好友,2群组,3公众号,4企业微信联系人
	Type *int `json:"type,optional"`
	// 微信id 公众号微信ID
	Wxid *string `json:"wxid,optional"`
	// 微信账号
	Account *string `json:"account,optional"`
	// 微信昵称 群备注名称
	Nickname *string `json:"nickname,optional"`
	// 备注名
	Markname *string `json:"markname,optional"`
	// 头像
	Headimg *string `json:"headimg,optional"`
	// 性别 0未知 1男 2女
	Sex *int `json:"sex,optional"`
	// 星标 65/67=星标 1/3=未星标
	Starrole *string `json:"starrole,optional"`
	// 不让他看我的朋友圈 0可以看 1不让看
	Dontseeit *int `json:"dontseeit,optional"`
	// 不看他的朋友圈 0可以看 1不看 1=开启了不看他 128/129=仅聊天
	Dontseeme *int `json:"dontseeme,optional"`
	// 所属标签id清单,多开会用逗号隔开
	Lag *string `json:"lag,optional"`
	// 群组id
	Gid *string `json:"gid,optional"`
	// 群组名称
	Gname *string `json:"gname,optional"`
	// v3数据
	V3 *string `json:"v3,optional"`
	// Label Relationships | 标签关系
	LabelRelationships []ContactLabelList `json:"labelRelationships,optional"`
	// 组织ID
	OrganizationId *uint64 `json:"organizationId,optional"`
}

// The response data of label information | Label信息
// swagger:model LabelInfo
type LabelInfo struct {
	BaseIDInfo
	// Status 1: normal 2: ban | 状态 1 正常 2 禁用
	Status *uint8 `json:"status,optional"`
	// 标签类型:1好友,2群组,3公众号,4企业微信联系人
	Type *int `json:"type,optional"`
	// 标签名称
	Name *string `json:"name,optional"`
	// 标签来源:1后台创建 2个微同步
	From *int `json:"from,optional"`
	// 标签模式:1动态 2静态
	Mode *int `json:"mode,optional"`
	// 标签的触达条件
	Conditions *string `json:"conditions,optional"`
	// 组织ID
	OrganizationId *uint64 `json:"organizationId,optional"`
	// Label Relationships | 标签关系
	LabelRelationships []LabelRelationshipInfo `json:"labelRelationships,optional"`
}

// The response data of label relationship information | LabelRelationship信息
// swagger:model LabelRelationshipInfo
type LabelRelationshipInfo struct {
	BaseIDInfo
	// Status 1: normal 2: ban | 状态 1 正常 2 禁用
	Status *uint8 `json:"status,optional"`
	// 标签 ID
	LabelId *uint64 `json:"labelId,optional"`
	// 联系人 ID
	ContactId *uint64 `json:"contactId,optional"`
	// Contact information | 联系人信息
	Contact ContactInfo `json:"contact,optional"`
	// Label information | 标签信息
	Label LabelInfo `json:"label,optional"`
	// 组织ID
	OrganizationId *uint64 `json:"organizationId,optional"`
}

// The response data of label relationship information | LabelRelationship信息
// swagger:model LabelRelationshipsInfo
type LabelRelationshipsInfo struct {
	BaseIDInfo
	// 更新类型:为空或“all”时表示全量更新,为 “add” 时表示仅追加
	UpdateType *string `json:"updateType,optional"`
	// 标签 ID
	LabelIds []uint64 `json:"labelIds,optional"`
	// 联系人 ID
	ContactId *uint64 `json:"contactId,optional"`
}

// swagger:model BatchLabelRelationshipsInfo
type BatchLabelRelationshipsInfo struct {
	// 更新类型:为1 时表示增加标签,为 -1 时表示移除标签
	UpdateType int `json:"updateType,optional"`
	// 标签 ID
	LabelIds []uint64 `json:"labelIds,optional"`
	// 联系人 ID
	ContactIds []uint64 `json:"contactIds,optional"`
}

// The response data of label relationship list | LabelRelationship列表数据
// swagger:model LabelRelationshipListResp
type LabelRelationshipListResp struct {
	BaseDataInfo
	// LabelRelationship list data | LabelRelationship列表数据
	Data LabelRelationshipListInfo `json:"data"`
}

// LabelRelationship list data | LabelRelationship列表数据
// swagger:model LabelRelationshipListInfo
type LabelRelationshipListInfo struct {
	BaseListInfo
	// The API list data | LabelRelationship列表数据
	Data []LabelRelationshipInfo `json:"data"`
}

// Get label relationship list request params | LabelRelationship列表请求参数
// swagger:model LabelRelationshipListReq
type LabelRelationshipListReq struct {
	PageInfo
}

// LabelRelationship information response | LabelRelationship信息返回体
// swagger:model LabelRelationshipInfoResp
type LabelRelationshipInfoResp struct {
	BaseDataInfo
	// LabelRelationship information | LabelRelationship数据
	Data LabelRelationshipInfo `json:"data"`
}

// The response data of message information | Message信息
// swagger:model MessageInfo
type MessageInfo struct {
	BaseIDInfo
	// 属主微信id
	WxWxid *string `json:"wxWxid"`
	// 微信id 公众号微信ID
	Wxid *string `json:"wxid"`
	// 微信消息内容
	Msg *string `json:"msg"`
}

// The response data of message list | Message列表数据
// swagger:model MessageListResp
type MessageListResp struct {
	BaseDataInfo
	// Message list data | Message列表数据
	Data MessageListInfo `json:"data"`
}

// Message list data | Message列表数据
// swagger:model MessageListInfo
type MessageListInfo struct {
	BaseListInfo
	// The API list data | Message列表数据
	Data []MessageInfo `json:"data"`
}

// Get message list request params | Message列表请求参数
// swagger:model MessageListReq
type MessageListReq struct {
	PageInfo
	// 属主微信id
	WxWxid *string `json:"wxWxid,optional"`
	// 微信id 公众号微信ID
	Wxid *string `json:"wxid,optional"`
}

// Message information response | Message信息返回体
// swagger:model MessageInfoResp
type MessageInfoResp struct {
	BaseDataInfo
	// Message information | Message数据
	Data MessageInfo `json:"data"`
}

// The response data of label list | Label列表数据
// swagger:model LabelSelectListResp
type LabelSelectListResp struct {
	BaseDataInfo
	// Label list data | Label列表数据
	Data []LabelSelectListInfo `json:"data"`
}

// The response data of label list | Label列表数据
// swagger:model LabelListResp
type LabelListResp struct {
	BaseDataInfo
	// Label list data | Label列表数据
	Data LabelListInfo `json:"data"`
}

// Label list data | Label列表数据
// swagger:model LabelListInfo
type LabelListInfo struct {
	BaseListInfo
	// The API list data | Label列表数据
	Data []LabelInfo `json:"data"`
}

// Get label list request params | Label列表请求参数
// swagger:model LabelListReq
type LabelListReq struct {
	PageInfo
	// Label ID list | Label ID列表
	LabelIDs []uint64 `json:"labelIDs,optional"`
	// 标签类型:1好友,2群组,3公众号,4企业微信联系人
	Type *int `json:"type,optional"`
	// 标签名称
	Name *string `json:"name,optional"`
	// 标签来源:1后台创建 2个微同步
	From *int `json:"from,optional"`
	// 标签模式:1动态 2静态
	Mode *int `json:"mode,optional"`
}

// Label information response | Label信息返回体
// swagger:model LabelInfoResp
type LabelInfoResp struct {
	BaseDataInfo
	// Label information | Label数据
	Data LabelInfo `json:"data"`
}

// swagger:model LabelSelectListInfo
type LabelSelectListInfo struct {
	// label
	Label *string `json:"label,optional"`
	// value
	Value *uint64 `json:"value,optional"`
}

// The response data of sop task list | SopTask列表数据
// swagger:model SopTaskListResp
type SopTaskListResp struct {
	BaseDataInfo
	// SopTask list data | SopTask列表数据
	Data SopTaskListInfo `json:"data"`
}

// The response data of sop task record list | SopTask列表数据
// swagger:model SopTaskRecordListResp
type SopTaskRecordListResp struct {
	BaseDataInfo
	// SopTask list data | SopTask列表数据
	Data []SopTaskRecordInfo `json:"data"`
}

// SopTask list data | SopTask列表数据
// swagger:model SopTaskRecordInfo
type SopTaskRecordInfo struct {
	// NodeId 节点ID
	SourceType *int `json:"sourceType,optional"`
	// NodeId 节点ID
	SourceId *uint64 `json:"sourceId,optional"`
	// 节点名称
	Name *string `json:"name,optional"`
	// 消息总数
	TotalCount *int64 `json:"totalCount,optional"`
	// 成功数
	SuccessCount *int64 `json:"successCount,optional"`
	// 失败数
	FailureCount *int64 `json:"failureCount,optional"`
	// 成功率
	SuccessRate *int64 `json:"successRate,optional"`
}

// SopTask list data | SopTask列表数据
// swagger:model SopTaskListInfo
type SopTaskListInfo struct {
	BaseListInfo
	// The API list data | SopTask列表数据
	Data []SopTaskInfo `json:"data"`
}

// Get sop task list request params | SopTask列表请求参数
// swagger:model SopTaskListReq
type SopTaskListReq struct {
	PageInfo
	// SOP 任务名称
	Name *string `json:"name,optional"`
	// 创建者 id
	CreatorId *string `json:"creatorId,optional"`
}

// SopTask information response | SopTask信息返回体
// swagger:model SopTaskInfoResp
type SopTaskInfoResp struct {
	BaseDataInfo
	// SopTask information | SopTask数据
	Data SopTaskInfo `json:"data"`
}

// SopTask create response | SopTask创建回体
// swagger:model SopTaskCreateResp
type SopTaskCreateResp struct {
	BaseDataInfo
	// SopTask id | SopTask id
	Data uint64 `json:"data"`
}

// The response data of sop stage information | SopStage信息
// swagger:model SopStageInfo
type SopStageInfo struct {
	BaseIDInfo
	// Status 1: normal 2: ban | 状态 1 正常 2 禁用
	Status *uint8 `json:"status,optional"`
	// SOP 任务 ID
	TaskId *uint64 `json:"taskId,optional"`
	// 阶段名称
	Name *string `json:"name,optional"`
	// 客群筛选条件类型  1 按标签筛选 2 按客户基本信息筛选
	ConditionType *int `json:"conditionType,optional"`
	// 筛选条件关系  1 满足所有条件(and) 2 满足任意条件(or)
	ConditionOperator *int `json:"conditionOperator,optional"`
	// 筛选条件列表
	ConditionList []Condition `json:"conditionList,optional"`
	// 命中后发送的消息内容
	ActionMessage []Action `json:"actionMessage,optional"`
	// 命中后需要打的标签
	ActionLabel []uint64 `json:"actionLabel,optional"`
	// 阶段顺序
	IndexSort *int `json:"indexSort,optional"`
	// sop 任务信息
	TaskInfo *SopTaskInfo `json:"taskInfo,optional"`
	// node 信息
	NodeList []SopNodeInfo `json:"nodeList,optional"`
}

// The response data of sop task information | SopTask信息
// swagger:model SopTaskInfo
type SopTaskInfo struct {
	BaseIDInfo
	// Status 1: normal 2: ban | 状态 1 正常 2 禁用
	Status *uint8 `json:"status,optional"`
	// SOP 任务名称
	Name *string `json:"name,optional"`
	// 机器人微信 id 列表
	BotWxidList []string `json:"botWxidList,optional"`
	// 标签类型:1好友,2群组,3企业微信联系人
	Type *int `json:"type,optional"`
	// 任务计划开始时间
	PlanStartTime *int64 `json:"planStartTime,optional"`
	// 任务计划结束时间
	PlanEndTime *int64 `json:"planEndTime,optional"`
	// 创建者 id
	CreatorId *string `json:"creatorId,optional"`
	// 阶段信息
	StageList []SopStageInfo `json:"stageList,optional"`
	// 组织ID
	OrganizationId *uint64 `json:"organizationId,optional"`
}

// The response data of sop node information | SopNode信息
// swagger:model SopNodeInfo
type SopNodeInfo struct {
	BaseIDInfo
	// Status 1: normal 2: ban | 状态 1 正常 2 禁用
	Status *uint8 `json:"status,optional"`
	// 阶段 ID
	StageId *uint64 `json:"stageId,optional"`
	// 父节点 ID
	ParentId *uint64 `json:"parentId,optional"`
	// 节点名称
	Name *string `json:"name,optional"`
	// 触发条件类型 1 客户回复后触发 2 超时后触发
	ConditionType *int `json:"conditionType,optional"`
	// 触发语义列表 当为空时则代表用户回复任意内容后触发
	ConditionList []string `json:"conditionList,optional"`
	// 超时触发时间(分钟)
	NoReplyCondition *uint64 `json:"noReplyCondition,optional"`
	// 命中后发送的消息内容
	ActionMessage []Action `json:"actionMessage,optional"`
	// 命中后需要打的标签
	ActionLabel []uint64 `json:"actionLabel,optional"`
	// 阶段信息
	StageInfo *SopStageInfo `json:"stageInfo,optional"`
}

// The response data of sop stage list | SopStage列表数据
// swagger:model SopStageListResp
type SopStageListResp struct {
	BaseDataInfo
	// SopStage list data | SopStage列表数据
	Data SopStageListInfo `json:"data"`
}

// SopStage list data | SopStage列表数据
// swagger:model SopStageListInfo
type SopStageListInfo struct {
	BaseListInfo
	// The API list data | SopStage列表数据
	Data []SopStageInfo `json:"data"`
}

// Get sop stage list request params | SopStage列表请求参数
// swagger:model SopStageListReq
type SopStageListReq struct {
	TaskId *uint64 `json:"taskId"`
}

// SopStage information response | SopStage信息返回体
// swagger:model SopStageInfoResp
type SopStageInfoResp struct {
	BaseDataInfo
	// SopStage information | SopStage数据
	Data SopStageInfo `json:"data"`
}

// SopStage create response | SopStage创建回体
// swagger:model SopStageCreateResp
type SopStageCreateResp struct {
	BaseDataInfo
	// SopStage id | SopStage id
	Data uint64 `json:"data"`
}

// Move sop stage request params | 移动阶段请求参数
// swagger:model SopStageMoveReq
type SopStageMoveReq struct {
	BaseIDInfo
	// 阶段名称
	Offset *int `json:"offset,optional"`
}

// The response data of sop node list | SopNode列表数据
// swagger:model SopNodeListResp
type SopNodeListResp struct {
	BaseDataInfo
	// SopNode list data | SopNode列表数据
	Data []*SopChildNodeInfo `json:"data"`
}

// SopNode list data | SopNode列表数据
// swagger:model SopChildNodeInfo
type SopChildNodeInfo struct {
	NodeName  *string           `json:"nodeName,optional"`
	ChildNode *SopChildNodeInfo `json:"childNode,optional"`
	// The API list data | SopNode列表数据
	ConditionNodes []*SopChildNodeInfo `json:"conditionNodes"`
	SopNodeInfo
}

// SopNode list data | SopNode列表数据
// swagger:model SopNodeListInfo
type SopNodeListInfo struct {
	BaseListInfo
	// The API list data | SopNode列表数据
	Data []SopNodeInfo `json:"data"`
}

// Get sop node list request params | SopNode列表请求参数
// swagger:model SopNodeListReq
type SopNodeListReq struct {
	StageId *uint64 `json:"stageId"`
}

// SopNode information response | SopNode信息返回体
// swagger:model SopNodeInfoResp
type SopNodeInfoResp struct {
	BaseDataInfo
	// SopNode information | SopNode数据
	Data SopNodeInfo `json:"data"`
}

// SopNode create response | SopNode创建返回体
// swagger:model SopNodeCreateResp
type SopNodeCreateResp struct {
	BaseDataInfo
	// SopNode id | SopNode id
	Data uint64 `json:"data"`
}

// The response data of message records information | MessageRecords信息
// swagger:model MessageRecordsInfo
type MessageRecordsInfo struct {
	BaseIDInfo
	// Status 1: normal 2: ban | 状态 1 正常 2 禁用
	Status *uint8 `json:"status,optional"`
	// 机器人微信 id
	BotWxid *string `json:"botWxid,optional"`
	// 联系人 id
	ContactId *uint64 `json:"contactId,optional"`
	// 类型:1好友,2群组,3企业微信联系人
	ContactType *int `json:"contactType,optional"`
	// 接收方微信 id
	ContactWxid *string `json:"contactWxid,optional"`
	// 内容类型 1 文本 2 文件
	ContentType *int `json:"contentType,optional"`
	// 发送内容
	Content *string `json:"content,optional"`
	// 元数据
	Meta *Meta `json:"meta,optional"`
	// 异常原因
	ErrorDetail *string `json:"errorDetail,optional"`
	// 发送时间
	SendTime *int64 `json:"sendTime,optional"`
	// 源类型 1 点发 2 群发 3 SOP
	SourceType *int `json:"sourceType,optional"`
	// 源 ID
	SourceId *uint64 `json:"sourceId,optional"`
	// 次源 ID
	SubSourceId *uint64 `json:"subSourceId,optional"`
	// 组织ID
	OrganizationId *uint64 `json:"organizationId,optional"`
}

// The response data of message records list | MessageRecords列表数据
// swagger:model MessageRecordsListResp
type MessageRecordsListResp struct {
	BaseDataInfo
	// MessageRecords list data | MessageRecords列表数据
	Data MessageRecordsListInfo `json:"data"`
}

// MessageRecords list data | MessageRecords列表数据
// swagger:model MessageRecordsListInfo
type MessageRecordsListInfo struct {
	BaseListInfo
	// The API list data | MessageRecords列表数据
	Data []MessageRecordsInfo `json:"data"`
}

// Get message records list request params | MessageRecords列表请求参数
// swagger:model MessageRecordsListReq
type MessageRecordsListReq struct {
	PageInfo
	// 群发消息ID
	BatchMsgId *uint64 `json:"batchMsgId,optional"`
	// 机器人微信 id
	BotWxid *string `json:"botWxid,optional"`
	// 接收方微信 id
	ContactWxid *string `json:"contactWxid,optional"`
	// 发送内容
	Status *uint8 `json:"status,optional"`
}

// MessageRecords information response | MessageRecords信息返回体
// swagger:model MessageRecordsInfoResp
type MessageRecordsInfoResp struct {
	BaseDataInfo
	// MessageRecords information | MessageRecords数据
	Data MessageRecordsInfo `json:"data"`
}

// The response data of chatroom member information | ChatroomMember信息
// swagger:model ChatroomMemberInfo
type ChatroomMemberInfo struct {
	// 名称
	Wxid *string `json:"wxid,optional"`
	// 群组
	ChatRoom *string `json:"chatRoom,optional"`
	// 属主Wxid
	OwnerWxid *string `json:"ownerWxid,optional"`
	// 账号
	Account *string `json:"account,optional"`
}

// The response data of chatroom member list | ChatroomMember列表数据
// swagger:model ChatroomMemberListResp
type ChatroomMemberListResp struct {
	BaseDataInfo
	// chatroom member list data | chatroom member 列表数据
	Data ChatroomMemberListInfo `json:"data"`
}

// chatroom member list data | chatroom member列表数据
// swagger:model ChatroomMemberListInfo
type ChatroomMemberListInfo struct {
	BaseListInfo
	// The API list data | chatroom member列表数据
	Data []ChatroomMemberInfo `json:"data"`
}

// Get chatroom member list request params | ChatroomMember列表请求参数
// swagger:model ChatroomMemberListReq
type ChatroomMemberListReq struct {
	PageInfo
	// 属主Wxid
	OwnerWxid *string `json:"ownerWxid,optional"`
	// 群组
	ChatRoom *string `json:"chatRoom,optional"`
}

// chatroom member information response | ChatroomMember信息返回体
// swagger:model ChatroomMemberInfoResp
type ChatroomMemberInfoResp struct {
	BaseDataInfo
	// Server information | Server数据
	Data ChatroomMemberInfo `json:"data"`
}

// The response data of user information | 用户信息
// swagger:model UserInfo
type UserInfo struct {
	BaseUUIDInfo
	// Status | 状态
	// max : 20
	Status *uint32 `json:"status,optional" validate:"omitempty,lt=20"`
	// Username | 用户名
	// max length : 50
	Username *string `json:"username,optional" validate:"omitempty,max=50"`
	// Nickname | 昵称
	// max length : 40
	Nickname *string `json:"nickname,optional" validate:"omitempty,max=40"`
	// Password | 密码
	// min length : 6
	Password *string `json:"password,optional" validate:"omitempty,min=6"`
	// Description | 描述
	// max length : 100
	Description *string `json:"description,optional" validate:"omitempty,max=100"`
	// HomePath | 首页
	// max length : 70
	HomePath *string `json:"homePath,optional" validate:"omitempty,max=70"`
	// RoleId | 角色ID
	RoleIds []uint64 `json:"roleIds,optional"`
	// Mobile | 手机号
	// max length : 18
	Mobile *string `json:"mobile,optional" validate:"omitempty,max=18"`
	// Email | 邮箱
	// max length : 80
	Email *string `json:"email,optional" validate:"omitempty,max=80"`
	// Avatar | 头像地址
	// max length : 300
	Avatar *string `json:"avatar,optional" validate:"omitempty,max=300"`
	// Department ID | 部门ID
	DepartmentId *uint64 `json:"departmentId,optional,omitempty"`
	// Position ID | 职位ID
	PositionIds []uint64 `json:"positionId,optional,omitempty"`
}

// User information response | 用户信息返回体
// swagger:model UserInfoResp
type UserInfoResp struct {
	BaseDataInfo
	// User information | User数据
	Data UserInfo `json:"data"`
}

// The response data of user's basic information | 用户基本信息返回数据
// swagger:model UserBaseIDInfoResp
type UserBaseIDInfoResp struct {
	BaseDataInfo
	// The  data of user's basic information | 用户基本信息
	Data UserBaseIDInfo `json:"data"`
}

// The  data of user's basic information | 用户基本信息
// swagger:model UserBaseIDInfo
type UserBaseIDInfo struct {
	// User's UUID | 用户的UUID
	UUID *string `json:"userId"`
	// User's name | 用户名
	Username *string `json:"username"`
	// User's nickname | 用户的昵称
	Nickname *string `json:"nickname"`
	// The user's avatar path | 用户的头像路径
	Avatar *string `json:"avatar"`
	// The home page that the user enters after logging in | 用户登陆后进入的首页
	HomePath *string `json:"homePath"`
	// The description of user | 用户的描述信息
	Description *string `json:"desc"`
	// User's Role Name | 用户的角色名称
	RoleName []string `json:"roleName"`
	// Department Name | 部门名称
	DepartmentName string `json:"departmentName,optional"`
	// Department Name | 部门备注
	DepartmentRemark string `json:"departmentRemark,optional"`
}

// swagger:model WxidReq
type WxidReq struct {
	Wxid string `json:"wxid"`
}

// The data of batch msg information | BatchMsg信息
// swagger:model BatchMsgInfo
type BatchMsgInfo struct {
	BaseIDInfo
	// 状态 0 未开始 1 开始发送 2 发送完成 3 发送中止
	Status *uint8 `json:"status,optional"`
	// 批次号
	BatchNo *string `json:"batchNo,optional"`
	// 任务名称
	TaskName *string `json:"taskName,optional"`
	// 发送方微信ID
	Fromwxid *string `json:"fromwxid,optional"`
	// 内容
	Msg *string `json:"msg,optional"`
	// 发送规则 all 全部 tag1,tag2 按tag发送
	Tag *string `json:"tag,optional"`
	// 总数
	Total *int32 `json:"total,optional"`
	// 成功数量
	Success *int32 `json:"success,optional"`
	// 失败数量
	Fail *int32 `json:"fail,optional"`
	// 开始时间
	StartTime    *int64  `json:"startTime,optional"`
	StartTimeStr *string `json:"startTimeStr,optional"`
	// 结束时间
	StopTime *int64 `json:"stopTime,optional"`
	// 标签列表
	Labels []string `json:"labels,optional"`
	// 标签列表
	Type *int32 `json:"type,optional"`
}

// The response data of batch msg list | BatchMsg列表数据
// swagger:model BatchMsgListResp
type BatchMsgListResp struct {
	BaseDataInfo
	// BatchMsg list data | BatchMsg列表数据
	Data BatchMsgListInfo `json:"data"`
}

// BatchMsg list data | BatchMsg列表数据
// swagger:model BatchMsgListInfo
type BatchMsgListInfo struct {
	BaseListInfo
	// The API list data | BatchMsg列表数据
	Data []BatchMsgInfo `json:"data"`
}

// Get batch msg list request params | BatchMsg列表请求参数
// swagger:model BatchMsgListReq
type BatchMsgListReq struct {
	PageInfo
	// 批次号
	BatchNo *string `json:"batchNo,optional"`
	// 发送方微信ID
	Fromwxid *string `json:"fromwxid,optional"`
	// 内容
	Msg *string `json:"msg,optional"`
	// 任务名称
	TaskName *string `json:"taskName,optional"`
	// 群发类型
	Type *int32 `json:"type"`
}

// BatchMsg information response | BatchMsg信息返回体
// swagger:model BatchMsgInfoResp
type BatchMsgInfoResp struct {
	BaseDataInfo
	// BatchMsg information | BatchMsg数据
	Data BatchMsgInfo `json:"data"`
}

// The data of msg information | Msg信息
// swagger:model MsgInfo
type MsgInfo struct {
	BaseIDInfo
	// Status 1: normal 2: ban | 状态 1 正常 2 禁用
	Status *uint8 `json:"status,optional"`
	// 发送方微信ID
	Fromwxid *string `json:"fromwxid,optional"`
	// 接收人微信ID/群ID
	Toid *string `json:"toid,optional"`
	// 消息类型
	Msgtype *int32 `json:"msgtype,optional"`
	// 消息
	Msg *string `json:"msg,optional"`
	// 批次号
	BatchNo *string `json:"batchNo,optional"`
}

// The response data of msg list | Msg列表数据
// swagger:model MsgListResp
type MsgListResp struct {
	BaseDataInfo
	// Msg list data | Msg列表数据
	Data MsgListInfo `json:"data"`
}

// Msg list data | Msg列表数据
// swagger:model MsgListInfo
type MsgListInfo struct {
	BaseListInfo
	// The API list data | Msg列表数据
	Data []MsgInfo `json:"data"`
}

// Get msg list request params | Msg列表请求参数
// swagger:model MsgListReq
type MsgListReq struct {
	PageInfo
	// 状态
	Status *uint8 `json:"status,optional"`
	// 接收人微信ID/群ID
	Toid *string `json:"toid,optional"`
	// 群发消息ID
	BatchId *uint64 `json:"batchId"`
}

// Msg information response | Msg信息返回体
// swagger:model MsgInfoResp
type MsgInfoResp struct {
	BaseDataInfo
	// Msg information | Msg数据
	Data MsgInfo `json:"data"`
}

// The data of employee information | Employee信息
// swagger:model EmployeeInfo
type EmployeeInfo struct {
	BaseIDInfo
	// title | 标题
	Title *string `json:"title,optional"`
	// avatar | 头像
	Avatar *string `json:"avatar,optional"`
	// tags | 个人标签
	Tags *string `json:"tags,optional"`
	// hire_count | 被雇佣次数
	HireCount *int `json:"hireCount,optional"`
	// service_count | 已服务次数
	ServiceCount *int `json:"serviceCount,optional"`
	// achievement_count | 业绩单数
	AchievementCount *int `json:"achievementCount,optional"`
	// category_id | 分类ID
	CategoryId *uint64 `json:"categoryId,optional"`
	// intro | 个人介绍
	Intro *string `json:"intro,optional"`
	// estimate | 自我评价
	Estimate *string `json:"estimate,optional"`
	// skill | 技能卡
	Skill *string `json:"skill,optional"`
	// ability_type | 能力类型
	AbilityType *string `json:"abilityType,optional"`
	// scene | 使用场景
	Scene     *string              `json:"scene,optional"`
	SceneList []EmployeeConfigInfo `json:"sceneList,optional"`
	// switch_in | 支持介入
	SwitchIn     *string              `json:"switchIn,optional"`
	SwitchInList []EmployeeConfigInfo `json:"switchInList,optional"`
	Tutorial     []TutorialInfo       `json:"tutorial,optional"`
	// video_url | 视频地址
	VideoUrl *string `json:"videoUrl,optional"`
	// work_experience | 工作经验
	WorkExperience []WorkExperienceInfo `json:"workExperience,optional"`
}

// The response data of employee list | Employee列表数据
// swagger:model EmployeeListResp
type EmployeeListResp struct {
	BaseDataInfo
	// Employee list data | Employee列表数据
	Data EmployeeListInfo `json:"data"`
}

// Employee list data | Employee列表数据
// swagger:model EmployeeListInfo
type EmployeeListInfo struct {
	BaseListInfo
	// The API list data | Employee列表数据
	Data []EmployeeInfo `json:"data"`
}

// Get employee list request params | Employee列表请求参数
// swagger:model EmployeeListReq
type EmployeeListReq struct {
	PageInfo
	// title | 标题
	Title *string `json:"title,optional"`
	// tags | 个人标签
	Tags *string `json:"tags,optional"`
	// category_id | 分类ID
	CategoryId *uint64 `json:"categoryId,optional"`
}

// Employee information response | Employee信息返回体
// swagger:model EmployeeInfoResp
type EmployeeInfoResp struct {
	BaseDataInfo
	// Employee information | Employee数据
	Data EmployeeInfo `json:"data"`
}

// The data of work experience information | WorkExperience信息
// swagger:model WorkExperienceInfo
type WorkExperienceInfo struct {
	BaseIDInfo
	// employee_id | 员工ID
	EmployeeId *uint64 `json:"employeeId,optional"`
	// start_date | 开始时间
	StartDate    *int64  `json:"startDate,optional"`
	StartDateStr *string `json:"startDateStr,optional"`
	// end_date | 结束时间
	EndDate    *int64  `json:"endDate,optional"`
	EndDateStr *string `json:"endDateStr,optional"`
	// company | 公司名
	Company *string `json:"company,optional"`
	// experience | 工作内容
	Experience *string `json:"experience,optional"`
}

// The response data of work experience list | WorkExperience列表数据
// swagger:model WorkExperienceListResp
type WorkExperienceListResp struct {
	BaseDataInfo
	// WorkExperience list data | WorkExperience列表数据
	Data WorkExperienceListInfo `json:"data"`
}

// WorkExperience list data | WorkExperience列表数据
// swagger:model WorkExperienceListInfo
type WorkExperienceListInfo struct {
	BaseListInfo
	// The API list data | WorkExperience列表数据
	Data []WorkExperienceInfo `json:"data"`
}

// Get work experience list request params | WorkExperience列表请求参数
// swagger:model WorkExperienceListReq
type WorkExperienceListReq struct {
	PageInfo
	// company | 公司名
	Company *string `json:"company,optional"`
}

// WorkExperience information response | WorkExperience信息返回体
// swagger:model WorkExperienceInfoResp
type WorkExperienceInfoResp struct {
	BaseDataInfo
	// WorkExperience information | WorkExperience数据
	Data WorkExperienceInfo `json:"data"`
}

// The data of tutorial information | Tutorial信息
// swagger:model TutorialInfo
type TutorialInfo struct {
	BaseIDInfo
	// employee_id | 员工ID
	EmployeeId *uint64 `json:"employeeId,optional"`
	// index | 序号
	Index *int `json:"index,optional"`
	// title | 标题
	Title *string `json:"title,optional"`
	// content | 内容
	Content *string `json:"content,optional"`
}

// The response data of tutorial list | Tutorial列表数据
// swagger:model TutorialListResp
type TutorialListResp struct {
	BaseDataInfo
	// Tutorial list data | Tutorial列表数据
	Data TutorialListInfo `json:"data"`
}

// Tutorial list data | Tutorial列表数据
// swagger:model TutorialListInfo
type TutorialListInfo struct {
	BaseListInfo
	// The API list data | Tutorial列表数据
	Data []TutorialInfo `json:"data"`
}

// Get tutorial list request params | Tutorial列表请求参数
// swagger:model TutorialListReq
type TutorialListReq struct {
	PageInfo
	// title | 标题
	Title *string `json:"title,optional"`
	// content | 内容
	Content *string `json:"content,optional"`
}

// Tutorial information response | Tutorial信息返回体
// swagger:model TutorialInfoResp
type TutorialInfoResp struct {
	BaseDataInfo
	// Tutorial information | Tutorial数据
	Data TutorialInfo `json:"data"`
}

// The data of employee config information | EmployeeConfig信息
// swagger:model EmployeeConfigInfo
type EmployeeConfigInfo struct {
	BaseIDInfo
	// 类型:scene-场景 switch_in-接入方式
	Stype *string `json:"stype,optional"`
	// 标题
	Title *string `json:"title,optional"`
	// 图片地址
	Photo *string `json:"photo,optional"`
}

// EmployeeConfig list data | EmployeeConfig列表数据
// swagger:model EmployeeConfigListInfo
type EmployeeConfigListInfo struct {
	BaseListInfo
	// The API list data | EmployeeConfig列表数据
	Data []EmployeeConfigInfo `json:"data"`
}

// Employee config response | Employee配置信息返回体
// swagger:model EmployeeConfigListReq
type EmployeeConfigListReq struct {
	/// 类型:scene-场景 switch_in-接入方式
	Stype *string `json:"stype,optional"`
}

// EmployeeConfig information response | EmployeeConfig信息返回体
type EmployeeConfig struct {
	Scene    []EmployeeConfigInfo `json:"scene"`
	SwitchIn []EmployeeConfigInfo `json:"switchIn"`
}

// Employee config response | Employee配置信息返回体
// swagger:model EmployeeConfigListResp
type EmployeeConfigListResp struct {
	BaseDataInfo
	// Employee information | Employee数据
	Data EmployeeConfig `json:"data"`
}

// The data of token information | Token信息
// swagger:model TokenInfo
type TokenInfo struct {
	BaseIDInfo
	// 过期时间
	ExpireAt    *int64  `json:"expireAt,optional"`
	ExpireAtStr *string `json:"expireAtStr,optional"`
	// Token
	Token *string `json:"token,optional"`
	// Mac地址
	Mac *string `json:"mac,optional"`
}

// The response data of token list | Token列表数据
// swagger:model TokenListResp
type TokenListResp struct {
	BaseDataInfo
	// Token list data | Token列表数据
	Data TokenListInfo `json:"data"`
}

// Token list data | Token列表数据
// swagger:model TokenListInfo
type TokenListInfo struct {
	BaseListInfo
	// The API list data | Token列表数据
	Data []TokenInfo `json:"data"`
}

// Get token list request params | Token列表请求参数
// swagger:model TokenListReq
type TokenListReq struct {
	PageInfo
	// Token
	Token *string `json:"token,optional"`
	// Mac地址
	Mac *string `json:"mac,optional"`
}

// Token information response | Token信息返回体
// swagger:model TokenInfoResp
type TokenInfoResp struct {
	BaseDataInfo
	// Token information | Token数据
	Data TokenInfo `json:"data"`
}

// swagger:model CheckTokenReq
type CheckTokenReq struct {
	// Token
	Token *string `json:"token"`
	// Mac地址
	Mac *string `json:"mac"`
}

// swagger:model CheckTokenResp
type CheckTokenResp struct {
	// 是否合法
	Valid *bool `json:"valid"`
	// Sign 签名内容
	Sign *string `json:"sign"`
	// Timestamp 时间戳
	Timestamp *int64 `json:"timestamp"`
}

// The data of category information | Category信息
// swagger:model CategoryInfo
type CategoryInfo struct {
	BaseIDInfo
	// name | 角色名称
	Name *string `json:"name,optional"`
	// organization_id | 租户ID
	OrganizationId *uint64 `json:"organizationId,optional"`
}

// The response data of category list | Category列表数据
// swagger:model CategoryListResp
type CategoryListResp struct {
	BaseDataInfo
	// Category list data | Category列表数据
	Data CategoryListInfo `json:"data"`
}

// Category list data | Category列表数据
// swagger:model CategoryListInfo
type CategoryListInfo struct {
	BaseListInfo
	// The API list data | Category列表数据
	Data []CategoryInfo `json:"data"`
}

// Get category list request params | Category列表请求参数
// swagger:model CategoryListReq
type CategoryListReq struct {
	PageInfo
	// name | 角色名称
	Name *string `json:"name,optional"`
}

// Category information response | Category信息返回体
// swagger:model CategoryInfoResp
type CategoryInfoResp struct {
	BaseDataInfo
	// Category information | Category数据
	Data CategoryInfo `json:"data"`
}