2024-05-18 17:12:24 +08:00
|
|
|
|
package dao
|
|
|
|
|
|
|
2024-05-21 15:13:01 +08:00
|
|
|
|
import (
|
|
|
|
|
|
"fmt"
|
2024-06-03 17:13:23 +08:00
|
|
|
|
"gorm.io/gorm"
|
2024-06-28 10:10:23 +08:00
|
|
|
|
"videoplayer/proto"
|
2024-05-21 15:13:01 +08:00
|
|
|
|
)
|
2024-05-18 18:16:34 +08:00
|
|
|
|
|
2024-05-18 17:12:24 +08:00
|
|
|
|
type User struct {
|
2024-06-03 17:13:23 +08:00
|
|
|
|
gorm.Model
|
2024-05-18 17:12:24 +08:00
|
|
|
|
Name string `gorm:"column:name"`
|
|
|
|
|
|
Age int `gorm:"column:age"`
|
|
|
|
|
|
Email string `gorm:"column:email"`
|
|
|
|
|
|
Password string `gorm:"column:password"`
|
|
|
|
|
|
Gender string `gorm:"column:gender"`
|
|
|
|
|
|
CreateTime string `gorm:"column:create_time"`
|
|
|
|
|
|
UpdateTime string `gorm:"column:update_time"`
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2024-07-01 19:32:58 +08:00
|
|
|
|
func CreateUser(name, password, email, gender string, age int) uint {
|
|
|
|
|
|
user := User{Name: name, Email: email, Password: password, Gender: gender, Age: age}
|
2024-07-02 20:11:25 +08:00
|
|
|
|
res := DB.Debug().Create(&user)
|
|
|
|
|
|
if res.Error != nil {
|
|
|
|
|
|
return 0
|
|
|
|
|
|
}
|
2024-05-18 17:12:24 +08:00
|
|
|
|
return user.ID
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
func DeleteUserByID(id int) int {
|
|
|
|
|
|
DB.Delete(&User{}, id)
|
|
|
|
|
|
return id
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2024-06-28 10:38:55 +08:00
|
|
|
|
func FindUserByID(id int) []proto.User {
|
|
|
|
|
|
var users []proto.User
|
2024-06-28 10:10:23 +08:00
|
|
|
|
DB.Debug().Where("id = ?", id).First(&users)
|
|
|
|
|
|
return users
|
2024-05-18 17:12:24 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
2024-07-07 11:57:33 +08:00
|
|
|
|
func FindUserByUserID(id int) User {
|
|
|
|
|
|
var user User
|
|
|
|
|
|
DB.Debug().Where("id = ?", id).First(&user)
|
|
|
|
|
|
return user
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2024-05-18 17:12:24 +08:00
|
|
|
|
func FindUserByName(name string) User {
|
|
|
|
|
|
var user User
|
2024-05-18 18:16:34 +08:00
|
|
|
|
fmt.Println("name:", name)
|
2024-05-18 17:12:24 +08:00
|
|
|
|
DB.Debug().Where("name = ?", name).First(&user)
|
|
|
|
|
|
return user
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2024-06-28 10:10:23 +08:00
|
|
|
|
// 根据name模糊查询,邮箱也是,不查询密码
|
2024-06-28 10:38:55 +08:00
|
|
|
|
func FindUserByNameLike(name string) []proto.User {
|
|
|
|
|
|
var users []proto.User
|
2024-06-28 10:10:23 +08:00
|
|
|
|
DB.Debug().Where("name LIKE ? OR email LIKE ?", "%"+name+"%", "%"+name+"%").Find(&users)
|
|
|
|
|
|
return users
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2024-05-18 17:12:24 +08:00
|
|
|
|
func FindUserByEmail(email string) User {
|
|
|
|
|
|
var user User
|
|
|
|
|
|
DB.Debug().Where("email = ?", email).First(&user)
|
|
|
|
|
|
return user
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
func UpdateUserByID(id int, name, password, email string) {
|
|
|
|
|
|
DB.Model(&User{}).Where("id = ?", id).Updates(User{Name: name, Password: password, Email: email})
|
|
|
|
|
|
}
|