activity_points_set.go 3.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. package models
  2. import (
  3. "github.com/beego/beego/v2/client/orm"
  4. "time"
  5. )
  6. type CygxActivityPointsSet struct {
  7. Id int `gorm:"column:id;primary_key;AUTO_INCREMENT" json:"id"`
  8. ActivityId int `gorm:"column:activity_id;NOT NULL" json:"activity_id"` // 活动ID
  9. PointsObject int `gorm:"column:points_object;default:1;NOT NULL" json:"points_object"` // 扣点对象,1:参会人、2:办会人、3:办会人和参会人
  10. CompanyId int `gorm:"column:company_id;default:0;NOT NULL" json:"company_id"` // 公司ID
  11. CompanyName string `gorm:"column:company_name;NOT NULL" json:"company_name"` // 公司名称
  12. UserPointsNum string `gorm:"column:user_points_num;default:0;NOT NULL" json:"user_points_num"` // 参会人扣点数量
  13. PointsType int `gorm:"column:points_type;default:0;NOT NULL" json:"points_type"` // 扣点形式,1:报名即扣点,2:到会即扣点
  14. CompanyPointsNum string `gorm:"column:company_points_num;default:0;NOT NULL" json:"company_points_num"` // 办会人扣点数量
  15. CreateTime time.Time `gorm:"column:create_time;NOT NULL" json:"create_time"` // 创建时间
  16. ModifyTime time.Time `gorm:"column:modify_time;NOT NULL" json:"modify_time"` // 更新时间
  17. }
  18. type CygxActivityPointsSetRsq struct {
  19. ActivityId int `gorm:"column:activity_id;NOT NULL" json:"ActivityId"` // 活动ID
  20. PointsObject int `gorm:"column:points_object;default:1;NOT NULL" json:"PointsObject"` // 扣点对象,1:参会人、2:办会人、3:办会人和参会人
  21. CompanyId int `gorm:"column:company_id;default:0;NOT NULL" json:"CompanyId"` // 公司ID
  22. CompanyName string `gorm:"column:company_name;NOT NULL" json:"CompanyName"` // 公司名称
  23. UserPointsNum string `gorm:"column:user_points_num;default:0;NOT NULL" json:"UserPointsNum"` // 参会人扣点数量
  24. PointsType int `gorm:"column:points_type;default:0;NOT NULL" json:"PointsType"` // 扣点形式,1:报名即扣点,2:到会即扣点
  25. CompanyPointsNum string `gorm:"column:company_points_num;default:0;NOT NULL" json:"CompanyPointsNum"` // 办会人扣点数量
  26. }
  27. type CygxActivityPointsSetConfigListResp struct {
  28. List []*CygxActivityPointsSetConfigResp
  29. }
  30. type CygxActivityPointsSetConfigResp struct {
  31. PointsNum string `gorm:"column:user_points_num;default:0;NOT NULL" json:"PointsNum"` // 扣点数量
  32. }
  33. // 通过活动ID获取详情
  34. func GetCygxActivityPointsSetDetail(activityId int) (item *CygxActivityPointsSetRsq, err error) {
  35. o := orm.NewOrm()
  36. sql := `SELECT * FROM cygx_activity_points_set WHERE activity_id=? `
  37. err = o.Raw(sql, activityId).QueryRow(&item)
  38. return
  39. }
  40. // 通过活动ID获取详情
  41. func GetCygxActivityPointsSetUserNum(activityId int) (userPointsNum float64, err error) {
  42. o := orm.NewOrm()
  43. sql := `SELECT user_points_num FROM cygx_activity_points_set WHERE activity_id=? `
  44. err = o.Raw(sql, activityId).QueryRow(&userPointsNum)
  45. return
  46. }
  47. // 通过互动ID获取数量
  48. func GetCygxActivityPointsSetCountByActivityId(ActivityId int) (count int, err error) {
  49. sqlCount := ` SELECT COUNT(1) AS count FROM cygx_activity_points_set WHERE activity_id=? `
  50. o := orm.NewOrm()
  51. err = o.Raw(sqlCount, ActivityId).QueryRow(&count)
  52. return
  53. }
  54. // 列表
  55. func GetCygxActivityPointsSetList(condition string, pars []interface{}, startSize, pageSize int) (items []*CygxActivityPointsSet, err error) {
  56. o := orm.NewOrm()
  57. sql := `SELECT * FROM cygx_activity_points_set as art WHERE 1= 1 `
  58. if condition != "" {
  59. sql += condition
  60. }
  61. if startSize+pageSize == 0 {
  62. _, err = o.Raw(sql, pars).QueryRows(&items)
  63. } else {
  64. sql += ` LIMIT ?,? `
  65. _, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&items)
  66. }
  67. return
  68. }