init: Initial commit
This commit is contained in:
40
app/repositories/users.go
Normal file
40
app/repositories/users.go
Normal file
@@ -0,0 +1,40 @@
|
||||
package repositories
|
||||
|
||||
import (
|
||||
"git.secnex.io/secnex/masterlog"
|
||||
"git.secnex.io/secnex/mgmt-api/database"
|
||||
"git.secnex.io/secnex/mgmt-api/models"
|
||||
)
|
||||
|
||||
func GetUserByUsername(username string) (*models.User, error) {
|
||||
var user *models.User
|
||||
if err := database.DB.Where("username = ?", username).First(&user).Error; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return user, nil
|
||||
}
|
||||
|
||||
func GetUserByUniqueFields(username, email string) (*models.User, error) {
|
||||
var user *models.User
|
||||
if err := database.DB.Where("username = ? OR email = ?", username, email).First(&user).Error; err != nil {
|
||||
return nil, nil
|
||||
}
|
||||
return user, nil
|
||||
}
|
||||
|
||||
func CreateUser(firstName, lastName, username, password, email string) error {
|
||||
user := &models.User{
|
||||
FirstName: firstName,
|
||||
LastName: lastName,
|
||||
Username: username,
|
||||
Password: password,
|
||||
Email: email,
|
||||
}
|
||||
|
||||
if err := database.DB.Create(user).Error; err != nil {
|
||||
masterlog.Debug("Failed to create user in database", map[string]interface{}{"error": err.Error(), "username": username, "email": email})
|
||||
return err
|
||||
}
|
||||
masterlog.Debug("User created successfully", map[string]interface{}{"username": username, "email": email})
|
||||
return nil
|
||||
}
|
||||
Reference in New Issue
Block a user