diff options
Diffstat (limited to 'storage/storage.go')
-rw-r--r-- | storage/storage.go | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/storage/storage.go b/storage/storage.go index 11cbb4a..43162c8 100644 --- a/storage/storage.go +++ b/storage/storage.go @@ -11,6 +11,7 @@ import ( type ChatHistory interface { ListChats() ([]models.Chat, error) GetChatByID(id uint32) (*models.Chat, error) + GetLastChat() (*models.Chat, error) UpsertChat(chat *models.Chat) (*models.Chat, error) RemoveChat(id uint32) error } @@ -31,6 +32,12 @@ func (p ProviderSQL) GetChatByID(id uint32) (*models.Chat, error) { return &resp, err } +func (p ProviderSQL) GetLastChat() (*models.Chat, error) { + resp := models.Chat{} + err := p.db.Get(&resp, "SELECT * FROM chat ORDER BY updated_at DESC LIMIT 1") + return &resp, err +} + func (p ProviderSQL) UpsertChat(chat *models.Chat) (*models.Chat, error) { // Prepare the SQL statement query := ` |