mirror of
https://github.com/QuasarApp/Heart.git
synced 2025-04-28 10:44:39 +00:00
fix deleteobject
This commit is contained in:
parent
14f0ef6488
commit
488fb08168
@ -131,10 +131,12 @@ void DataBaseNode::initDefaultDbObjects(ISqlDBCache *cache,
|
||||
_db = cache;
|
||||
|
||||
connect(_db, &SqlDBCache::sigItemChanged,
|
||||
this, &DataBaseNode::handleObjectChanged);
|
||||
this, &DataBaseNode::handleObjectChanged,
|
||||
Qt::DirectConnection);
|
||||
|
||||
connect(_db, &SqlDBCache::sigItemDeleted,
|
||||
this, &DataBaseNode::handleObjectDeleted);
|
||||
this, &DataBaseNode::handleObjectDeleted,
|
||||
Qt::DirectConnection);
|
||||
}
|
||||
|
||||
|
||||
|
@ -103,5 +103,6 @@ qint64 qHash(const DbAddress& address);
|
||||
|
||||
}
|
||||
|
||||
Q_DECLARE_METATYPE(QH::DbAddress)
|
||||
|
||||
#endif // DBADDRESS_H
|
||||
|
@ -113,6 +113,7 @@ ISqlDBCache::ISqlDBCache(qint64 updateInterval, SqlDBCasheWriteMode mode) {
|
||||
lastUpdateTime = QDateTime::currentMSecsSinceEpoch();
|
||||
this->updateInterval = updateInterval;
|
||||
setMode(mode);
|
||||
|
||||
}
|
||||
|
||||
ISqlDBCache::~ISqlDBCache() {
|
||||
|
@ -33,7 +33,7 @@ void DeleteObject::setSignToken(const AccessToken &token) {
|
||||
}
|
||||
|
||||
QString DeleteObject::primaryKey() const {
|
||||
return "";
|
||||
return "id";
|
||||
}
|
||||
|
||||
QDataStream &DeleteObject::fromStream(QDataStream &stream) {
|
||||
|
@ -25,7 +25,7 @@ SingleServer::SingleServer()
|
||||
}
|
||||
|
||||
ErrorCodes::Code SingleServer::registerNewUser(PKG::UserMember user,
|
||||
const AbstractNodeInfo *info) {
|
||||
const AbstractNodeInfo *info) {
|
||||
if (!db()) {
|
||||
return ErrorCodes::InternalError;
|
||||
}
|
||||
@ -160,19 +160,19 @@ ParserResult SingleServer::parsePackage(const QSharedPointer<PKG::AbstractData>
|
||||
}
|
||||
|
||||
if (H_16<QH::PKG::AuthRequest>() == pkg->cmd()) {
|
||||
auto obj = pkg.staticCast<QH::PKG::AuthRequest>();
|
||||
auto obj = pkg.staticCast<QH::PKG::AuthRequest>();
|
||||
|
||||
if (!obj->isValid()) {
|
||||
prepareAndSendBadRequest(sender->networkAddress(), pkgHeader,
|
||||
ErrorCodes::InvalidRequest, REQUEST_ERROR);
|
||||
return ParserResult::Error;
|
||||
}
|
||||
if (!obj->isValid()) {
|
||||
prepareAndSendBadRequest(sender->networkAddress(), pkgHeader,
|
||||
ErrorCodes::InvalidRequest, REQUEST_ERROR);
|
||||
return ParserResult::Error;
|
||||
}
|
||||
|
||||
if (!workWithUserRequest(obj, pkgHeader, sender)) {
|
||||
return QH::ParserResult::Error;
|
||||
}
|
||||
if (!workWithUserRequest(obj, pkgHeader, sender)) {
|
||||
return QH::ParserResult::Error;
|
||||
}
|
||||
|
||||
return QH::ParserResult::Processed;
|
||||
return QH::ParserResult::Processed;
|
||||
|
||||
}
|
||||
|
||||
@ -193,17 +193,19 @@ ParserResult SingleServer::parsePackage(const QSharedPointer<PKG::AbstractData>
|
||||
|
||||
|
||||
if (H_16<PKG::DeleteObject>() == pkg->cmd()) {
|
||||
auto obj = pkg.staticCast<PKG::DeleteObject>();
|
||||
auto obj = pkg.staticCast<PKG::DeleteObject>();
|
||||
|
||||
auto requesterId = getSender(sender, obj.data());
|
||||
if (deleteObject(requesterId, obj) == DBOperationResult::Forbidden) {
|
||||
badRequest(sender->networkAddress(), pkgHeader, {
|
||||
ErrorCodes::OperatioForbiden,
|
||||
"Permision denied"
|
||||
});
|
||||
return ParserResult::Error;
|
||||
auto requesterId = getSender(sender, obj.data());
|
||||
if (deleteObject(requesterId, obj) == DBOperationResult::Forbidden) {
|
||||
badRequest(sender->networkAddress(), pkgHeader, {
|
||||
ErrorCodes::OperatioForbiden,
|
||||
"Permision denied"
|
||||
});
|
||||
return ParserResult::Error;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
return QH::ParserResult::Processed;
|
||||
}
|
||||
|
||||
return QH::ParserResult::NotProcessed;
|
||||
|
Loading…
x
Reference in New Issue
Block a user