- Timestamp:
- 01/21/10 13:59:22 (13 years ago)
- Branches:
- master, qt5
- Children:
- 96fe8fb
- Parents:
- 72cd3af
- Location:
- src/mvc
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
src/mvc/track.cpp
r72cd3af r606c155 1 1 /* 2 * track.cpp2 * activity.cpp 3 3 * 4 4 * Created on: Dec 27, 2009 … … 7 7 8 8 #include "track.h" 9 #include <QSqlTableModel> 9 10 10 11 QString const Track::sTableName = QString("track"); 11 12 int const Track::sTableColCount = 2; 13 const QString Track::NAME = "name"; 12 14 13 15 QSqlRecord const Track::sColumns = Track::toRecord(QList<QSqlField>() 14 16 << QSqlField("id", QVariant::Int) 15 << QSqlField( "name", QVariant::String));17 << QSqlField(NAME, QVariant::String)); 16 18 17 19 QMap<int, Track> Track::mIdToTrack; 20 21 class TrackInsertException : OrmSqlException 22 { 23 public: 24 TrackInsertException(const QString& text) : OrmSqlException(text) {} 25 }; 26 27 int Track::insert() 28 { 29 QSqlQuery query; 30 query.prepare("INSERT INTO " + sTableName + " (" + NAME + ")" + " VALUES " + "(\"" + name() + "\")"); 31 if (!query.exec()) 32 { 33 throw TrackInsertException("Exec Error"); 34 } 35 QVariant variant = query.lastInsertId(); 36 if (variant.isValid()) 37 return variant.toInt(); 38 else 39 throw TrackInsertException("Last Insert Id Error"); 40 } 41 42 Track Track::retrieveByName(QString name) 43 { 44 QSqlQuery query; 45 query.prepare( 46 selectQuery() 47 + QString("WHERE %1.name = :name").arg(sTableName)); 48 query.bindValue(":name", name); 49 return loadOne(query); 50 } 18 51 19 52 QList<Track> Track::getAll() … … 39 72 QString name = mIdToTrack.value(id).name(); 40 73 if (name == "") { 41 qDebug() << QString("Error: undefined trackname for id %1").arg(id);74 qDebug() << QString("Error: undefined activity name for id %1").arg(id); 42 75 } 43 76 return name; -
src/mvc/track.h
r72cd3af r606c155 6 6 */ 7 7 8 #ifndef TRACK_H 9 #define TRACK_H 8 #ifndef TRACK_H_ 9 #define TRACK_H_ 10 10 11 11 #include <ormrecord.h> … … 15 15 public: 16 16 static const QSqlRecord sColumns; 17 static const QSqlRecord sInsertColumns; 17 18 static QString const sTableName; 18 19 static const int sTableColCount; 20 static const QString NAME; 19 21 public: 20 22 static QMap<int, Track> mIdToTrack; 21 23 public: 22 static QList<Track> getAll();24 int insert(); 23 25 int id() const { return value("id").toInt(); } 24 26 void setId(int id) { setValue("id", id); } … … 26 28 void setName(const QString & type) { setValue("name", type); } 27 29 public: 30 //static void 31 static QList<Track> getAll(); 32 static Track retrieveByName(QString name); 28 33 static void updateTrackMap(); 29 34 static QString getTrackName(int id); 30 35 }; 31 36 32 #endif /* TRACK_H */ 33 37 #endif /* TRACK_H_ */
Note: See TracChangeset
for help on using the changeset viewer.