Advertisement
Guest User

Untitled

a guest
Aug 16th, 2017
51
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 4.32 KB | None | 0 0
  1. #ifndef DAL_H
  2. #define DAL_H
  3.  
  4. #include <QSharedPointer>
  5. #include <QMap>
  6. #include <QString>
  7. #include <QSqlDatabase>
  8.  
  9. class Folder
  10. {
  11.     int _folderID ;
  12.     QString _title ;
  13.     QString _accessName ;
  14.     QString _type ;
  15.     bool _isVisible ;
  16.  
  17.     int _baseFolderID ;
  18.     int _baseFolderTimeStamp ;
  19.     int _modifiedTimeStamp ;
  20.     int _creationTimeStamp ;
  21.     int _imagesFolderPath ;
  22.  
  23. public:
  24.     Q_PROPERTY(int folderID READ folderID WRITE setFolderID)
  25.     Q_PROPERTY(QString title READ title WRITE setTitle)
  26.     Q_PROPERTY(QString accessName READ accessName WRITE setAccessName)
  27.     Q_PROPERTY(QString type READ type WRITE setType)
  28.     Q_PROPERTY(bool isVisible READ isVisible WRITE setIsVisible)
  29.  
  30.     Q_PROPERTY(int baseFolderID READ baseFolderID WRITE setBaseFolderID)
  31.     Q_PROPERTY(int baseFolderTimeStamp READ baseFolderTimeStamp WRITE setBaseFolderTimeStamp)
  32.     Q_PROPERTY(int modifiedTimeStamp READ modifiedTimeStamp WRITE setModifiedTimeStamp)
  33.     Q_PROPERTY(int creationTimeStamp READ creationTimeStamp WRITE setCreationTimeStamp)
  34.     Q_PROPERTY(int imagesFolderPath READ imagesFolderPath WRITE setImagesFolderPath)
  35.  
  36.     int folderID() { return _folderID ; }
  37.     int setFolderID(int v) { _folderID = v ; }
  38.  
  39.     bool isVisible() { return _isVisible ; }
  40.     bool setIsVisible(bool v) { _isVisible = v ; }
  41.  
  42.  
  43.     int baseFolderID() { return _baseFolderID ; }
  44.     int setBaseFolderID(int v) { _baseFolderID = v ; }
  45.  
  46.     int baseFolderTimeStamp() { return _baseFolderTimeStamp ; }
  47.     int setBaseFolderTimeStamp(int v) { _baseFolderTimeStamp = v ; }
  48.  
  49.     int modifiedTimeStamp() { return _modifiedTimeStamp ; }
  50.     int setModifiedTimeStamp(int v) { _modifiedTimeStamp = v ; }
  51.  
  52.     int creationTimeStamp() { return _creationTimeStamp ; }
  53.     int setCreationTimeStamp(int v) { _creationTimeStamp = v ; }
  54.  
  55.     int imagesFolderPath() { return _imagesFolderPath ; }
  56.     int setImagesFolderPath(int v) { _imagesFolderPath = v ; }
  57.  
  58.  
  59.     QString title() { return _title ; }
  60.     QString setTitle(QString v) { _title = v ; }
  61.  
  62.     QString accessName() { return _accessName ; }
  63.     QString setAccessName(QString v) { _accessName = v ; }
  64.  
  65.     QString type() { return _type ; }
  66.     QString setType(QString v) { _type = v ; }
  67. } ;
  68.  
  69. class File
  70. {
  71.     int _folderID ;
  72.     int _fileID ;
  73.     QString _title ;
  74.     int _version ;
  75.     int _creationTimeStamp ;
  76.     QString _data ;
  77.  
  78.     bool _isData ;
  79. public:
  80.  
  81.     Q_PROPERTY(int folderID READ folderID WRITE setFolderID)
  82.     Q_PROPERTY(int fileID READ fileID WRITE setFileID)
  83.     Q_PROPERTY(QString title READ title WRITE setTitle)
  84.     Q_PROPERTY(int version READ version WRITE setVersion)
  85.     Q_PROPERTY(int creationTimeStamp READ creationTimeStamp WRITE setCreationTimeStamp)
  86.     Q_PROPERTY(QString data READ data WRITE setData)
  87.  
  88.     int folderID() { return _folderID ;}
  89.     int setFolderID(int v) { _folderID = v ; }
  90.  
  91.     int fileID() { return _fileID ;}
  92.     int setFileID(int v) { _fileID = v ; }
  93.  
  94.     QString title() { return _title ;}
  95.     QString setTitle(QString v) { _title = v ; }
  96.  
  97.     int version() { return _version ;}
  98.     int setVersion(int v) { _version = v ; }
  99.  
  100.     int creationTimeStamp() { return _creationTimeStamp ;}
  101.     int setCreationTimeStamp(int v) { _creationTimeStamp = v ; }
  102.  
  103.     QString data() { return isData ? _data : "" ;}
  104.     QString setData(QString v) { _data = v ; _isData = true ;}
  105.  
  106.     void resetData() { _isData = false ; }
  107.     bool isData() { return _isData ; }
  108. };
  109.  
  110. class DAL
  111. {
  112.     QMap<QString, QString> _settings ;
  113.  
  114.     bool _isInit ;
  115.     QString _source ;
  116.     bool _isReadOnly ;
  117.     QSqlDatabase db ;
  118.  
  119.     Dal() ;
  120.     bool openSqlServer(const QString& connectionString) ;
  121.     bool openSqlite(const QString& path) ;
  122.  
  123. public:
  124.     static QSharedPointer<DAL> create(const QMap<QString, QString>& settings);
  125.  
  126.     bool createFolder(int& fid, const QString& accessName, const QString& title, const QString& type, const QString& imagesFolderPath, bool isVisible) ;
  127.  
  128.     QList<Folder> getFolders(const QString& type) ;
  129.     File getFile(int folderID, const QString& title) ;
  130.     QList<File> getFiles(int folderID) ;
  131.     QList<File> getFilesWithData(int folderID) ;
  132.     bool saveFile(File& file) ;
  133.     bool setFolderProps(bool isSetVisible, bool isVisible, bool isSetTitle, const QString& title, bool isSetImagePath)
  134. };
  135.  
  136. #endif // DAL_H
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement