#ifndef URLDATABASE_H
#define URLDATABASE_H

#include <QObject>
#include <QSqlDatabase>
#include <QSqlQuery>
#include <QSqlError>
#include <QDateTime>

class ImageUrlDatabase : public QObject
{
    Q_OBJECT
public:
    explicit ImageUrlDatabase(QObject *parent = nullptr);
    ~ImageUrlDatabase();

    bool openDatabase(const QString &path);

    // 用户操作
    int addUser(const QString &username);

    // 服务器操作
    int addServer(const QString &domain);

    // 图片URL操作
    bool addImageUrl(const QString &username, const QString &domain, const QString &imageUrl);
    QList<QString> getUserImages(const QString &username);
    QList<QString> getServerImages(const QString &domain);
    bool updateLastAccessed(const QString &username, const QString &domain, const QString &imageUrl);

private:
    QSqlDatabase m_db;

    // 内部辅助方法
    int getUserId(const QString &username);
    int getServerId(const QString &domain);
};

#endif // URLDATABASE_H
