@@ -46,10 +46,10 @@ func CloseConnection(db *sql.DB) {
4646}
4747
4848// GetUserByID returns an models.User identified by it's ID or a ErrUserNotFound error when the user cannot be found.
49- func GetUserByID (db * sql.DB , ID int ) (models.User , error ) {
50- rows , err := db .Query ("SELECT id, username, createdAt, password, email FROM users WHERE id = ?" , ID )
49+ func GetUserByID (db * sql.DB , ID int ) (models.UserResponse , error ) {
50+ rows , err := db .Query ("SELECT id, username, createdAt, email FROM users WHERE id = ?" , ID )
5151 if err != nil {
52- return models.User {}, err
52+ return models.UserResponse {}, err
5353 }
5454
5555 if rows .Next () {
@@ -60,16 +60,16 @@ func GetUserByID(db *sql.DB, ID int) (models.User, error) {
6060 var email string
6161 err = rows .Scan (& id , & username , & createdAt , & password , & email )
6262 if err != nil {
63- return models.User {}, err
63+ return models.UserResponse {}, err
6464 }
6565
66- return models.User {ID : id , Username : username , CreatedAt : createdAt , Password : password , Email : email }, nil
66+ return models.UserResponse {ID : id , Username : username , CreatedAt : createdAt , Email : email }, nil
6767 }
68- return models.User {}, ErrUserNotFound
68+ return models.UserResponse {}, ErrUserNotFound
6969}
7070
7171// CreateUser create an user in the database and returns the ID of the user being inserted. This method returns a ErrUsernameIsNotUnique or ErrEmailIsNotUnique when the username or email of an user is not unique.
72- func CreateUser (db * sql.DB , user * models.User ) (int , error ) {
72+ func CreateUser (db * sql.DB , user * models.UserCreate ) (int , error ) {
7373 // check unique username
7474 query := "SELECT * FROM users WHERE username = ?"
7575 rows , err := db .Query (query , user .Username )
@@ -112,7 +112,7 @@ func CreateUser(db *sql.DB, user *models.User) (int, error) {
112112}
113113
114114// UpdateUser updates the username and email of an user. (note: this method does not check if user is authorized to update this row)
115- func UpdateUser (db * sql.DB , user * models.User ) (int , error ) {
115+ func UpdateUser (db * sql.DB , user * models.UserResponse ) (int , error ) {
116116 _ , err := db .Exec ("UPDATE users SET username = ?, email = ? WHERE id = ?" , user .Username , user .Email , user .ID )
117117 if err != nil {
118118 log .Errorf ("Error inserting" )
@@ -123,7 +123,7 @@ func UpdateUser(db *sql.DB, user *models.User) (int, error) {
123123}
124124
125125// DeleteUser deletes an user from the database. Method does not check if the caller is authorized to perform this action. Method returns the number of rows affected by query. (should be 1)
126- func DeleteUser (db * sql.DB , user * models.User ) (int , error ) {
126+ func DeleteUser (db * sql.DB , user * models.UserResponse ) (int , error ) {
127127 if user .ID > 0 {
128128 res , err := db .Exec ("DELETE from users WHERE id = ?" , user .ID )
129129 if err != nil {
@@ -145,13 +145,13 @@ func DeleteUser(db *sql.DB, user *models.User) (int, error) {
145145}
146146
147147// GetUsers returns a list of all database-users. Note: Consider implementing a paging function because this method returns EVERY users at once.
148- func GetUsers (db * sql.DB ) ([]models.User , error ) {
148+ func GetUsers (db * sql.DB ) ([]models.UserResponse , error ) {
149149
150150 rows , err := db .Query ("SELECT id, username, email, createdAt FROM users" )
151151 if err != nil {
152152 return nil , err
153153 }
154- persons := make ([]models.User , 0 )
154+ persons := make ([]models.UserResponse , 0 )
155155
156156 for rows .Next () {
157157 var id int
@@ -162,7 +162,7 @@ func GetUsers(db *sql.DB) ([]models.User, error) {
162162 if err != nil {
163163 return nil , err
164164 }
165- persons = append (persons , models.User {ID : id , Username : username , CreatedAt : createdAt })
165+ persons = append (persons , models.UserResponse {ID : id , Username : username , CreatedAt : createdAt })
166166 }
167167 return persons , nil
168168}
0 commit comments