Some checks failed
Deploy to Server (Docker) / deploy (push) Failing after 47s
41 lines
900 B
Go
41 lines
900 B
Go
package persistance
|
|
|
|
import (
|
|
"task_manager/internal/domain/project"
|
|
|
|
_ "github.com/lib/pq"
|
|
)
|
|
|
|
func (tm *TaskManagerRepository) AddProject(newProject *project.Project) error {
|
|
err := tm.db.QueryRow(`INSERT INTO task_manager.project(name,description)
|
|
VALUES ($1,$2)
|
|
RETURNING id
|
|
`, newProject.Name, newProject.Description).Scan(&newProject.Id)
|
|
if err != nil {
|
|
return err
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (tm *TaskManagerRepository) DeleteProject(project *project.Project) error {
|
|
_, err := tm.db.Exec(`DELETE FROM task_manager.project WHERE id=$1`, project.Id)
|
|
if err != nil {
|
|
return err
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (tm *TaskManagerRepository) AssignProject(link *project.UserProjectLink) error {
|
|
|
|
err := tm.db.QueryRow(`INSERT INTO task_manager.user_project(users,projects)
|
|
VALUES ($1,$2)
|
|
RETURNING id
|
|
`, link.IdUser, link.IdProject).Scan(&link.Id)
|
|
|
|
if err != nil {
|
|
return err
|
|
}
|
|
|
|
return nil
|
|
}
|