互动
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

36 lines
1.6 KiB

5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
  1. package models
  2. import (
  3. "github.com/ouxuanserver/osmanthuswine/src/core"
  4. "time"
  5. )
  6. const SignHistoryTN = TableNamePrefix + "sign_history"
  7. //签到历史表
  8. type SignHistory struct {
  9. Id int64 `json:"id" xorm:"pk autoincr comment('主键') INT(11)"`
  10. AreaId int64 `json:"area_id" xorm:"not null default 0 comment('地区id') INT(11)"`
  11. ActivityId int64 `json:"activity_id" xorm:"not null default 0 comment('主活动id') INT(11)"`
  12. RehearsalId int64 `json:"rehearsal_id" xorm:"not null default 0 comment('彩排id/ 0正式') INT(11)"`
  13. SignRuleId int64 `json:"sign_rule_id" xorm:"not null default 0 comment('sign_up表id') INT(11)"`
  14. Type int `json:"type" xorm:"not null default 0 comment('普通签到') INT(2)"`
  15. UserId int64 `json:"user_id" xorm:"not null default 0 comment('用户表id') INT(11)"`
  16. IsDelete bool `json:"is_delete" xorm:"not null default(0) comment('删除') TINYINT(1)"`
  17. CreatedAt time.Time `json:"created_at" xorm:"not null created comment('创建时间') DATETIME"`
  18. UpdatedAt time.Time `json:"updated_at" xorm:"not null updated comment('更新时间') DATETIME"`
  19. }
  20. func (t *SignHistory) TableName() string {
  21. return SignHistoryTN
  22. }
  23. func (t *SignHistory) GetByUserId(aid, uid, rid, arid int64) (bool, error) {
  24. return core.GetXormAuto().Where("is_delete=0 and activity_id=? and user_id=? and "+
  25. "rehearsal_id=? and area_id=?", aid, uid, rid, arid).Get(t)
  26. }
  27. func (t *SignHistory) Count(id, aid, rid interface{}) (int64, error) {
  28. // 签到人数
  29. return core.GetXormAuto().Where("is_delete=0 and sign_rule_id=? and rehearsal_id=? and activity_id=?", id, aid, rid).Count(t)
  30. }