some improvment

This commit is contained in:
blackdal 2017-07-02 18:42:15 +04:30
parent 0f13da95e8
commit 09877631d2
7 changed files with 63 additions and 95 deletions

View File

@ -1,4 +1,4 @@
QT += core widgets sql
QT += core sql
INCLUDEPATH += $$PWD/include

View File

@ -307,8 +307,6 @@ Database::Database(QObject *parent)
Q_D(Database);
// d->changeLogs->sett
DatabasePrivate::lastId++;
// m__change_logs = new TableSet<ChangeLogTable>(this);
qDebug() << "normal constructor called in database";
}
Database::Database(const Database &other, QObject *parent)
@ -323,9 +321,6 @@ Database::Database(const Database &other, QObject *parent)
setDatabaseName(other.databaseName());
setUserName(other.userName());
setPassword(other.password());
qDebug() << "copy constructor called in database";
// m__change_logs = new TableSet<ChangeLogTable>(this);
}
Database::~Database()
@ -504,7 +499,6 @@ QSqlQuery Database::exec(QString sql)
{
Q_D(Database);
qInfo("Execute command: %s", qPrintable(sql));
QSqlQuery q = d->db.exec(sql);
if (d->db.lastError().type() != QSqlError::NoError)
qWarning("Error executing sql command: %s; Command=%s",

View File

@ -53,7 +53,7 @@ TableModel *DatabaseModel::modelByClass(QString className) const
{
for(int i = 0; i < size(); i++){
TableModel *s = at(i);
qDebug() << s->className();
if(s->className() == className)
return s;
}

View File

@ -119,7 +119,7 @@ Q_OUTOFLINE_TEMPLATE QList<T *> Query<T>::toList(int count)
d->orderPhrases,
d->tableName,
d->joinClassName);
qDebug() << sql;
QSqlQuery q = d->database->exec(sql);
// QString pk = TableModel::findByName(d->tableName)->primaryKey();
@ -211,7 +211,6 @@ Q_OUTOFLINE_TEMPLATE QList<F> Query<T>::select(const FieldPhrase<F> f)
d->joinClassName);
QSqlQuery q = d->database->exec(sql);
qDebug() << sql;
while (q.next()) {
QVariant v = q.value(f.data()->text);
ret.append(v.value<F>());
@ -241,7 +240,6 @@ Q_OUTOFLINE_TEMPLATE int Query<T>::count()
d->select = "COUNT(*)";
QSqlQuery q = d->database->exec(d->database->sqlGenertor()->selectCommand("COUNT(*)", d->wheres, d->orders, d->tableName, d->joinClassName));
qDebug() << "sql="<<d->database->sqlGenertor()->selectCommand("COUNT(*)", d->wheres, d->orders, d->tableName, d->joinClassName);
if(q.next())
return q.value(0).toInt();
return 0;
@ -322,7 +320,6 @@ Q_OUTOFLINE_TEMPLATE int Query<T>::update(WherePhrase phrase)
phrase,
d->wheres,
d->tableName);
qDebug() << sql;
QSqlQuery q = d->database->exec(sql);
if (m_autoDelete)
@ -338,7 +335,6 @@ Q_OUTOFLINE_TEMPLATE int Query<T>::remove()
QString sql = d->database->sqlGenertor()->deleteCommand(
d->wheres,
d->tableName);
qDebug() << sql;
QSqlQuery q = d->database->exec(sql);
return q.numRowsAffected();
}

View File

@ -93,7 +93,6 @@ QStringList SqlGeneratorBase::diff(DatabaseModel lastModel, DatabaseModel newMod
TableModel *oldTable = lastModel.model(tableName);
TableModel *newTable = newModel.model(tableName);
QString sql = diff(oldTable, newTable);
qDebug() << "diff sql"<<sql;
ret << sql;
}

View File

