Add UI console and spare forecast naming
This commit is contained in:
@@ -123,3 +123,50 @@ func (r *TicketRepository) ListByAsset(ctx context.Context, assetID int64) ([]do
|
||||
}
|
||||
return items, nil
|
||||
}
|
||||
|
||||
func (r *TicketRepository) ListAll(ctx context.Context, limit int) ([]domain.Ticket, error) {
|
||||
if limit <= 0 {
|
||||
limit = 200
|
||||
}
|
||||
rows, err := r.db.QueryContext(ctx,
|
||||
`SELECT t.id, t.source, t.external_id, t.title, t.status, t.opened_at, t.closed_at, t.url, t.created_at, t.updated_at
|
||||
FROM tickets t
|
||||
ORDER BY t.updated_at DESC, t.id DESC
|
||||
LIMIT ?`,
|
||||
limit,
|
||||
)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
defer rows.Close()
|
||||
|
||||
items := make([]domain.Ticket, 0)
|
||||
for rows.Next() {
|
||||
var ticket domain.Ticket
|
||||
var openedAt sql.NullTime
|
||||
var closedAt sql.NullTime
|
||||
var url sql.NullString
|
||||
|
||||
if err := rows.Scan(&ticket.ID, &ticket.Source, &ticket.ExternalID, &ticket.Title, &ticket.Status, &openedAt, &closedAt, &url, &ticket.CreatedAt, &ticket.UpdatedAt); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
if openedAt.Valid {
|
||||
value := openedAt.Time
|
||||
ticket.OpenedAt = &value
|
||||
}
|
||||
if closedAt.Valid {
|
||||
value := closedAt.Time
|
||||
ticket.ClosedAt = &value
|
||||
}
|
||||
if url.Valid {
|
||||
value := url.String
|
||||
ticket.URL = &value
|
||||
}
|
||||
items = append(items, ticket)
|
||||
}
|
||||
if err := rows.Err(); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return items, nil
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user