package models import ( "fmt" "github.com/ouxuanserver/osmanthuswine/src/core" "github.com/pkg/errors" "time" ) const RealSignListTN = TableNamePrefix + "real_sign_list" type RealSignList struct { Id int64 `json:"id"` ActivityId int64 `json:"activity_id"` JsonList string `json:"json_list"` UserId int64 `json:"user_id"` IsDelete bool `json:"is_delete" xorm:"default(0)" description:"是否删除"` CreatedAt time.Time `json:"created_at" xorm:"created" description:"创建时间"` UpdatedAt time.Time `json:"updated_at" xorm:"updated" description:"更新时间"` } func (t *RealSignList) TableName() string { return RealSignListTN } func (t *RealSignList) CheckSignIn(uid int64, aid int64) (bool, error) { exist, err := core.GetXormAuto().Where("is_delete=0 and user_id=? and activity_id=?", uid, aid).Exist(t) return exist, errors.WithStack(err) } // 可能使用模糊匹配 func (t *RealSignList) SignIn(uid, aid int64, ext string) (int64, error) { t.UserId = uid var sql = fmt.Sprintf("is_delete=0 and user_id=0 and activity_id=%d %s", aid, ext) return core.GetXormAuto().Where(sql).Cols("user_id").Update(t) }