52 行
892 B
Go
52 行
892 B
Go
package dao
|
|
|
|
import (
|
|
"gorm.io/gorm"
|
|
"integrity-checkin/data/po"
|
|
)
|
|
|
|
type UserDAO struct {
|
|
Tx *gorm.DB
|
|
}
|
|
|
|
func (u UserDAO) FindUserByUsername(username string) *po.User {
|
|
var user po.User
|
|
err := u.Tx.Take(&user, "username=?", username).Error
|
|
if err == gorm.ErrRecordNotFound {
|
|
return nil
|
|
}
|
|
if err != nil {
|
|
panic(err)
|
|
}
|
|
return &user
|
|
}
|
|
func (u UserDAO) FindUserByID(id int) *po.User {
|
|
var user po.User
|
|
err := u.Tx.Take(&user, id).Error
|
|
if err == gorm.ErrRecordNotFound {
|
|
return nil
|
|
}
|
|
if err != nil {
|
|
panic(err)
|
|
}
|
|
return &user
|
|
}
|
|
func (u UserDAO) SaveUser(user *po.User) {
|
|
err := u.Tx.Save(user).Error
|
|
if err != nil {
|
|
panic(err)
|
|
}
|
|
}
|
|
func (u UserDAO) CreateUser(username string, realName string) *po.User {
|
|
user := po.User{
|
|
Username: username,
|
|
RealName: realName,
|
|
RoleID: 1,
|
|
}
|
|
err := u.Tx.Create(&user).Error
|
|
if err != nil {
|
|
panic(err)
|
|
}
|
|
return &user
|
|
}
|