BlogUserRead

package
v5.1.5 Latest Latest
Warning

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

Go to latest
Published: Mar 29, 2024 License: Apache-2.0 Imports: 17 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	//OpenSub 是否启动订阅
	OpenSub = false
)

Functions

func CheckLogByUser

func CheckLogByUser(args *ArgsCheckLogByUser) (b bool)

CheckLogByUser 获取指定文章和用户阅读结果

func CreateLog

func CreateLog(args *ArgsCreateLog) (err error)

CreateLog 添加日志

func GetAnalysisAvgReadTime

func GetAnalysisAvgReadTime(args *ArgsGetAnalysisAvgReadTime) (count int64, err error)

GetAnalysisAvgReadTime 获取用户的平均阅读时间

func GetAnalysisContentCount

func GetAnalysisContentCount(args *ArgsGetAnalysisContentCount) (count int64, err error)

GetAnalysisContentCount 获取某一篇文章阅读统计

func GetAnalysisCount

func GetAnalysisCount(args *ArgsGetAnalysisCount) (count int64, err error)

GetAnalysisCount 获取阅读总的统计 总阅读时间和阅读数量统计

func GetAnalysisTime

func GetAnalysisTime(args *ArgsGetAnalysisCount) (count int64, err error)

GetAnalysisTime 阅读时间累计长度

func GetLogCount

func GetLogCount(args *ArgsGetLogCount) (count int64, err error)

GetLogCount 获取指定文章的阅读次数

func GetUserIsRead

func GetUserIsRead(args *ArgsGetUserIsRead) (b bool)

GetUserIsRead 检查是否阅读

func Init

func Init()

Init 初始化

Types

type ArgsCheckLogByUser

type ArgsCheckLogByUser struct {
	//组织ID
	OrgID int64 `db:"org_id" json:"orgID" check:"id"`
	//子组织ID
	ChildOrgID int64 `db:"child_org_id" json:"childOrgID" check:"id" empty:"true"`
	//文章ID
	ContentID int64 `db:"content_id" json:"contentID" check:"id"`
	//用户ID
	UserID int64 `db:"user_id" json:"userID" check:"id"`
}

ArgsCheckLogByUser 获取指定文章和用户阅读结果参数

type ArgsCreateLog

type ArgsCreateLog struct {
	//子组织ID
	ChildOrgID int64 `db:"child_org_id" json:"childOrgID" check:"id" empty:"true"`
	//用户
	UserID int64 `db:"user_id" json:"userID" check:"id" empty:"true"`
	//阅读渠道
	// 访问渠道的特征码
	FromMark string `db:"from_mark" json:"fromMark" check:"mark"`
	FromName string `db:"from_name" json:"fromName"`
	//姓名
	Name string `db:"name" json:"name" check:"name" empty:"true"`
	//IP
	IP string `db:"ip" json:"ip" check:"ip"`
	//文章ID
	ContentID int64 `db:"content_id" json:"contentID" check:"id"`
	//进入时间
	CreateAt string `db:"create_at" json:"createAt" check:"isoTime"`
	//离开时间
	LeaveAt string `db:"leave_at" json:"leaveAt" check:"isoTime" empty:"true"`
}

ArgsCreateLog 添加日志参数

type ArgsGetAnalysisAvgReadTime

type ArgsGetAnalysisAvgReadTime struct {
	//组织ID
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
	//子组织ID
	ChildOrgID int64 `db:"child_org_id" json:"childOrgID" check:"id" empty:"true"`
	//用户
	UserID int64 `db:"user_id" json:"userID" check:"id" empty:"true"`
	//阅读渠道
	// 访问渠道的特征码
	FromMark string `db:"from_mark" json:"fromMark" check:"mark" empty:"true"`
	FromName string `db:"from_name" json:"fromName"`
	//IP
	IP string `db:"ip" json:"ip" check:"ip" empty:"true"`
	//文章分类
	// 每个分类会构建一条统计记录
	SortID int64 `db:"sort_id" json:"sortID" check:"id" empty:"true"`
	//文章ID
	ContentID int64 `db:"content_id" json:"contentID" check:"id" empty:"true"`
	//时间段
	TimeBetween CoreSQLTime.DataCoreTime `json:"timeBetween"`
}

