UserCore

package
v5.2.18 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 18, 2024 License: Apache-2.0 Imports: 32 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	//Sort 分类系统
	Sort = ClassSort.Sort{
		SortTableName: "user_core_sort",
	}
	//Tag 标签系统
	Tag = ClassTag.Tag{
		TagTableName: "user_core_tags",
	}

	//OpenSub 是否启动订阅
	OpenSub = false
	//OpenAnalysis 是否启动analysis
	OpenAnalysis = false
)

用户模块

Functions

func CheckGroupIsOrg

func CheckGroupIsOrg(orgID int64, groupIDs []int64) (err error)

CheckGroupIsOrg 检查用户组是否属于商户?

func CheckUserEmailVCode

func CheckUserEmailVCode(args *ArgsCheckUserEmailVCode) (errCode string, err error)

CheckUserEmailVCode 验证用户邮件验证码

func CheckUserExist

func CheckUserExist(args *ArgsCheckUserExist) (err error)

CheckUserExist 检查用户是否存在

func CheckUserHaveEmail

func CheckUserHaveEmail(userInfo *FieldsUserType) bool

CheckUserHaveEmail 检查用户是否具备email

func CheckUserHavePhone

func CheckUserHavePhone(userInfo *FieldsUserType) bool

CheckUserHavePhone 检查用户是否具备手机号

func CheckUserPassword

func CheckUserPassword(args *ArgsCheckUserPassword) (err error)

CheckUserPassword 验证用户名和密码

func CreatePermission

func CreatePermission(args *ArgsCreatePermission) (err error)

CreatePermission 写入新的权限

func DeleteAllPermission

func DeleteAllPermission() (err error)

DeleteAllPermission 清理权限

func DeleteGroup

func DeleteGroup(args *ArgsDeleteGroup) (err error)

DeleteGroup 删除用户组

func DeletePermission

func DeletePermission(args *ArgsDeletePermission) (err error)

DeletePermission 删除权限

func DeleteUserByID

func DeleteUserByID(args *ArgsDeleteUserByID) (err error)

DeleteUserByID 删除用户

func GetAnalysisOrgCount

func GetAnalysisOrgCount(args *ArgsGetAnalysisOrgCount) (count int64, err error)

GetAnalysisOrgCount Deprecated 准备放弃,前端全部迁移到混合统计支持后放弃

func GetFromByUser

func GetFromByUser(data *DataUserDataType) CoreSQLFrom.FieldsFrom

GetFromByUser 组合from来源结构

func GetGroupName

func GetGroupName(id int64) string

func GetGroupPermissionList

func GetGroupPermissionList(groupIDs pq.Int64Array) []string

GetGroupPermissionList 获取指定用户组的所有权限

func GetUserAvatarUrl

func GetUserAvatarUrl(userID int64) (data string)

func GetUserCountByOrgID

func GetUserCountByOrgID(orgID int64) (count int64)

GetUserCountByOrgID 获取组织下总人数

func GetUserCountByOrgIDAndSort added in v5.1.44

func GetUserCountByOrgIDAndSort(orgID int64, sortID int64) (count int64)

GetUserCountByOrgIDAndSort 获取组织下总人数

func GetUserIDsByOrgIDs added in v5.1.45

func GetUserIDsByOrgIDs(orgID int64) (data pq.Int64Array)

GetUserIDsByOrgIDs 获取指定组织下所有用户ID

func GetUserName

func GetUserName(id int64, noPhone bool) (data string)

GetUserName 单独获取一个用户的信息参数

func GetUserNameByID

func GetUserNameByID(id int64) string

func GetUserPhone

func GetUserPhone(id int64) (data string)

获取用户手机号

func GetUsersName

func GetUsersName(args *ArgsGetUsers) (data map[int64]string, err error)

GetUsersName 获取一组用户ID

func Init

func Init()

Init 初始化

func MargeFinal

func MargeFinal(args *ArgsMargeFinal) (errCode string, err error)

MargeFinal 融合用户登录收尾处理模块

func ReSendUserEmail

func ReSendUserEmail(args *ArgsReSendUserEmail) (err error)

ReSendUserEmail 重新发送验证码

func UpdateGroup

func UpdateGroup(args *ArgsUpdateGroup) (err error)

UpdateGroup 修改用户组

func UpdatePermission

func UpdatePermission(args *ArgsUpdatePermission) (err error)

UpdatePermission 修改权限描述信息

func UpdateUserAvatar

func UpdateUserAvatar(args *ArgsUpdateUserAvatar) (err error)

UpdateUserAvatar 修改用户头像

func UpdateUserEmailByID

func UpdateUserEmailByID(args *ArgsUpdateUserEmailByID) (err error)

UpdateUserEmailByID 修改用户邮箱

func UpdateUserGroupByID

func UpdateUserGroupByID(args *ArgsUpdateUserGroupByID) (err error)

func UpdateUserInfoByID

func UpdateUserInfoByID(args *ArgsUpdateUserInfoByID) (err error)

UpdateUserInfoByID 修改用户信息

func UpdateUserInfosByID

