Setting up database functions: inserting a reservation
This commit is contained in:
		@ -1,5 +1,29 @@
 | 
			
		||||
package dbrepo
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"context"
 | 
			
		||||
	"go-udemy-web-1/internal/models"
 | 
			
		||||
	"time"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
func (m *postgresDBRepo) AllUsers() bool {
 | 
			
		||||
	return true
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// InsertReservation inserts a reservation into the database
 | 
			
		||||
func (m *postgresDBRepo) InsertReservation(res models.Reservation) error {
 | 
			
		||||
	ctx, cancel := context.WithTimeout(context.Background(), 3*time.Second)
 | 
			
		||||
	defer cancel()
 | 
			
		||||
	// statement
 | 
			
		||||
	stmt := `insert into reservations (first_name, last_name, email, phone,
 | 
			
		||||
	            start_date, end_date, room_id, created_at, updated_at)
 | 
			
		||||
	            values ($1, $2, $3, $4, $5, $6, $7, $8, $9)`
 | 
			
		||||
 | 
			
		||||
	_, err := m.DB.ExecContext(ctx, stmt, res.FirstName, res.LastName, res.Email, res.Phone,
 | 
			
		||||
		res.StartDate, res.EndDate, res.RoomID, res.CreatedAt, res.UpdatedAt)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return err
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -1,5 +1,9 @@
 | 
			
		||||
package repository
 | 
			
		||||
 | 
			
		||||
import "go-udemy-web-1/internal/models"
 | 
			
		||||
 | 
			
		||||
type DatabaseRepo interface {
 | 
			
		||||
	AllUsers() bool
 | 
			
		||||
 | 
			
		||||
	InsertReservation(res models.Reservation) error
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
		Reference in New Issue
	
	Block a user