ArgsGetAnalysisAvgReadTime 获取用户的平均阅读时间参数

type ArgsGetAnalysisContentCount

type ArgsGetAnalysisContentCount struct {
	//组织ID
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
	//子组织ID
	ChildOrgID int64 `db:"child_org_id" json:"childOrgID" check:"id" empty:"true"`
	//文章分类
	// 每个分类会构建一条统计记录
	SortID int64 `db:"sort_id" json:"sortID" check:"id" empty:"true"`
	//文章ID
	ContentID int64 `db:"content_id" json:"contentID" check:"id" empty:"true"`
	//是否必须阅读结束
	MustReadEnt bool `json:"mustReadEnt" check:"bool" empty:"true"`
	//时间段
	TimeBetween CoreSQLTime.DataCoreTime `json:"timeBetween"`
}

ArgsGetAnalysisContentCount 获取某一篇文章阅读统计参数

type ArgsGetAnalysisContentCountMarge

type ArgsGetAnalysisContentCountMarge struct {
	Data []ArgsGetAnalysisContentCount `json:"data"`
}

ArgsGetAnalysisContentCountMarge 获取文章访问统计的聚合方法参数

type ArgsGetAnalysisCount

type ArgsGetAnalysisCount struct {
	//组织ID
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
	//子组织ID
	ChildOrgID int64 `db:"child_org_id" json:"childOrgID" check:"id" empty:"true"`
	//用户
	UserID int64 `db:"user_id" json:"userID" check:"id" empty:"true"`
	//阅读渠道
	// 访问渠道的特征码
	FromMark string `db:"from_mark" json:"fromMark" check:"mark" empty:"true"`
	FromName string `db:"from_name" json:"fromName"`
	//IP
	IP string `db:"ip" json:"ip" check:"ip" empty:"true"`
	//文章分类
	// 每个分类会构建一条统计记录
	SortID int64 `db:"sort_id" json:"sortID" check:"id" empty:"true"`
	//时间段
	TimeBetween CoreSQLTime.DataCoreTime `json:"timeBetween"`
}

ArgsGetAnalysisCount 获取阅读总的统计参数

type ArgsGetAnalysisGroupTime

type ArgsGetAnalysisGroupTime struct {
	//组织ID
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
	//子组织ID
	ChildOrgID int64 `db:"child_org_id" json:"childOrgID" check:"id" empty:"true"`
	//文章分类
	// 每个分类会构建一条统计记录
	SortID int64 `db:"sort_id" json:"sortID" check:"id" empty:"true"`
	//结构方式
	// year / month / day / hour
	TimeType string `json:"timeType" check:"mark"`
}

ArgsGetAnalysisGroupTime 获取阅读时间按月统计参数

type ArgsGetAnalysisList

type ArgsGetAnalysisList struct {
	//分页
	Pages CoreSQLPages.ArgsDataList `json:"pages"`
	//组织ID
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
	//子组织ID
	ChildOrgID int64 `db:"child_org_id" json:"childOrgID" check:"id" empty:"true"`
	//用户
	UserID int64 `db:"user_id" json:"userID" check:"id" empty:"true"`
	//阅读渠道
	// 访问渠道的特征码
	FromMark string `db:"from_mark" json:"fromMark" check:"mark" empty:"true"`
	FromName string `db:"from_name" json:"fromName"`
	//IP
	IP string `db:"ip" json:"ip" check:"ip" empty:"true"`
	//文章分类
	// 每个分类会构建一条统计记录
	SortID int64 `db:"sort_id" json:"sortID" check:"id" empty:"true"`
	//阅读时间
	// 进入和离开时间的秒差值,如果离开没记录则不会记录本数据
	ReadTimeMin int64 `db:"read_time_min" json:"readTimeMin" check:"int64Than0" empty:"true"`
	ReadTimeMax int64 `db:"read_time_max" json:"readTimeMax" check:"int64Than0" empty:"true"`
	//时间段
	TimeBetween CoreSQLTime.DataCoreTime `json:"timeBetween"`
	//搜索
	Search string `json:"search" check:"search" empty:"true"`
}