func UpdateUserInfosByID(args *ArgsUpdateUserInfosByID) (err error)

UpdateUserInfosByID 修改用户的信息扩展

func UpdateUserLoginByID

func UpdateUserLoginByID(args *ArgsUpdateUserLoginByID) (err error)

UpdateUserLoginByID 修改用户登录项

func UpdateUserParent

func UpdateUserParent(args *ArgsUpdateUserParent) (err error)

UpdateUserParent 修改上级ID

func UpdateUserPasswordByID

func UpdateUserPasswordByID(args *ArgsUpdateUserPasswordByID) (err error)

UpdateUserPasswordByID 修改用户密码

func UpdateUserPhoneByID

func UpdateUserPhoneByID(args *ArgsUpdateUserPhoneByID) (err error)

UpdateUserPhoneByID 修改用户电话

func UpdateUserSort

func UpdateUserSort(args *ArgsUpdateUserSort) (err error)

UpdateUserSort 修改用户分类和标签

func UpdateUserStatus

func UpdateUserStatus(args *ArgsUpdateUserStatus) (err error)

UpdateUserStatus 修改用户信息

func UpdateUserUsernameByID

func UpdateUserUsernameByID(args *ArgsUpdateUserUsernameByID) (err error)

UpdateUserUsernameByID 修改用户用户名

Types

type ArgsCheckUserEmailVCode

type ArgsCheckUserEmailVCode struct {
	//用户ID
	ID int64 `db:"id" json:"id" check:"id"`
	//验证码
	VCode string `db:"vcode" json:"vcode" check:"mark"`
}

ArgsCheckUserEmailVCode 验证用户邮件验证码参数

type ArgsCheckUserExist

type ArgsCheckUserExist struct {
	//用户ID
	ID int64 `db:"id" json:"id" check:"id"`
	//组织ID
	// 可以留空,则表明为平台
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
}

ArgsCheckUserExist 检查用户是否存在参数

type ArgsCheckUserPassword

type ArgsCheckUserPassword struct {
	//组织ID
	// 可以留空,则表明为平台
	OrgID int64 `db:"org_id" json:"orgID"`
	//用户信息
	UserInfo *FieldsUserType
	//要验证的密码
	Password string
}

ArgsCheckUserPassword 验证用户名和密码参数

type ArgsCreateGroup

type ArgsCreateGroup struct {
	//组织ID
	// 可以留空,则表明为平台
	OrgID int64 `db:"org_id" json:"orgID"`
	//名称
	Name string `db:"name"`
	//备注
	Des string `db:"des"`
	//权限
	Permissions pq.StringArray `db:"permissions"`
}

ArgsCreateGroup 创建新的用户组参数

type ArgsCreatePermission

type ArgsCreatePermission struct {
	//标识码
	Mark string `db:"mark"`
	//名称
	Name string `db:"name"`
	//备注
	Des string `db:"des"`
	//组织是否可以授权
	AllowOrg bool `db:"allowOrg" json:"allowOrg"`
}

ArgsCreatePermission 写入新的权限参数

type ArgsCreateUser

type ArgsCreateUser struct {
	//组织ID
	// 可以留空,则表明为平台
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
	//名称
	Name string `json:"name" check:"name"`
	//密码
	Password string `json:"password" check:"password"`
	//电话联系
	NationCode string `json:"nationCode" check:"nationCode" empty:"true"`
	Phone      string `json:"phone" check:"phone" empty:"true"`
	//是否跳过手机号验证
	AllowSkipPhoneVerify bool `json:"allowSkipPhoneVerify" check:"bool"`
	//是否跳过验证验证?
	AllowSkipWaitEmail bool `json:"allowSkipWaitEmail"`
	//邮件
	Email string `json:"email" check:"email" empty:"true"`
	//用户名称
	Username string `json:"username" check:"username" empty:"true"`
	//用户头像
	Avatar int64 `db:"avatar" json:"avatar"`
	//状态
	// 0 -> ban后,用户可以正常登录,但一切内容无法使用
	// 1 -> audit后,用户登录后无法正常使用,但提示不太一样
	// 2 -> public 正常访问
	Status int `json:"status"`
	//上级
	Parents FieldsUserParents `json:"parents"`
	//分组
	Groups FieldsUserGroupsType `json:"groups"`
	//扩展信息
	Infos CoreSQLConfig.FieldsConfigsType `json:"infos"`
	//登陆信息
	Logins FieldsUserLoginsType `json:"logins"`
	//用户分类
	SortID int64 `db:"sort_id" json:"sortID" check:"id" empty:"true"`
	//用户标签
	Tags pq.Int64Array `db:"tags" json:"tags" check:"ids" empty:"true"`
}

ArgsCreateUser 插入新的用户参数

type ArgsDeleteGroup

type ArgsDeleteGroup struct {
	//用户组ID
	ID int64 `db:"id" json:"id"`
	//组织ID
	// 可以留空,则表明为平台
	OrgID int64 `db:"org_id" json:"orgID"`
}

ArgsDeleteGroup 删除用户组参数

