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 }