ArgsGetAnalysisList 获取统计列表参数

type ArgsGetAnalysisSortCount

type ArgsGetAnalysisSortCount struct {
	//组织ID
	OrgID int64 `db:"org_id" json:"orgID" check:"id"`
	//子组织ID
	ChildOrgID int64 `db:"child_org_id" json:"childOrgID" check:"id" empty:"true"`
	//用户
	UserID int64 `db:"user_id" json:"userID" check:"id" empty:"true"`
	//阅读渠道
	// 访问渠道的特征码
	FromMark string `db:"from_mark" json:"fromMark" check:"mark" empty:"true"`
	FromName string `db:"from_name" json:"fromName"`
	//IP
	IP string `db:"ip" json:"ip" check:"ip" empty:"true"`
	//时间段
	TimeBetween CoreSQLTime.DataCoreTime `json:"timeBetween"`
}

ArgsGetAnalysisSortCount 获取不同分类阅读总的统计参数

type ArgsGetLogCount

type ArgsGetLogCount struct {
	//组织ID
	OrgID int64 `db:"org_id" json:"orgID" check:"id"`
	//子组织ID
	ChildOrgID int64 `db:"child_org_id" json:"childOrgID" check:"id" empty:"true"`
	//文章ID
	ContentIDs pq.Int64Array `db:"content_ids" json:"contentIDs" check:"ids"`
	//时间段
	TimeBetween CoreSQLTime.DataCoreTime `json:"timeBetween"`
	//忽略时间段
	SkipTime bool `json:"skipTime" check:"bool"`
}

ArgsGetLogCount 获取指定文章的阅读次数参数

type ArgsGetLogList

type ArgsGetLogList struct {
	//分页
	Pages CoreSQLPages.ArgsDataList `json:"pages"`
	//组织ID
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
	//子组织ID
	ChildOrgID int64 `db:"child_org_id" json:"childOrgID" check:"id" empty:"true"`
	//用户
	UserID int64 `db:"user_id" json:"userID" check:"id" empty:"true"`
	//阅读渠道
	// 访问渠道的特征码
	FromMark string `db:"from_mark" json:"fromMark" check:"mark" empty:"true"`
	FromName string `db:"from_name" json:"fromName"`
	//IP
	IP string `db:"ip" json:"ip" check:"ip" empty:"true"`
	//文章ID
	ContentID int64 `db:"content_id" json:"contentID" check:"id" empty:"true"`
	//文章分类
	// 每个分类会构建一条统计记录
	SortID int64 `db:"sort_id" json:"sortID" check:"id" empty:"true"`
	//阅读时间
	// 进入和离开时间的秒差值,如果离开没记录则不会记录本数据
	ReadTimeMin int64 `db:"read_time_min" json:"readTimeMin" check:"int64Than0" empty:"true"`
	ReadTimeMax int64 `db:"read_time_max" json:"readTimeMax" check:"int64Than0" empty:"true"`
	//时间段
	TimeBetween CoreSQLTime.DataCoreTime `json:"timeBetween"`
	//搜索
	Search string `json:"search" check:"search" empty:"true"`
}

ArgsGetLogList 获取访问列表参数

type ArgsGetUserIsRead

type ArgsGetUserIsRead struct {
	//用户
	UserID int64 `db:"user_id" json:"userID" check:"id"`
	//文章ID
	ContentID int64 `db:"content_id" json:"contentID" check:"id"`
}

ArgsGetUserIsRead 检查是否阅读参数

type ArgsMarge

type ArgsMarge struct {
	//多个标识码组
	Marks []ArgsMargeMark `json:"marks"`
	//商户ID
	OrgID int64 `json:"orgID"`
	//子商户ID
	ChildOrgID int64 `json:"childOrgID"`
}

ArgsMarge 聚合统计参数

type ArgsMargeMark

type ArgsMargeMark struct {
	//标识码
	Mark string `json:"mark"`
	//指定渠道
	FromMark string `json:"fromMark"`
	//特定分类
	SortID int64 `json:"sortID"`
	//时间范围
	// 部分统计支持
	TimeBetween CoreSQLTime.DataCoreTime `json:"timeBetween"`
	//数量限制
	// 部分统计支持
	// 数据最多反馈1000条
	Limit int64 `json:"limit"`
}

type DataGetAnalysisContentCountMarge

type DataGetAnalysisContentCountMarge struct {
	//参数
	Params ArgsGetAnalysisContentCount `json:"params"`
	//数据
	Count int64 `json:"count"`
}

DataGetAnalysisContentCountMarge 获取文章访问统计的聚合数据

func GetAnalysisContentCountMarge

func GetAnalysisContentCountMarge(args *ArgsGetAnalysisContentCountMarge) (dataList []DataGetAnalysisContentCountMarge)

GetAnalysisContentCountMarge 获取文章访问统计的聚合方法

type DataGetAnalysisGroupChildOrgList

type DataGetAnalysisGroupChildOrgList struct {
	//子组织ID
	ChildOrgID int64 `db:"child_org_id" json:"childOrgID"`
	//总阅读时间
	// 进入和离开时间的秒差值,如果离开没记录则不会记录本数据
	ReadTime int64 `db:"read_time" json:"readTime"`
	//总阅读文章个数
	ReadCount int64 `db:"read_count" json:"readCount"`
}

DataGetAnalysisGroupChildOrgList 子公司统计数据聚合数据

func GetAnalysisGroupChildOrgList

func GetAnalysisGroupChildOrgList(args *ArgsGetAnalysisList) (dataList []DataGetAnalysisGroupChildOrgList, dataCount int64, err error)

GetAnalysisGroupChildOrgList 子公司统计数据聚合

type DataGetAnalysisGroupTime

type DataGetAnalysisGroupTime struct {
	//时间
	DayTime string `db:"d" json:"dayTime"`
	//阅读次数
	ReadCount int `db:"read_count" json:"read_count"`
}

DataGetAnalysisGroupTime 获取阅读时间按月统计数据

func GetAnalysisGroupTime

func GetAnalysisGroupTime(args *ArgsGetAnalysisGroupTime) (dataList []DataGetAnalysisGroupTime, err error)

GetAnalysisGroupTime 获取阅读时间按月统计

type DataGetAnalysisGroupUserList

type DataGetAnalysisGroupUserList struct {
	//用户
	UserID int64 `db:"user_id" json:"userID"`
	//总阅读时间
	// 进入和离开时间的秒差值,如果离开没记录则不会记录本数据
	ReadTime int64 `db:"read_time" json:"readTime"`
	//总阅读文章个数
	ReadCount int64 `db:"read_count" json:"readCount"`
}

DataGetAnalysisGroupUserList 用户统计聚合数据

func GetAnalysisGroupUserList

func GetAnalysisGroupUserList(args *ArgsGetAnalysisList) (dataList []DataGetAnalysisGroupUserList, dataCount int64, err error)

GetAnalysisGroupUserList 用户统计聚合数据

type DataGetAnalysisSortCount

type DataGetAnalysisSortCount struct {
	//分类ID
	SortID int64 `db:"sort_id" json:"sortID"`
	//数量
	Count int64 `db:"count" json:"count"`
}

func GetAnalysisSortCount

func GetAnalysisSortCount(args *ArgsGetAnalysisSortCount) (dataList []DataGetAnalysisSortCount, err error)

GetAnalysisSortCount 获取不同分类阅读总的统计

type DataMarge

type DataMarge struct {
	//数据结构
	Marks []DataMargeMark `json:"marks"`
}

DataMarge 聚合统计反馈结构

func GetMarge

func GetMarge(args *ArgsMarge) (result DataMarge, err error)

GetMarge 获取聚合统计

type DataMargeMark

type DataMargeMark struct {
	//标识码
	Mark string `json:"mark"`
	//指定渠道
	FromMark string `json:"fromMark"`
	//特定分类
	SortID int64 `json:"sortID"`
	//时间范围
	// 部分统计支持
	TimeBetween CoreSQLTime.DataCoreTime `json:"timeBetween"`
	//数量限制
	// 部分统计支持
	// 数据最多反馈1000条
	Limit int64 `json:"limit"`
	//数据集合
	Data interface{} `json:"data"`
}

type FieldsAnalysis

type FieldsAnalysis struct {
	//ID
	ID int64 `db:"id" json:"id"`
	//创建时间
	CreateAt time.Time `db:"create_at" json:"createAt"`
	//组织ID
	OrgID int64 `db:"org_id" json:"orgID"`
	//子组织ID
	ChildOrgID int64 `db:"child_org_id" json:"childOrgID"`
	//用户
	UserID int64 `db:"user_id" json:"userID"`
	//阅读渠道
	// 访问渠道的特征码
	FromMark string `db:"from_mark" json:"fromMark"`
	FromName string `db:"from_name" json:"fromName"`
	//姓名
	Name string `db:"name" json:"name"`
	//IP
	IP string `db:"ip" json:"ip"`
	//文章分类
	// 每个分类会构建一条统计记录
	SortID int64 `db:"sort_id" json:"sortID"`
	//总阅读时间
	// 进入和离开时间的秒差值,如果离开没记录则不会记录本数据
	ReadTime int64 `db:"read_time" json:"readTime"`
	//总阅读文章个数
	ReadCount int64 `db:"read_count" json:"readCount"`
}

FieldsAnalysis 阅读总统计

func GetAnalysisList

func GetAnalysisList(args *ArgsGetAnalysisList) (dataList []FieldsAnalysis, dataCount int64, err error)

GetAnalysisList 获取统计列表

type FieldsLog

type FieldsLog struct {
	//ID
	ID int64 `db:"id" json:"id"`
	//创建时间
	CreateAt time.Time `db:"create_at" json:"createAt"`
	//组织ID
	OrgID int64 `db:"org_id" json:"orgID"`
	//子组织ID
	ChildOrgID int64 `db:"child_org_id" json:"childOrgID"`
	//用户
	UserID int64 `db:"user_id" json:"userID"`
	//阅读渠道
	// 访问渠道的特征码
	FromMark string `db:"from_mark" json:"fromMark"`
	FromName string `db:"from_name" json:"fromName"`
	//姓名
	Name string `db:"name" json:"name"`
	//IP
	IP string `db:"ip" json:"ip"`
	//文章ID
	ContentID int64 `db:"content_id" json:"contentID"`
	//文章分类
	// 每个分类会构建一条统计记录
	SortID int64 `db:"sort_id" json:"sortID"`
	//离开时间
	LeaveAt time.Time `db:"leave_at" json:"leaveAt"`
	//阅读时间
	// 进入和离开时间的秒差值,如果离开没记录则不会记录本数据
	ReadTime int64 `db:"read_time" json:"readTime"`
}

FieldsLog 阅读记录

func GetLogList

func GetLogList(args *ArgsGetLogList) (dataList []FieldsLog, dataCount int64, err error)

GetLogList 获取访问列表

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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