Files
tgex-backend/tg_parser/internal/domain/post.go
2026-01-28 12:34:00 +03:00

37 lines
775 B
Go

package domain
import (
"fmt"
"time"
"github.com/google/uuid"
)
type Post struct {
ID uuid.UUID
ChannelID uuid.UUID
MessageID int
Text string
Link string
Views int
PublishedAt time.Time
}
func NewPost(channel Channel, messageID int, text string, views int, publishedAt time.Time) Post {
link := ""
if channel.Username != "" {
link = fmt.Sprintf("https://t.me/%s/%d", channel.Username, messageID)
} else if channel.TelegramID != 0 {
link = fmt.Sprintf("https://t.me/c/%d/%d", ChannelIDFromChatID(channel.TelegramID), messageID)
}
return Post{
ID: uuid.New(),
ChannelID: channel.ID,
MessageID: messageID,
Text: text,
Link: link,
Views: views,
PublishedAt: publishedAt,
}
}