用户notebooks, tags, notes的数量统计

This commit is contained in:
life
2015-11-25 18:59:31 +08:00
parent 4a6dadf903
commit bb20eb1f54
2 changed files with 105 additions and 0 deletions

63
node_modules/user.js generated vendored
View File

@@ -332,6 +332,69 @@ User = {
};
},
// 加载用户的DB, 这样才能统计
_loadUserDB: function (user) {
var me = this;
var sourceDB = {};
var names = ['notebooks', 'notes', 'tags'];
if (user.UserId === me.userId) {
return db;
}
if (user.HasDB) {
db.initIt(sourceDB, names, user.UserId, false);
}
else {
if (!me.hasDB) {
return db;
}
else {
db.initIt(sourceDB, names, '', false);
}
}
return sourceDB;
},
// notebook, note, tag统计
getUserDBDataStats: function (user, callback) {
var me = this;
var data = {};
var userId = user.UserId;
var sourceDB = me._loadUserDB(user);
var query = {UserId: userId,
$or:[
{LocalIsDelete: {$exists: false}},
{LocalIsDelete: false}
],
$or:[
{IsDeleted: {$exists: false}},
{IsDeleted: false}
],
$or:[
{IsTrash: {$exists: false}},
{IsTrash: false}
]
};
sourceDB.notebooks.count(query, function (err, n) {
data.notebook = n;
sourceDB.notes.count(query, function (err, n) {
data.note = n;
sourceDB.tags.count(query, function (err, n) {
data.tag = n;
// 垃圾回收
if (sourceDB != db) {
sourceDB = null;
}
callback(data);
});
});
});
},
setUserDataPath: function(userId) {
var me = this;
// 判断是否存在, 不存在则创建dir