package schema import "time" // User User对象 type User struct { RecordID string `json:"record_id"` // 记录id UserName string `json:"user_name"` // 用户名 RealName string `json:"real_name"` // 真是姓名 OrgId string `json:"org_id"` // 组织id OrgName string `json:"org_name"` // 组织名称 Phone string `json:"phone"` // 手机号 Password string `json:"password"` // 密码 Photo string `json:"photo"` // 头像 Status bool `json:"status"` // 状态 启动 禁用 RoleId string `json:"role_id"` // 角色id RoleName string `json:"role_name"` // 角色名称 OrgList Organizations `json:"org_list"` // 可访问组织列表 Menu MenuTrees `json:"menu"` // 可访问的菜单 Datasets UserDatasets `json:"datasets"` // 可访问的知识库 ChartNum int `json:"chart_num"` // 对话轮次/日 CreatorId string `json:"creator_id"` // 创建人id CreatorName string `json:"creator_name"` // 创建人名称 CreatedAt time.Time `json:"created_at"` // 创建时间 Sequence int `json:"sequence"` // 排序 Used int `json:"used"` // 已用的对话轮次 Unused int `json:"unused"` // 剩余对话轮次 } // UserQueryParam 查询条件 type UserQueryParam struct { LikeName string RecordIDs []string UserName string OrgId string RoleCode []string } type Users []*User // UserQueryResult User对象查询结果 type UserQueryResult struct { Data Users PageResult *PaginationResult } // CleanSecure 清理安全数据 func (a *User) CleanSecure() *User { a.Password = "******" return a } // UserOptions User对象查询可选参数项 type UserOptions struct { PageParam *PaginationParam // 分页参数 Tag string } // FillCreator 填充创建者信息 func (a Users) FillCreator(users Users) { for _, v := range a { for _, u := range users { if v.CreatorId == u.RecordID { v.CreatorName = u.RealName continue } } } } // FillRoleName 填充角色名称 func (a Users) FillRoleName(roles Roles) { for _, o := range a { for _, r := range roles { if o.RoleId == r.RecordID { o.RoleName = r.Name continue } } } } // FillOrgName 填充组织名称 func (a Users) FillOrgName(orgs Organizations) { for _, v := range a { for _, o := range orgs { if v.OrgId == o.RecordID { v.OrgName = o.Name continue } } } }