type ArgsDeletePermission

type ArgsDeletePermission struct {
	//标识码
	Mark string `db:"mark"`
	//是否跳过验证?
	SkipCheckGroup bool
}

ArgsDeletePermission 删除权限参数

type ArgsDeleteUserByID

type ArgsDeleteUserByID struct {
	//ID
	ID int64 `db:"id"`
	//组织ID
	// 可以留空,则表明为平台
	OrgID int64 `db:"org_id" json:"orgID"`
}

ArgsDeleteUserByID 删除用户参数

type ArgsFilterUserData

type ArgsFilterUserData struct {
	//用户信息
	UserData DataUserDataType
}

ArgsFilterUserData 脱敏处理用户结构体参数

type ArgsFilterUserInfo

type ArgsFilterUserInfo struct {
	//用户信息
	UserInfo FieldsUserType
}

ArgsFilterUserInfo 用户脱敏参数

type ArgsGetAllGroup

type ArgsGetAllGroup struct {
	//组织ID
	// 可以留空,则表明为平台
	OrgID int64 `db:"org_id" json:"orgID"`
}

ArgsGetAllGroup 查看所有用户组参数

type ArgsGetAllPermission

type ArgsGetAllPermission struct {
	//组织是否可以授权
	// 如果为false,则表明为平台方
	AllowOrg bool `db:"allowOrg" json:"allowOrg"`
}

ArgsGetAllPermission 获取所有权限参数

type ArgsGetAnalysisOrgCount

type ArgsGetAnalysisOrgCount struct {
	//组织ID
	OrgID int64 `db:"org_id" json:"orgID" check:"id"`
	//时间范围
	// 部分统计支持
	TimeBetween CoreSQLTime.DataCoreTime `json:"timeBetween"`
}

ArgsGetAnalysisOrgCount 获取之间时间段新增用户量

type ArgsGetGroup

type ArgsGetGroup struct {
	//用户组ID
	ID int64 `db:"id" json:"id"`
}

ArgsGetGroup 获取某个用户组参数

type ArgsGetOrgByPhone

type ArgsGetOrgByPhone struct {
	//联系方式
	NationCode string `db:"nation_code" json:"nationCode" check:"nationCode"`
	Phone      string `db:"phone" json:"phone" check:"phone"`
}

ArgsGetOrgByPhone 获取手机号对应的所有组织参数

type ArgsGetPermissionByMark

type ArgsGetPermissionByMark struct {
	//标识码
	Mark string
}

ArgsGetPermissionByMark 获取某个权限参数

type ArgsGetUserByEmail

type ArgsGetUserByEmail struct {
	//组织ID
	// 可以留空,则表明为平台
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
	//邮箱
	Email string `db:"email" json:"email" check:"email"`
}

ArgsGetUserByEmail 通过邮箱找到用户参数

type ArgsGetUserByID

type ArgsGetUserByID struct {
	//用户ID
	ID int64 `db:"id" json:"id" check:"id"`
	//组织ID
	// 可选,用于验证
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
}

ArgsGetUserByID 获取某个用户信息参数

type ArgsGetUserByInfos

type ArgsGetUserByInfos struct {
	//组织ID
	// 可以留空,则表明为平台
	OrgID int64 `db:"org_id" json:"orgID"`
	//标识码
	Mark string `db:"mark" json:"mark"`
	//值
	Val string `db:"val" json:"val"`
}

ArgsGetUserByInfos 通过infos找到用户参数

type ArgsGetUserByLogin

type ArgsGetUserByLogin struct {
	//组织ID
	// 可以留空,则表明为平台
	OrgID int64 `db:"org_id" json:"orgID"`
	//标识码
	Mark string `db:"mark" json:"mark"`
	//值
	Val string `db:"val" json:"val"`
}

ArgsGetUserByLogin 通过扩展登陆信息结构体,找到用户参数

type ArgsGetUserByPhone

type ArgsGetUserByPhone struct {
	//组织ID
	// 可以留空,则表明为平台
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
	//联系方式
	NationCode string `db:"nation_code" json:"nationCode" check:"nationCode"`
	Phone      string `db:"phone" json:"phone" check:"phone"`
	//是否无视是否已经验证
	IgnoreVerify bool `db:"ignore_verify" json:"ignoreVerify" check:"bool" empty:"true"`
}

ArgsGetUserByPhone 通过手机号找到唯一的用户参数

type ArgsGetUserByUsername

type ArgsGetUserByUsername struct {
	//组织ID
	// 可以留空,则表明为平台
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
	//用户
	Username string `db:"username" json:"username" check:"username"`
}

ArgsGetUserByUsername 通过用户名找到用户参数

type ArgsGetUserData

type ArgsGetUserData struct {
	//用户ID
	UserID int64 `db:"user_id" json:"userID"`
}

ArgsGetUserData 获取用户的整合信息参数

type ArgsGetUserList

