task_manager/internal/persistance/project_repository.go
Ivan Titov 99cec81d91
Some checks failed
Deploy to Server (Docker) / deploy (push) Failing after 48s
save
2025-03-22 12:12:22 +03:00

42 lines
909 B
Go

package persistance
import (
"task_manager/internal/domain/project"
_ "github.com/lib/pq"
)
func (tm *TaskManagerRepository) AddProject(newProject *project.UserProjectLink) 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
}