Commit ddf9fcad authored by 杨翌文's avatar 杨翌文

优化逻辑

parent c7ec4922
...@@ -209,21 +209,19 @@ exports.getByConditions = function(conditions, callback) { ...@@ -209,21 +209,19 @@ exports.getByConditions = function(conditions, callback) {
} }
//根据ID获取文章 //根据ID获取文章
exports.getThreadById = function(tid, callback) { exports.getThreadById = function(tid, callback) {
async.parallel([
function(cb) { ForumThread.findOne({_id: tid}, singleThreadFields).populate('from','uid mid nickName exp').populate('info','name icon').populate('share').exec(function(err, doc) {
var conditions = {
_id: tid
};
ForumThread.findOne(conditions, singleThreadFields).populate('from','uid mid nickName').populate('info','name icon').populate('share').exec(function(err, doc) {
if (err) { if (err) {
console.error(err); console.error(err);
callback(err, null); callback(err, null);
} else { } else {
cb(null, doc); if (doc) {
} async.parallel([
});
},
function(cb) { function(cb) {
if (doc.type !== 1) {
cb(null, null);
return;
}
var conditions = { var conditions = {
thread: tid, thread: tid,
level: '1' level: '1'
...@@ -241,6 +239,10 @@ exports.getThreadById = function(tid, callback) { ...@@ -241,6 +239,10 @@ exports.getThreadById = function(tid, callback) {
}, },
function(cb) { function(cb) {
//获取话题子文章列表 //获取话题子文章列表
if (doc.type !== 2) {
cb(null, null);
return;
}
var conditions = { var conditions = {
pid: tid, pid: tid,
type: 2, type: 2,
...@@ -258,6 +260,10 @@ exports.getThreadById = function(tid, callback) { ...@@ -258,6 +260,10 @@ exports.getThreadById = function(tid, callback) {
}, },
function(cb) { function(cb) {
//获取照片墙最新文章列表 //获取照片墙最新文章列表
if (doc.type !== 3) {
cb(null, null);
return;
}
var conditions = { var conditions = {
pid: tid, pid: tid,
type: 3, type: 3,
...@@ -275,6 +281,10 @@ exports.getThreadById = function(tid, callback) { ...@@ -275,6 +281,10 @@ exports.getThreadById = function(tid, callback) {
}, },
function(cb) { function(cb) {
//获取照片墙最热文章列表 //获取照片墙最热文章列表
if (doc.type !== 3) {
cb(null, null);
return;
}
var conditions = { var conditions = {
pid: tid, pid: tid,
type: 3, type: 3,
...@@ -317,12 +327,12 @@ exports.getThreadById = function(tid, callback) { ...@@ -317,12 +327,12 @@ exports.getThreadById = function(tid, callback) {
if (err) { if (err) {
callback(err, null); callback(err, null);
} else { } else {
var thread = results[0]; var thread = doc.toObject();
var comments = results[1]; var comments = results[0] || [];
var subThreads = results[2] || []; //话题子文章列表 var subThreads = results[1] || []; //话题子文章列表
var latestPhotos = results[3] || []; //最新照片墙列表 var latestPhotos = results[2] || []; //最新照片墙列表
var hotPhotos = results[4] || []; //最热照片墙列表 var hotPhotos = results[3] || []; //最热照片墙列表
var canyuPeopleCount = results[5] || 0; //参与人数 var canyuPeopleCount = results[4] || 0; //参与人数
var threadObj = thread && thread.toObject() || {}; var threadObj = thread && thread.toObject() || {};
threadObj.comments = comments; threadObj.comments = comments;
...@@ -334,6 +344,14 @@ exports.getThreadById = function(tid, callback) { ...@@ -334,6 +344,14 @@ exports.getThreadById = function(tid, callback) {
callback(null, threadObj); callback(null, threadObj);
} }
}); });
} else {
callback(null, {});
}
}
});
}; };
//根据ID获取文章 //根据ID获取文章
exports.getThreadByIdSimple = function(conditions, callback) { exports.getThreadByIdSimple = function(conditions, callback) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment