user_view_statistics.go 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. package user_view_statistics
  2. import (
  3. "github.com/rdlucklib/rdluck_tools/orm"
  4. "time"
  5. )
  6. // UserViewStatistics 用户报告报告阅读数量统计表
  7. type UserViewStatistics struct {
  8. Id int `orm:"column(id)" description:"自增Id"`
  9. Mobile string `description:"手机号"`
  10. Email string `description:"手机号"`
  11. RealName string `description:"联系人名称"`
  12. CompanyName string `description:"客户名称"`
  13. ViewNum int `description:"阅读总数"`
  14. Date time.Time `description:"阅读日期"`
  15. CreateTime time.Time `description:"添加时间"`
  16. }
  17. // UserViewMobileTotalSlice 根据用户手机号字符串获取用户的浏览数
  18. type UserViewMobileTotalSlice struct {
  19. Mobile string `description:"用户手机号"`
  20. CompanyName string `description:"客户名称"`
  21. RealName string `description:"用户名称"`
  22. Total int `description:"总阅读数"`
  23. }
  24. // GetUserViewListByDate 根据日期获取用户阅读数
  25. func GetUserViewListByDate(dayStr string) (list []*UserViewMobileTotalSlice, err error) {
  26. o := orm.NewOrm()
  27. sql := `SELECT mobile,sum(view_num) total
  28. FROM user_view_statistics
  29. WHERE 1=1 and date >= ? and mobile !="" group by mobile`
  30. _, err = o.Raw(sql, dayStr).QueryRows(&list)
  31. return
  32. }
  33. // UserViewStatisticsInfo 根据用户手机号字符串获取用户的浏览数和最晚阅读次数
  34. type UserViewStatisticsInfo struct {
  35. Mobile string `description:"用户手机号"`
  36. Total int `description:"总阅读数"`
  37. LastViewTime time.Time `description:"用户浏览时间"`
  38. }
  39. // GetUserViewStatisticsByMobile 根据手机号获取联系人的浏览次数
  40. func GetUserViewStatisticsByMobile(mobile string) (item *UserViewStatisticsInfo, err error) {
  41. o := orm.NewOrm()
  42. sql := `SELECT mobile,sum(view_num) view_total,max(last_view_time) last_view_time FROM user_view_statistics WHERE mobile = ? `
  43. err = o.Raw(sql, mobile).QueryRow(&item)
  44. return
  45. }