type ArgsGetUserList struct {
	//分页
	Pages CoreSQLPages.ArgsDataList `json:"pages"`
	//状态
	Status int `json:"status" check:"intThan0" empty:"true"`
	//组织ID
	// 可以留空,则表明为平台
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
	//上级系统来源
	ParentSystem string `json:"parentSystem" check:"mark" empty:"true"`
	ParentID     int64  `json:"parentID" check:"id" empty:"true"`
	//分类
	SortID int64 `db:"sort_id" json:"sortID" check:"id" empty:"true"`
	//标签
	Tags pq.Int64Array `db:"tags" json:"tags" check:"ids" empty:"true"`
	//是否删除
	IsRemove bool `json:"isRemove" check:"bool" empty:"true"`
	//搜素
	Search string `json:"search" check:"search" empty:"true"`
}

ArgsGetUserList 获取用户列表参数

type ArgsGetUsers

type ArgsGetUsers struct {
	//一组ID
	IDs pq.Int64Array `db:"ids" json:"ids"`
	//是否包含删除数据
	HaveRemove bool `json:"haveRemove"`
	//是否不要显示电话
	NoPhone bool `json:"noPhone"`
}

ArgsGetUsers 获取一组用户ID参数

type ArgsGetUsersAndAvatar

type ArgsGetUsersAndAvatar struct {
	//一组ID
	IDs pq.Int64Array `db:"ids" json:"ids"`
	//是否包含删除数据
	HaveRemove bool `json:"haveRemove"`
}

ArgsGetUsersAndAvatar 获取一组用户ID和头像参数

type ArgsLoginOrRegUser

type ArgsLoginOrRegUser struct {
	//组织ID
	// 可以留空,则表明为平台
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
	//名称
	Name string `json:"name" check:"name" empty:"true"`
	//密码
	Password string `json:"password" check:"password" empty:"true"`
	//电话联系
	NationCode string `json:"nationCode" check:"nationCode" empty:"true"`
	Phone      string `json:"phone" check:"phone" empty:"true"`
	//是否跳过手机号验证
	AllowSkipPhoneVerify bool `json:"allowSkipPhoneVerify" check:"bool"`
	//是否跳过验证验证?
	AllowSkipWaitEmail bool `json:"allowSkipWaitEmail"`
	//邮件
	Email string `json:"email"`
	//用户名称
	Username string `json:"username"`
	//用户头像
	Avatar int64 `db:"avatar" json:"avatar"`
	//上级
	Parents FieldsUserParents `json:"parents"`
	//分组
	Groups FieldsUserGroupsType `json:"groups"`
	//扩展信息
	Infos CoreSQLConfig.FieldsConfigsType `json:"infos"`
	//登陆信息
	Login FieldsUserLoginType `json:"login"`
	//用户分类
	SortID int64 `db:"sort_id" json:"sortID" check:"id" empty:"true"`
	//用户标签
	Tags pq.Int64Array `db:"tags" json:"tags" check:"ids" empty:"true"`
}

ArgsLoginOrRegUser 授权方式处理登录或注册参数

type ArgsMargeFinal

type ArgsMargeFinal struct {
	//ID
	ID int64 `db:"id" check:"id"`
	//名称
	Name string `json:"name" check:"name"`
	//用户头像
	Avatar int64 `db:"avatar" json:"avatar"`
	//上级
	Parents FieldsUserParents `json:"parents"`
	//分组
	Groups FieldsUserGroupsType `json:"groups"`
	//扩展信息
	Infos CoreSQLConfig.FieldsConfigsType `json:"infos"`
	//登陆信息
	Logins FieldsUserLoginsType `json:"logins"`
	//用户分类
	SortID int64 `db:"sort_id" json:"sortID" check:"id" empty:"true"`
	//用户标签
	Tags pq.Int64Array `db:"tags" json:"tags" check:"ids" empty:"true"`
}

ArgsMargeFinal 融合用户登录收尾处理模块参数

type ArgsReSendUserEmail

type ArgsReSendUserEmail struct {
	//用户ID
	ID int64 `db:"id" json:"id" check:"id"`
	//组织ID
	// 可以留空,则表明为平台
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
}

ArgsReSendUserEmail 重新发送验证码参数

type ArgsSearchUser

type ArgsSearchUser struct {
	//最大反馈数量
	Max int64 `json:"max" check:"max"`
	//所属组织ID
	OrgID int64 `json:"orgID" check:"id" empty:"true"`
	//状态
	Status int `json:"status"`
	//上级系统及ID
	ParentSystem string `json:"parentSystem" check:"mark" empty:"true"`
	ParentID     int64  `json:"parentID" check:"id" empty:"true"`
	//是否包含删除的数据
	HaveRemove bool `json:"haveRemove" check:"bool"`
	//搜索内容
	Search string `json:"search" check:"search" empty:"true"`
}

ArgsSearchUser 搜索用户 组件专用

type ArgsSearchUserByID

type ArgsSearchUserByID struct {
	//用户ID
	ID int64 `db:"id" json:"id" check:"id"`
}

type ArgsUpdateGroup

