Commit c0645f67 authored by strong's avatar strong

Merge branch 'bugfix_0118_info_delete' into SANDBOX

parents 2fae26c3 8ad7baff
......@@ -26,7 +26,7 @@ var forumThreadService = require('../../service/forumThreadService'),
httpService = require('../../service/httpService');
var userUtil = require('../../utils/user');
var floorGenerator = require('../../utils/floorGenerator');
module.exports = function(app) {
app.use('/admin/forum', router);
};
......@@ -939,19 +939,11 @@ router.post('/thread/comment/add', function(req, res, next) {
function(callback) {
//获取楼层
if (entity.level == 1) {
var conditions = {
thread: entity.thread,
level: '1'
}
forumCommentService.count(conditions, function(err, count) {
floorGenerator.getCommentFloor(entity.ent_code,tid,function(err,floor){
if (err) {
callback(err);
} else {
if (count) {
entity.floor = count + 1;
} else {
entity.floor = 1;
}
entity.floor = floor;
callback();
}
});
......
......@@ -21,6 +21,7 @@ var redisPraiseLog = require('../../utils/redisPraiseLog');
var httpService = require('../../service/httpService');
var forumAboutMEService = require('../../service/forumAboutMEService');
var user = require('../../utils/user');
var floorGenerator = require('../../utils/floorGenerator');
var async = require('async');
var ForumModeratorApply = mongoose.model('ForumModeratorApply');
module.exports = function(app) {
......@@ -833,18 +834,11 @@ router.post('/thread/:tid/comment/add', function(req, res, next) {
floor: floor
};
var conditions = {
thread: thread._id,
level: '1'
};
forumCommentService.count(conditions, function(err, count) {
floorGenerator.getCommentFloor(entity.ent_code,tid,function(err,floor){
if (err) {
callback(err, null);
callback(err,null);
} else {
// callback(null, count);
if (count) {
entity.floor = count + 1;
}
entity.floor = floor;
//4.创建文章评论
forumCommentService.createComment(entity, function(err, newComment) {
if (err) {
......@@ -979,19 +973,11 @@ router.post('/thread/:tid/comment/create', function(req, res, next) {
floor: floor
};
var conditions = {
thread: thread._id,
level: '1'
};
forumCommentService.count(conditions, function(err, count) {
floorGenerator.getCommentFloor(entity.ent_code,tid,function(err,floor){
if (err) {
console.log(err);
callback(err, null);
callback(err);
} else {
// callback(null, count);
if (count) {
entity.floor = count + 1;
}
entity.floor = floor;
//4.创建文章评论
forumCommentService.createComment(entity, function(err, newComment) {
if (err) {
......
'use strict';
var redis=global.redis;
var prefix = '_forum_floor_generator_';
var expire =60 * 30;//半个小时
var forumCommentService = require('../service/forumCommentService');
function getKey(entcode,id){
return entcode + prefix + id;
}
/*
获取帖子的评论的楼层
tid:帖子id
*/
exports.getCommentFloor=function(entcode,tid,callback){
var key = getKey(entcode,tid);
if(!redis){
console.log('redis error');
return callback && callback('redis error');
}
redis.get(key, function(error, floor){//先判断楼层计数器是否存在
if(error){
return callback && callback(error);
}
if(floor){//存在,就直接累加
redis.incr(key, function(error, newfloor){
if(error){
return callback && callback(error);
}
redis.expire(key, expire);
return callback && callback(error, newfloor || 1);
});
}else{//不存在
redis.set(key,0);
redis.watch(key);
var multi = redis.multi();
//获取评论的最新楼层
forumCommentService.count({
thread: tid,
level: '1'
}, function(err, count) {
if (err) {
return callback && callback(err);
}
var newfloor = (count || 0) + 1;
multi.set(key,newfloor);
multi.exec(function(err,replies){
if (err) {
return callback && callback(err);
}
redis.expire(key, expire);
return callback && callback(null,newfloor);
})
});
}
});
};
\ No newline at end of file
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