var database = require('./../../models/index').database
var GError = require('./../../helper/Gerror').G_Error
var libMessage = require('./../../helper/constant')
module.exports = function (input) {
return database.select('expand(first(in("haslogin")))')
.from('Login').where({
token: input.token,
active: true
}).one()
.then(function (user) {
console.log(user)
if (!user) {
throw GError(libMessage.error.INVALID_TOKEN)
}
if (user.role !== 'admin') {
throw GError(libMessage.error.INVALID_PERMISSION)
}
return database.select().from('Product').where(
'@rid = ' + input.productId
).one()
}).then(function (product) {
if (!product) {
throw GError(libMessage.error.MISSING_PRODUCT)
}
return database.update('Product').set({
status: false
}).where('@rid = ' + input.productId)
.scalar()
}).then(function (data) {
if (!data) {
throw GError(libMessage.error.HANDLE_FAIL)
}
return {
message: libMessage.success.SUCCESSFUL.message
}
}).then(function (success) {
input.returnSuccessResponse(input.res, success)
}, function (error) {
input.returnErrorResponse(input.res, error)
})
}
我正在使用 nodejs 和 Seneca。我使用OrientDB
数据库。我用它在 OrientDB 中扩展,但结果不如预期。
当我 console.log(用户)时,它产生了一个结果:
{'@rid': {[String: '# 12: 37'] 集群:12,位置:37}}
我使用的查询是:
选择 expand (first (print ("haslogin"))) from where the Login token = 'f3a93042ee17776443458b315416bfd430cb7e7ab5f85e9f39232d1093ef7c74' and active = true结果在代码中和在数据库中不一样