type ArgsUpdateGroup struct {
	//用户组ID
	ID int64 `db:"id" json:"id"`
	//组织ID
	// 可以留空,则表明为平台
	OrgID int64 `db:"org_id" json:"orgID"`
	//名称
	Name string `db:"name"`
	//备注
	Des string `db:"des"`
	//权限
	Permissions pq.StringArray `db:"permissions"`
}

ArgsUpdateGroup 修改用户组参数

type ArgsUpdatePermission

type ArgsUpdatePermission struct {
	//标识码
	Mark string `db:"mark"`
	//名称
	Name string `db:"name"`
	//备注
	Des string `db:"des"`
	//组织是否可以授权
	AllowOrg bool `db:"allowOrg" json:"allowOrg"`
}

ArgsUpdatePermission 修改权限描述信息参数

type ArgsUpdateUserAvatar

type ArgsUpdateUserAvatar struct {
	//ID
	ID int64 `db:"id" check:"id"`
	//组织ID
	// 可选,用于验证
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
	//头像ID
	AvatarID int64 `db:"avatar" json:"avatar" check:"id"`
}

ArgsUpdateUserAvatar 修改用户头像参数

type ArgsUpdateUserEmailByID

type ArgsUpdateUserEmailByID struct {
	//ID
	ID int64 `db:"id" json:"id" check:"id"`
	//组织ID
	// 可选,用于验证
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
	//邮件
	// 可以留空,将抹除该数据
	Email string `db:"email" json:"email" check:"email"`
	//是否跳过验证?
	AllowSkip bool `json:"allowSkip" check:"bool" empty:"true"`
}

ArgsUpdateUserEmailByID 修改用户邮箱参数

type ArgsUpdateUserGroupByID

type ArgsUpdateUserGroupByID struct {
	//ID
	ID int64 `db:"id"`
	//组织ID
	// 可选,用于验证
	OrgID int64 `db:"org_id" json:"orgID"`
	//用户组ID
	GroupID int64
	//过期时间
	ExpireAt time.Time
	//是否删除
	IsRemove bool
}

type ArgsUpdateUserInfoByID

type ArgsUpdateUserInfoByID struct {
	//ID
	ID int64 `db:"id" json:"id"`
	//组织ID
	OrgID int64 `db:"org_id" json:"orgID"`
	//组织ID
	NewOrgID int64 `db:"new_org_id" json:"newOrgID"`
	//名称
	Name string `db:"name" json:"name"`
	//用户头像
	Avatar int64 `db:"avatar" json:"avatar" check:"id" empty:"true"`
}

ArgsUpdateUserInfoByID 修改用户信息参数

type ArgsUpdateUserInfosByID

type ArgsUpdateUserInfosByID struct {
	//ID
	ID int64 `db:"id"`
	//组织ID
	// 可选,用于验证
	OrgID int64 `db:"org_id" json:"orgID"`
	//参数
	Mark string
	//值
	Val string
	//是否删除
	IsRemove bool
}

ArgsUpdateUserInfosByID 修改用户的信息扩展参数

type ArgsUpdateUserLoginByID

type ArgsUpdateUserLoginByID struct {
	//ID
	ID int64
	//组织ID
	// 可选,用于验证
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
	//参数
	Mark string `db:"mark" json:"mark" check:"mark"`
	//值
	Val string
	//配置
	Config string
	//是否删除
	IsRemove bool
}

ArgsUpdateUserLoginByID 修改用户登录项参数

type ArgsUpdateUserParent

type ArgsUpdateUserParent struct {
	//ID
	ID int64 `db:"id" check:"id"`
	//组织ID
	// 可选,用于验证
	OrgID int64 `db:"org_id" json:"orgID"`
	//上级ID组
	Parents FieldsUserParents `db:"parents"`
}

ArgsUpdateUserParent 修改上级ID参数

type ArgsUpdateUserPasswordByID

type ArgsUpdateUserPasswordByID struct {
	//ID
	ID int64 `db:"id" check:"id"`
	//组织ID
	// 可选,用于验证
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
	//密码
	Password string `db:"password"`
}

ArgsUpdateUserPasswordByID 修改用户密码参数

type ArgsUpdateUserPhoneByID

type ArgsUpdateUserPhoneByID struct {
	//ID
	ID int64 `db:"id"`
	//组织ID
	// 可选,用于验证
	OrgID int64 `db:"org_id" json:"orgID"`
	//电话联系
	// 允许留空,将抹除数据
	NationCode string `db:"nation_code"`
	Phone      string `db:"phone"`
	//是否跳过手机号验证
	AllowSkipPhoneVerify bool `json:"allowSkipPhoneVerify" check:"bool"`
}

ArgsUpdateUserPhoneByID 修改用户电话参数

type ArgsUpdateUserSort

type ArgsUpdateUserSort struct {
	//ID
	ID int64 `db:"id" check:"id"`
	//组织ID
	// 可选,用于验证
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
	//用户分类
	SortID int64 `db:"sort_id" json:"sortID" check:"id" empty:"true"`
	//用户标签
	Tags pq.Int64Array `db:"tags" json:"tags" check:"ids" empty:"true"`
}

ArgsUpdateUserSort 修改用户分类和标签参数

type ArgsUpdateUserStatus