@ -155,7 +155,7 @@ TableModel::TableModel(int typeId, QString tableName)
_typeId = typeId;
_name = tableName;
_className = tableMetaObject->className();
qDebug() << "my name is" << _className;
//#ifdef NUT_NAMESPACE
// if(_className.startsWith(QT_STRINGIFY(NUT_NAMESPACE) "::"))
// _className = _className.replace(QT_STRINGIFY(NUT_NAMESPACE) "::", "");
@ -191,10 +191,6 @@ qDebug() << "my name is" << _className;
continue;
fieldObj->type = fieldProperty.type();
fieldObj->typeName = QString(fieldProperty.typeName());
// qDebug() <<"fieldProperty.type()"
// <<fieldProperty.typeName()
// << fieldProperty.type()
// << fieldObj->type;
}
// Browse class infos

View File

@ -25,41 +25,43 @@
NUT_BEGIN_NAMESPACE
PhraseData::PhraseData(const char *className, const char *s){
text = QString(s);// QString(className) + "." + s;
PhraseData::PhraseData(const char *className, const char *s)
{
Q_UNUSED(className)
text = QString(s); // QString(className) + "." + s;
type = Field;
operatorCond = NotAssign;
// qDebug() << "(" << this << ")" << "Data type 0";
}
PhraseData::PhraseData(PhraseData *l, PhraseData::Condition o) : left(l){
PhraseData::PhraseData(PhraseData *l, PhraseData::Condition o) : left(l)
{
operatorCond = o;
type = WithoutOperand;
// qDebug() << "(" << this << ")" << "Data type 1";
}
PhraseData::PhraseData(PhraseData *l, PhraseData::Condition o, const PhraseData *r) : left(l), right(r){
PhraseData::PhraseData(PhraseData *l, PhraseData::Condition o,
const PhraseData *r)
: left(l), right(r)
{
operatorCond = o;
type = WithOther;
// qDebug() << "(" << this << ")" << "Data type 2";
}
PhraseData::PhraseData(PhraseData *l, PhraseData::Condition o, QVariant r) : left(l), operand(r){
PhraseData::PhraseData(PhraseData *l, PhraseData::Condition o, QVariant r)
: left(l), operand(r)
{
operatorCond = o;
type = WithVariant;
// qDebug() << "(" << this << ")" << "Data type 1";
}
PhraseData::~PhraseData(){
// qDebug() << "(" << this << ")" << "Data Deleting..." << type;
if(type == WithOther){
// qDebug() << " - Other" << left << right;
PhraseData::~PhraseData()
{
if (type == WithOther) {
delete left;
delete right;
}
if(type == WithVariant){
// qDebug() << " - Variant" << left;
if(left)
if (type == WithVariant) {
if (left)
delete left;
}
}
@ -71,15 +73,12 @@ PhraseData *WherePhrase::data() const
WherePhrase::WherePhrase(const char *className, const char *s)
{
// qDebug() << "(" << this << ")" << "class ctor" << className << s;
_data = new PhraseData(className, s);
}
WherePhrase::WherePhrase(const WherePhrase &l)
{
_data = l._data;
// l._data = 0;
// qDebug() << "(" << this << ")" << "Copy ctor, from" << _data << (&l);
_dataPointer = QSharedPointer<PhraseData>(l._dataPointer);
}
@ -87,8 +86,6 @@ WherePhrase::WherePhrase(WherePhrase *l)
{
_data = l->_data;
// qDebug() << "(" << this << ")" << "From pointer" << _data;
// _dataPointer = QSharedPointer<PhraseData>(_data);
l->_data = 0;
l->_dataPointer.reset(0);
}
@ -96,21 +93,17 @@ WherePhrase::WherePhrase(WherePhrase *l)
WherePhrase::WherePhrase(WherePhrase *l, PhraseData::Condition o)
{
_data = new PhraseData(l->_data, o);
// _dataPointer = QSharedPointer<PhraseData>(_data);
l->_data = 0;
// qDebug() << "(" << this << ")" << "From cond, " << _data << o;
l->_dataPointer.reset(0);
}
WherePhrase::WherePhrase(WherePhrase *l, PhraseData::Condition o, WherePhrase *r)
WherePhrase::WherePhrase(WherePhrase *l, PhraseData::Condition o,
WherePhrase *r)
{
_data = new PhraseData(l->_data, o, r->_data);
// _dataPointer = QSharedPointer<PhraseData>(_data);
l->_data = 0;
r->_data = 0;
// qDebug() << "(" << this << ")" << "From two pointer" << _data;
l->_dataPointer.reset(0);
r->_dataPointer.reset(0);
}
@ -118,133 +111,123 @@ WherePhrase::WherePhrase(WherePhrase *l, PhraseData::Condition o, WherePhrase *r
WherePhrase::WherePhrase(WherePhrase *l, PhraseData::Condition o, QVariant r)
{
_data = new PhraseData(l->_data, o, r);
// _dataPointer = QSharedPointer<PhraseData>(_data);
l->_data = 0;
// qDebug() << "(" << this << ")" << "From variant," << _data << l << r;
l->_dataPointer.reset(0);
}
WherePhrase::~WherePhrase()
{
// qDebug() << "(" << this << ")" << "Dtor" << _data << _dataPointer.data();
// if(_data){
// delete _data;
// qDebug() << "deleted";
// }
}
WherePhrase WherePhrase::operator ==(const WherePhrase &other)
WherePhrase WherePhrase::operator==(const WherePhrase &other)
{
return WherePhrase(this, PhraseData::Equal, (WherePhrase*)&other);
return WherePhrase(this, PhraseData::Equal, (WherePhrase *)&other);
}
WherePhrase WherePhrase::operator !=(const WherePhrase &other)
WherePhrase WherePhrase::operator!=(const WherePhrase &other)
{
return WherePhrase(this, PhraseData::NotEqual, (WherePhrase*)&other);
return WherePhrase(this, PhraseData::NotEqual, (WherePhrase *)&other);
}
WherePhrase WherePhrase::operator <(const WherePhrase &other)
WherePhrase WherePhrase::operator<(const WherePhrase &other)
{
return WherePhrase(this, PhraseData::Less, (WherePhrase*)&other);
return WherePhrase(this, PhraseData::Less, (WherePhrase *)&other);
}
WherePhrase WherePhrase::operator >(const WherePhrase &other)
WherePhrase WherePhrase::operator>(const WherePhrase &other)
{
return WherePhrase(this, PhraseData::Greater, (WherePhrase*)&other);
return WherePhrase(this, PhraseData::Greater, (WherePhrase *)&other);
}
WherePhrase WherePhrase::operator <=(const WherePhrase &other)
WherePhrase WherePhrase::operator<=(const WherePhrase &other)
{
return WherePhrase(this, PhraseData::LessEqual, (WherePhrase*)&other);
return WherePhrase(this, PhraseData::LessEqual, (WherePhrase *)&other);
}
WherePhrase WherePhrase::operator >=(const WherePhrase &other)
WherePhrase WherePhrase::operator>=(const WherePhrase &other)
{
return WherePhrase(this, PhraseData::GreaterEqual, (WherePhrase*)&other);
return WherePhrase(this, PhraseData::GreaterEqual, (WherePhrase *)&other);
}
WherePhrase WherePhrase::operator !()
WherePhrase WherePhrase::operator!()
{
if(_data->operatorCond < 20)
_data->operatorCond = (PhraseData::Condition)((_data->operatorCond + 10) % 20);
if (_data->operatorCond < 20)
_data->operatorCond
= (PhraseData::Condition)((_data->operatorCond + 10) % 20);
else
qFatal("Operator ! can not aplied to non condition statements");
return this;//WherePhrase(this, PhraseData::Not);
return this; // WherePhrase(this, PhraseData::Not);
}
WherePhrase WherePhrase::operator =(const WherePhrase &other)
WherePhrase WherePhrase::operator=(const WherePhrase &other)
{
return WherePhrase(this, PhraseData::Set, (WherePhrase*)&other);
return WherePhrase(this, PhraseData::Set, (WherePhrase *)&other);
}
WherePhrase WherePhrase::operator +(const WherePhrase &other)
WherePhrase WherePhrase::operator+(const WherePhrase &other)
{
return WherePhrase(this, PhraseData::Add, (WherePhrase*)&other);
return WherePhrase(this, PhraseData::Add, (WherePhrase *)&other);
}
WherePhrase WherePhrase::operator -(const WherePhrase &other)
WherePhrase WherePhrase::operator-(const WherePhrase &other)
{
return WherePhrase(this, PhraseData::Minus, (WherePhrase*)&other);
return WherePhrase(this, PhraseData::Minus, (WherePhrase *)&other);
}
WherePhrase WherePhrase::operator *(const WherePhrase &other)
WherePhrase WherePhrase::operator*(const WherePhrase &other)
{
return WherePhrase(this, PhraseData::Multiple, (WherePhrase*)&other);
return WherePhrase(this, PhraseData::Multiple, (WherePhrase *)&other);
}
WherePhrase WherePhrase::operator /(const WherePhrase &other)
WherePhrase WherePhrase::operator/(const WherePhrase &other)
{
return WherePhrase(this, PhraseData::Divide, (WherePhrase*)&other);
return WherePhrase(this, PhraseData::Divide, (WherePhrase *)&other);
}
WherePhrase WherePhrase::operator &&(const WherePhrase &other)
WherePhrase WherePhrase::operator&&(const WherePhrase &other)
{
return WherePhrase(this, PhraseData::And, (WherePhrase*)&other);
return WherePhrase(this, PhraseData::And, (WherePhrase *)&other);
}
WherePhrase WherePhrase::operator ||(const WherePhrase &other)
WherePhrase WherePhrase::operator||(const WherePhrase &other)
{
return WherePhrase(this, PhraseData::Or, (WherePhrase*)&other);
return WherePhrase(this, PhraseData::Or, (WherePhrase *)&other);
}
WherePhrase WherePhrase::operator &(const WherePhrase &other)
WherePhrase WherePhrase::operator&(const WherePhrase &other)
{
return WherePhrase(this, PhraseData::Append, (WherePhrase*)&other);
return WherePhrase(this, PhraseData::Append, (WherePhrase *)&other);
}
WherePhrase WherePhrase::operator ==(const QVariant &other)
WherePhrase WherePhrase::operator==(const QVariant &other)
{
return WherePhrase(this, PhraseData::Equal, other);
}
WherePhrase WherePhrase::operator !=(const QVariant &other)
WherePhrase WherePhrase::operator!=(const QVariant &other)
{
return WherePhrase(this, PhraseData::NotEqual, other);
}
WherePhrase WherePhrase::operator <(const QVariant &other)
WherePhrase WherePhrase::operator<(const QVariant &other)
{
return WherePhrase(this, PhraseData::Less, other);
}
WherePhrase WherePhrase::operator >(const QVariant &other)
WherePhrase WherePhrase::operator>(const QVariant &other)
{
return WherePhrase(this, PhraseData::Greater, other);
}
WherePhrase WherePhrase::operator <=(const QVariant &other)
WherePhrase WherePhrase::operator<=(const QVariant &other)
{
return WherePhrase(this, PhraseData::LessEqual, other);
}
WherePhrase WherePhrase::operator >=(const QVariant &other)
WherePhrase WherePhrase::operator>=(const QVariant &other)
{
return WherePhrase(this, PhraseData::GreaterEqual, other);
}
NUT_END_NAMESPACE