Logout
This commit is contained in:
		@@ -26,6 +26,7 @@ type TokenRepository interface {
 | 
			
		||||
	Create(*models.Token) (*models.Token, error)
 | 
			
		||||
	Update(*models.Token) (*models.Token, error)
 | 
			
		||||
	Delete(string) error
 | 
			
		||||
	Invalid(int64, string) error
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (s *tokenRepository) Generate(user_id int64, expire_at int64, role string) (string, error) {
 | 
			
		||||
@@ -69,6 +70,11 @@ func (r *tokenRepository) Update(token *models.Token) (*models.Token, error) {
 | 
			
		||||
	return row, err
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (r *tokenRepository) Invalid(user_id int64, tokenString string) error {
 | 
			
		||||
	err := r.DB.Model(&models.Token{}).Where("user_id = ? AND token = ?", user_id, tokenString).Update("status", "off").Error
 | 
			
		||||
	return err
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (r *tokenRepository) Delete(id string) error {
 | 
			
		||||
	var token *models.Token
 | 
			
		||||
	if err := r.DB.Where("id=?", id).First(&token).Error; err != nil {
 | 
			
		||||
 
 | 
			
		||||
@@ -1,10 +1,10 @@
 | 
			
		||||
package repositories
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"fmt"
 | 
			
		||||
	"learnsteam/cslms-api/internal/models"
 | 
			
		||||
 | 
			
		||||
	"gorm.io/gorm"
 | 
			
		||||
	"gorm.io/gorm/clause"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
type userQuizRepository struct {
 | 
			
		||||
@@ -64,8 +64,7 @@ func (r *userQuizRepository) Create(row *models.UserQuiz) (*models.UserQuiz, err
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (r *userQuizRepository) Insert(items []models.UserQuiz) ([]models.UserQuiz, error) {
 | 
			
		||||
	fmt.Println(items)
 | 
			
		||||
	err := r.DB.Create(&items).Error
 | 
			
		||||
	err := r.DB.Clauses(clause.OnConflict{DoNothing: true}).Create(&items).Error
 | 
			
		||||
	return items, err
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -4,6 +4,7 @@ import (
 | 
			
		||||
	"learnsteam/cslms-api/internal/models"
 | 
			
		||||
 | 
			
		||||
	"gorm.io/gorm"
 | 
			
		||||
	"gorm.io/gorm/clause"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
type userQuizPaperRepository struct {
 | 
			
		||||
@@ -63,7 +64,7 @@ func (r *userQuizPaperRepository) Create(userQuizPaper *models.UserQuizPaper) (*
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (r *userQuizPaperRepository) Insert(items []models.UserQuizPaper) ([]models.UserQuizPaper, error) {
 | 
			
		||||
	err := r.DB.Create(&items).Error
 | 
			
		||||
	err := r.DB.Clauses(clause.OnConflict{DoNothing: true}).Create(&items).Error
 | 
			
		||||
	return items, err
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user