package db import ( "time" cortypes "gitlink.org.cn/cloudream/jcs-pub/coordinator/types" ) type UserAccessTokenDB struct { *DB } func (db *DB) UserAccessToken() *UserAccessTokenDB { return &UserAccessTokenDB{DB: db} } func (db *UserAccessTokenDB) GetByID(ctx SQLContext, userID cortypes.UserID, tokenID cortypes.AccessTokenID) (cortypes.UserAccessToken, error) { var ret cortypes.UserAccessToken err := ctx.Table("UserAccessToken").Where("UserID = ? AND TokenID = ?", userID, tokenID).First(&ret).Error return ret, err } func (*UserAccessTokenDB) Create(ctx SQLContext, token *cortypes.UserAccessToken) error { return ctx.Table("UserAccessToken").Create(token).Error } func (db *UserAccessTokenDB) DeleteByID(ctx SQLContext, userID cortypes.UserID, tokenID cortypes.AccessTokenID) error { return ctx.Table("UserAccessToken").Where("UserID = ? AND TokenID = ?", userID, tokenID).Delete(&cortypes.UserAccessToken{}).Error } func (*UserAccessTokenDB) DeleteExpired(ctx SQLContext, expireTime time.Time) error { return ctx.Table("UserAccessToken").Where("ExpiresAt < ?", expireTime).Delete(&cortypes.UserAccessToken{}).Error }