type ArgsUpdateUserStatus struct {
	//ID
	ID int64 `db:"id"`
	//组织ID
	// 可选,用于验证
	OrgID int64 `db:"org_id" json:"orgID"`
	//状态
	// 0 -> ban后,用户可以正常登录,但一切内容无法使用
	// 1 -> audit后,用户登录后无法正常使用,但提示不太一样
	// 2 -> public 正常访问
	Status int `db:"status" json:"status"`
}

ArgsUpdateUserStatus 修改用户信息参数

type ArgsUpdateUserUsernameByID

type ArgsUpdateUserUsernameByID struct {
	//ID
	ID int64 `db:"id"`
	//组织ID
	// 可选,用于验证
	OrgID int64 `db:"org_id" json:"orgID"`
	//用户名
	Username string `db:"username"`
}

ArgsUpdateUserUsernameByID 修改用户用户名参数

type DataGetOrgByPhone

type DataGetOrgByPhone struct {
	//ID
	ID int64 `db:"id" json:"id" check:"id"`
	//组织ID
	// 如果为空,则说明是平台的用户;否则为对应组织的用户
	// 所有获取的方法,都需要给与该ID参数,也可以留空,否则禁止获取
	OrgID int64 `db:"org_id" json:"orgID"`
}

DataGetOrgByPhone 获取手机号对应的所有组织数据

func GetOrgByPhone

func GetOrgByPhone(args *ArgsGetOrgByPhone) (dataList []DataGetOrgByPhone, err error)

GetOrgByPhone 获取手机号对应的所有组织

type DataGetUsersAndAvatar

type DataGetUsersAndAvatar struct {
	//用户ID
	ID int64 `db:"id" json:"id"`
	//用户昵称
	Name string `db:"name" json:"name"`
	//头像
	Avatar int64 `db:"avatar" json:"avatar"`
}

DataGetUsersAndAvatar 获取一组用户ID和头像数据

func GetUserAndAvatar

func GetUserAndAvatar(userID int64) (data DataGetUsersAndAvatar)

func GetUsers

func GetUsers(args *ArgsGetUsers) (dataList []DataGetUsersAndAvatar, err error)

GetUsers 获取一组用户

func GetUsersAndAvatar

func GetUsersAndAvatar(args *ArgsGetUsersAndAvatar) (dataList []DataGetUsersAndAvatar, err error)

GetUsersAndAvatar 获取一组用户ID和头像

type DataSearchUser

type DataSearchUser struct {
	//用户ID
	ID int64 `db:"id" json:"id"`
	//用户昵称
	Name string `db:"name" json:"name"`
	//用户电话
	NationCode string `db:"nation_code" json:"nationCode"`
	Phone      string `db:"phone" json:"phone"`
	//头像
	Avatar int64 `db:"avatar" json:"avatar"`
}

func SearchUser

func SearchUser(args *ArgsSearchUser) (dataList []DataSearchUser, dataCount int64, err error)

func SearchUserByID

func SearchUserByID(args *ArgsSearchUserByID) (data DataSearchUser, err error)

type DataUserDataType deprecated

type DataUserDataType struct {
	//用户基本信息结构
	Info FieldsUserType `json:"info"`
	//用户组信息
	Groups []FieldsGroupType `json:"groups"`
	//权限组
	Permissions []string `json:"permissions"`
	//文件列
	FileList map[int64]string `json:"fileList"`
}

Deprecated: 准备废弃 DataUserDataType 解决一体化工具,用于反馈用户的整合信息结构

func FilterUserData deprecated

func FilterUserData(args *ArgsFilterUserData) DataUserDataType

Deprecated: 准备废弃 FilterUserData 脱敏处理用户结构体参数

func GetUserData deprecated

func GetUserData(args *ArgsGetUserData) (userData DataUserDataType, err error)

Deprecated: 准备废弃 GetUserData 获取用户的整合信息

type FieldsGroupType

type FieldsGroupType struct {
	//ID
	ID int64 `db:"id" json:"id"`
	//组织ID
	// 如果为空,则说明是平台的用户;否则为对应组织的用户
	// 所有获取的方法,都需要给与该ID参数,也可以留空,否则禁止获取
	OrgID int64 `db:"org_id" json:"orgID"`
	//名称
	Name string `db:"name" json:"name"`
	//描述
	Des string `db:"des" json:"des"`
	//关联的权限组
	Permissions pq.StringArray `db:"permissions" json:"permissions"`
}

FieldsGroupType 用户组结构表

func CreateGroup

func CreateGroup(args *ArgsCreateGroup) (data FieldsGroupType, err error)

CreateGroup 创建新的用户组

func GetAllGroup

func GetAllGroup(args *ArgsGetAllGroup) (dataList []FieldsGroupType, err error)

GetAllGroup 查看所有用户组

func GetGroup

func GetGroup(args *ArgsGetGroup) (data FieldsGroupType, err error)

GetGroup 获取某个用户组

type FieldsPermissionType

