Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision c6a0f442

Von Christian Ehringfeld vor mehr als 7 Jahren hinzugefügt

  • ID c6a0f4429295ff2a30b7919cbcc24fa3673fd5a4
  • Vorgänger fcbf1918
  • Nachfolger 638d11c8

argh...

Unterschiede anzeigen:

samples/simple/main.cpp
#include "person.h"
#include "pupil.h"
#include "group.h"
#include "address.h"
#include "contact.h"
#include "occasion.h"
#include "ratingmarkdefinition.h"
#include "ratingmarksystem.h"
#include "ratingmarkincident.h"
......
using namespace CuteEntityManager;
int main(int argc, char *argv[]) {
Q_UNUSED(argc) Q_UNUSED(argv);
EntityInstanceFactory::registerClass<Address>();
EntityInstanceFactory::registerClass<Contact>();
EntityInstanceFactory::registerClass<Person>();
EntityInstanceFactory::registerClass<Pupil>();
EntityInstanceFactory::registerClass<Group>();
EntityInstanceFactory::registerClass<Occasion>();
EntityInstanceFactory::registerClass<Incident>();
EntityInstanceFactory::registerClass<RatingMarkDefinition>();
EntityInstanceFactory::registerClass<RatingMarkIncident>();
......
QSharedPointer<CuteEntityManager::EntityManager> e =
QSharedPointer<CuteEntityManager::EntityManager>(new
CuteEntityManager::EntityManager("QSQLITE",
QDir::currentPath() + "/db.sqlite"));
QDir::currentPath() + "/db.sqlite","","","","",true));
qDebug()<<QDir::currentPath();
QStringList inits = QStringList() << "Address" << "Contact" << "Person" << "Pupil" << "Group" << "Incident" << "Occasion" << "RatingMarkDefinition" << "RatingMarkIncident" << "RatingMarkSystem";
QStringList inits = QStringList() << "Person" << "Pupil" << "Group" << "Incident" << "RatingMarkDefinition" << "RatingMarkIncident" << "RatingMarkSystem";
e->startup("0.1", inits);
try {
......
firstGroup->addPerson(pupil1);
e->save(QList<QSharedPointer<Entity>>()<<pupil1<<firstGroup);
QSharedPointer<Occasion> occasion = QSharedPointer<Occasion>(new Occasion(""));
QSharedPointer<RatingMarkIncident> firstInc = QSharedPointer<RatingMarkIncident>(new RatingMarkIncident());
firstInc->setAdditionalInfo("addInf");
firstInc->setBookedAt(QDateTime::currentDateTime());
firstInc->setBookedFor(QDateTime::currentDateTime());
firstInc->setOccasion(occasion);
firstInc->setPupil(pupil1);
firstInc->setRateable(true);
auto system = e->findAll<RatingMarkSystem>().first();
......
inc->setWeight(1.0);
inc->setRateable(true);
inc->setSignatureNeeded(false);
inc->setOccasion(e->findById<Occasion>(1));
auto rateSys = e->findById<RatingMarkSystem>(1);
e->refresh(rateSys);
inc->setRatingMarkSystem(rateSys);
// ---------------------------------------------------------------------
bool success;
success = oldInc.isNull() || e->save(oldInc);
success &= e->save(inc);
success = !oldInc.isNull() && e->save(oldInc);
// only save new version if old version could is successfully cancelled
if (success) {
success &= e->save(inc);

Auch abrufbar als: Unified diff