feat(tester): extend GetContestResponse

This commit is contained in:
Vyacheslav1557 2025-03-02 00:29:31 +05:00
parent e6088953b9
commit 81d7aa2366
17 changed files with 539 additions and 238 deletions

View file

@ -4,18 +4,15 @@ import (
"context"
"git.sch9.ru/new_gate/ms-tester/internal/models"
"github.com/jmoiron/sqlx"
"go.uber.org/zap"
)
type ContestRepository struct {
db *sqlx.DB
logger *zap.Logger
db *sqlx.DB
}
func NewContestRepository(db *sqlx.DB, logger *zap.Logger) *ContestRepository {
func NewContestRepository(db *sqlx.DB) *ContestRepository {
return &ContestRepository{
db: db,
logger: logger,
db: db,
}
}
@ -136,3 +133,28 @@ func (r *ContestRepository) DeleteParticipant(ctx context.Context, participantId
}
return nil
}
const readTasksQuery = `SELECT tasks.id,
problem_id,
contest_id,
position,
title,
memory_limit,
time_limit,
tasks.created_at,
tasks.updated_at
FROM tasks
INNER JOIN problems ON tasks.problem_id = problems.id
WHERE contest_id = ? ORDER BY position`
func (r *ContestRepository) ReadRichTasks(ctx context.Context, contestId int32) ([]*models.RichTask, error) {
const op = "ContestRepository.ReadTasks"
var tasks []*models.RichTask
query := r.db.Rebind(readTasksQuery)
err := r.db.SelectContext(ctx, &tasks, query, contestId)
if err != nil {
return nil, handlePgErr(err, op)
}
return tasks, nil
}

View file

@ -4,18 +4,17 @@ import (
"context"
"git.sch9.ru/new_gate/ms-tester/internal/models"
"github.com/jmoiron/sqlx"
"go.uber.org/zap"
)
type ProblemRepository struct {
db *sqlx.DB
logger *zap.Logger
db *sqlx.DB
//logger *zap.Logger
}
func NewProblemRepository(db *sqlx.DB, logger *zap.Logger) *ProblemRepository {
func NewProblemRepository(db *sqlx.DB) *ProblemRepository {
return &ProblemRepository{
db: db,
logger: logger,
db: db,
//logger: logger,
}
}