type FieldsPermissionType struct {
	//标识码
	Mark string `db:"mark" json:"mark"`
	//名称
	Name string `db:"name" json:"name"`
	//描述
	Des string `db:"des" json:"des"`
	//是否允许组织授权
	AllowOrg bool `db:"allow_org" json:"allowOrg"`
}

FieldsPermissionType 权限表结构

func GetAllPermission

func GetAllPermission(args *ArgsGetAllPermission) (dataList []FieldsPermissionType, err error)

GetAllPermission 获取所有权限

func GetPermissionByMark

func GetPermissionByMark(args *ArgsGetPermissionByMark) (data FieldsPermissionType, err error)

GetPermissionByMark 获取某个权限

type FieldsRegWaitEmail

type FieldsRegWaitEmail struct {
	//ID
	ID int64 `db:"id" json:"id"`
	//创建时间
	CreateAt time.Time `db:"create_at" json:"createAt"`
	//删除时间
	DeleteAt time.Time `db:"delete_at" json:"deleteAt"`
	//过期时间
	ExpireAt time.Time `db:"expire_at" json:"expireAt"`
	//用户ID
	UserID int64 `db:"user_id" json:"userID"`
	//邮箱
	Email string `db:"email" json:"email"`
	//邮箱验证码
	VCode string `db:"vcode" json:"vcode"`
	//是否发送了
	IsSend bool `db:"is_send" json:"isSend"`
}

FieldsRegWaitEmail 邮箱等待验证列队

type FieldsUserGroupType

type FieldsUserGroupType struct {
	//用户组ID
	GroupID int64 `db:"group_id" json:"groupID"`
	//创建时间
	CreateAt time.Time `db:"create_at" json:"createAt"`
	//过期时间
	ExpireAt time.Time `db:"expire_at" json:"expireAt"`
}

func (*FieldsUserGroupType) Scan

func (t *FieldsUserGroupType) Scan(value interface{}) error

func (FieldsUserGroupType) Value

func (t FieldsUserGroupType) Value() (driver.Value, error)

sql底层处理器

type FieldsUserGroupsType

type FieldsUserGroupsType []FieldsUserGroupType

FieldsUserGroupsType 用户组信息结构

func (*FieldsUserGroupsType) Scan

func (t *FieldsUserGroupsType) Scan(value interface{}) error

func (FieldsUserGroupsType) Value

func (t FieldsUserGroupsType) Value() (driver.Value, error)

type FieldsUserLoginType

type FieldsUserLoginType struct {
	//标识码
	Mark string `db:"mark" json:"mark"`
	//值
	Val string `db:"val" json:"val"`
	//配置结构
	// 可任意建立,主要指一些特定的标记,如API反馈的原始数据等
	Config string `db:"config" json:"config"`
}

func (*FieldsUserLoginType) Scan

func (t *FieldsUserLoginType) Scan(value interface{}) error

func (FieldsUserLoginType) Value

func (t FieldsUserLoginType) Value() (driver.Value, error)

Value sql底层处理器

type FieldsUserLoginsType

type FieldsUserLoginsType []FieldsUserLoginType

FieldsUserLoginsType 登录结构体

func SetUserLogins

func SetUserLogins(data FieldsUserLoginsType, mark string, val string, config string) FieldsUserLoginsType

SetUserLogins 写入数据

func (*FieldsUserLoginsType) Scan

func (t *FieldsUserLoginsType) Scan(value interface{}) error

func (FieldsUserLoginsType) Value

func (t FieldsUserLoginsType) Value() (driver.Value, error)

Value sql底层处理器

type FieldsUserParent

type FieldsUserParent struct {
	//系统类型标识码
	// 用于指定不同类型的系统、模块的上下级关系
	// eg: transport / finance
	System string `db:"system" json:"system"`
	//上级ID
	ParentID int64 `db:"parentID" json:"parentID"`
	//权限标记
	Operate []string `db:"operate" json:"operate"`
}

func (*FieldsUserParent) Scan

func (t *FieldsUserParent) Scan(value interface{}) error

func (FieldsUserParent) Value

func (t FieldsUserParent) Value() (driver.Value, error)

type FieldsUserParents

type FieldsUserParents []FieldsUserParent

FieldsUserParents 上下级关系处理

func (*FieldsUserParents) Scan

func (t *FieldsUserParents) Scan(value interface{}) error

func (FieldsUserParents) Value

func (t FieldsUserParents) Value() (driver.Value, error)

type FieldsUserType

type FieldsUserType struct {
	//ID
	ID int64 `db:"id" json:"id"`
	//创建时间
	CreateAt time.Time `db:"create_at" json:"createAt"`
	//更新时间
	UpdateAt time.Time `db:"update_at" json:"updateAt"`
	//删除时间
	DeleteAt time.Time `db:"delete_at" json:"deleteAt"`
	//状态
	// 0 -> ban后,用户可以正常登录,但一切内容无法使用
	// 1 -> audit后,用户登录后无法正常使用,但提示不太一样
	// 2 -> public 正常访问
	Status int `db:"status" json:"status"`
	//组织ID
	// 如果为空,则说明是平台的用户;否则为对应组织的用户
	// 所有获取的方法,都需要给与该ID参数,也可以留空,否则禁止获取
	OrgID int64 `db:"org_id" json:"orgID"`
	//姓名
	Name string `db:"name" json:"name"`
	//密码
	Password string `db:"password" json:"password"`
	//绑定手机号的国家代码
	NationCode string `db:"nation_code" json:"nationCode"`
	//手机号码,绑定后的手机
	Phone string `db:"phone" json:"phone"`
	//手机是否验证
	PhoneVerify time.Time `db:"phone_verify" json:"phoneVerify"`
	//邮箱,如果不存在手机则必须存在的
	Email string `db:"email" json:"email"`
	//邮箱是否验证
	EmailVerify time.Time `db:"email_verify" json:"emailVerify"`
	//用户名,如果不存在手机号和邮箱,则必须存在的
	Username string `db:"username" json:"username"`
	//用户头像
	Avatar int64 `db:"avatar" json:"avatar"`
	//上级关系
	Parents FieldsUserParents `db:"parents" json:"parents"`
	//用户组
	Groups FieldsUserGroupsType `db:"groups" json:"groups"`
	//信息结构体
	// 特殊情况下,如果不希望创建新的模块,可以使用该字段实现特定目标
	// 例如是否进入过某个页面,或是否进行过某些行为的标识码
	Infos CoreSQLConfig.FieldsConfigsType `db:"infos" json:"infos"`
	//登录结构体
	// 提供给第三方登录的数据接口
	Logins FieldsUserLoginsType `db:"logins" json:"logins"`
	//用户分类
	SortID int64 `db:"sort_id" json:"sortID"`
	//用户标签
	Tags pq.Int64Array `db:"tags" json:"tags"`
}

FieldsUserType 用户结构

func CreateUser

func CreateUser(args *ArgsCreateUser) (userInfo FieldsUserType, errCode string, err error)

CreateUser 插入新的用户

func FilterUserInfo

func FilterUserInfo(args *ArgsFilterUserInfo) FieldsUserType

FilterUserInfo 用户脱敏

func GetAllUserByPhone

func GetAllUserByPhone(nationCode string, phone string) (userList []FieldsUserType)

GetAllUserByPhone 获取已经被移除的关联的用户手机号

func GetUserByEmail

func GetUserByEmail(args *ArgsGetUserByEmail) (data FieldsUserType, err error)

GetUserByEmail 通过邮箱找到用户

func GetUserByID

func GetUserByID(args *ArgsGetUserByID) (data FieldsUserType, err error)

func GetUserByIDHaveDelete

func GetUserByIDHaveDelete(args *ArgsGetUserByID) (data FieldsUserType, err error)

func GetUserByIDNoErr

func GetUserByIDNoErr(userID int64, orgID int64) (data FieldsUserType)

GetUserByIDNoErr 直接查询用户ID

func GetUserByIDNoErrHaveDelete

func GetUserByIDNoErrHaveDelete(userID int64, orgID int64) (data FieldsUserType)

GetUserByIDNoErrHaveDelete 直接查询用户ID

func GetUserByInfos

func GetUserByInfos(args *ArgsGetUserByInfos) (data FieldsUserType, err error)

GetUserByInfos 通过infos找到用户

func GetUserByLogin

func GetUserByLogin(args *ArgsGetUserByLogin) (data FieldsUserType, err error)

GetUserByLogin 通过扩展登陆信息结构体,找到用户

func GetUserByPhone

func GetUserByPhone(args *ArgsGetUserByPhone) (data FieldsUserType, err error)

GetUserByPhone 通过手机号找到唯一的用户

func GetUserByUsername

func GetUserByUsername(args *ArgsGetUserByUsername) (data FieldsUserType, err error)

GetUserByUsername 通过用户名找到用户

func GetUserList

func GetUserList(args *ArgsGetUserList) (dataList []FieldsUserType, dataCount int64, err error)

GetUserList 获取用户列表

func LoginOrRegUser

func LoginOrRegUser(args *ArgsLoginOrRegUser) (isNewUser bool, userInfo FieldsUserType, errCode string, err error)

LoginOrRegUser 授权方式处理登录或注册 用于第三方登录方式,统一方法并处理融合账户的问题

func MargeCheckLogins

func MargeCheckLogins(orgID int64, logins FieldsUserLoginsType) (userData FieldsUserType, errCode string, err error)

MargeCheckLogins 检查一组logins是否具备用户,并自动处理和反馈数据 可以判断errCode来识别是否不存在用户,errCode = "err_user_no_exist"

func MargeLogin

func MargeLogin(orgID int64, userName string, password string, noLogin bool) (userInfo FieldsUserType, errCode string, err error)

MargeLogin 通过手机号/用户名/邮箱任意一个路径登录 如果密码给空,将跳过验证

func MargeLoginRegByPhone

func MargeLoginRegByPhone(orgID int64, nationCode string, phone string, allowSkipVerify bool) (userData FieldsUserType, errCode string, err error)

MargeLoginRegByPhone 融合通过手机号登录和注册

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL