Commit f9fab099 authored by 刘文胜's avatar 刘文胜

Merge branch 'remould_0120_page_style' of...

Merge branch 'remould_0120_page_style' of git.wxpai.cn:scrmgroup/pisns-forum-api into remould_0120_page_style
parents c02326f9 26fb8d99
......@@ -23,7 +23,8 @@ var forumThreadService = require('../../service/forumThreadService'),
// var forumLimitActionRefService = require('../../service/forumLimitActionRefService');
forumLimitOperationService = require('../../service/forumLimitOperationService'),
forumAboutMEService = require('../../service/forumAboutMEService'),
httpService = require('../../service/httpService');
httpService = require('../../service/httpService'),
redisThreadList = require('../../utils/redisThreadList');
var userUtil = require('../../utils/user');
var floorGenerator = require('../../utils/floorGenerator');
......@@ -1593,6 +1594,8 @@ router.post('/thread/:tid/essence', function(req, res, next) {
console.error(err);
res.json(returnCode.BUSY);
} else {
//更新推荐列表redis
redisThreadList.updateRedisEsenceThreads(ent_code, "", '_thread_essence', function() {});
res.json(returnCode.SUCCESS);
}
});
......@@ -1619,6 +1622,8 @@ router.post('/thread/:tid/unEssence', function(req, res, next) {
console.error(err);
res.json(returnCode.BUSY);
} else {
//更新推荐列表redis
redisThreadList.updateRedisEsenceThreads(ent_code, "", '_thread_essence', function() {});
res.json(returnCode.SUCCESS);
}
});
......
......@@ -17,23 +17,28 @@ module.exports = function(app) {
//查询单个头衔信息人员信息
router.get('/honorTitle/:hid/list', function(req, res, next) {
var pageNo = req.query.pageNo || 1;
var pageSize = req.query.pageSize || 4;
var ent_code = req.session.user.ent_code;
var honorTitleId = req.params.hid;
var user_conditions = {
var conditions = {
ent_code: ent_code,
honorTitles: {
$in: [honorTitleId]
}
honor: honorTitleId
};
var fields = "nickName icon";
forumUserService.searchMembersAndFields(1, 10000, user_conditions,fields, function(err, results) {
forumUserHonorTimeLineService.getAll(pageNo, pageSize, conditions, fields,'_id', function(err, results) {
if (err) {
console.error(err);
res.json(returnCode.BUSY);
cont(err, null);
} else {
var users = [];
_.forEach(results.datas, function(one, i) {
users.push(one.user);
});
results.datas = users;
res.json(_.assign(results, returnCode.SUCCESS));
}
});
......@@ -69,7 +74,7 @@ router.get('/honorTitle/list', function(req, res, next) {
$in: [one._id]
}
};
forumUserHonorTimeLineService.getAll(pageNo, pageSize, user_conditions,fields, function(err, results) {
forumUserHonorTimeLineService.getAll(pageNo, pageSize, user_conditions,fields,'-_id', function(err, results) {
if (err) {
console.error(err);
cont(err, null);
......@@ -78,7 +83,7 @@ router.get('/honorTitle/list', function(req, res, next) {
list[i] = list[i].toObject();
}
var users = [];
_.forEach(results, function(one, i) {
_.forEach(results.datas, function(one, i) {
users.push(one.user);
});
list[i].users = users;
......
This diff is collapsed.
......@@ -80,82 +80,30 @@ function countAll(conditions, callback) {
}
//分页查询
exports.getAll = function(pageNo, pageSize, conditions, fields, callback) {
// countAll(conditions, function(err, count) {
// if (err) {
// console.error(err);
// callback(err, null);
// } else {
// var skip = (pageNo - 1) * pageSize;
// var limit = count - skip > pageSize ? pageSize : (count - skip);
// ForumUserHonorTimeLine.find(conditions).skip(skip).limit(limit).select(fields).sort('-created').populate({
// path: 'user',
// select: fields,
// options: {
// sort: {
// created: -1
// }
// }
// }).exec(function(err, docs) {
// callback(err, count, docs);
// });
// }
// });
exports.getAll = function(pageNo, pageSize, conditions, fields, sort, callback) {
countAll(conditions,function(err,count){
if(err){
console.error(err);
callback(err,null);
}else{
var skip = (pageNo - 1) * pageSize;
var limit = count - skip > pageSize ? pageSize : (count - skip);
var skip = (pageNo - 1) * pageSize;
ForumUserHonorTimeLine.find(conditions).skip(skip).limit(pageSize).sort('-created').populate({
path: 'user',
select: fields,
options: {
sort: {
created: -1
}
ForumUserHonorTimeLine.find(conditions).skip(skip).limit(limit).sort(sort).populate({
path: 'user',
select: fields
}).exec(function(err, docs) {
var obj={};
obj.total=count;
obj.pageNo=pageNo;
obj.pageSize=pageSize;
obj.datas=docs;
callback(null,obj);
});
}
}).exec(function(err, docs) {
callback(err, docs);
});
};
//获取列表
exports.find = function(conditions, callback) {
ForumUserHonorTimeLine.find(conditions).sort({
order_idx: -1
}).exec(function(err, docs) {
if (err) {
console.error(err);
callback(err, null);
} else {
callback(null, docs);
}
});
};
exports.getAllOrderIDX = function(conditions, callback) {
ForumUserHonorTimeLine.find(conditions).select('_id order_idx').sort({
order_idx: -1
}).exec(function(err, docs) {
if (err) {
console.error(err);
callback(err, null);
} else {
callback(null, docs);
}
});
};
//修改序号
exports.updateIdx = function(id, idx, callback) {
ForumUserHonorTimeLine.update({
_id: id
}, {
order_idx: idx
}, null,
function(err, result) {
if (err) {
console.error(err);
callback(err, null);
} else {
callback(null, true);
}
});
};
'use strict';
var redis=global.redis;
var expire = 60*60*3;
//缓存数量
var ThreadRedisCount = 50;
var _ = require('lodash');
var then = require('thenjs');
var forumThreadService=require('../service/forumThreadService');
var redisPraiseLog=require('./redisPraiseLog');
var util=require('./util');
function getKey(ent_code,keyID,type){
var key = ent_code + keyID + type;
return key;
}
function setToRedis(ent_code,keyID,type,value){
var key = getKey(ent_code,keyID,type);
if(!redis){
console.log('redis error');
return 'error'
}
redis.set(key, value, function(error, res){
redis.expire(key, expire);
return 'success'
});
}
exports.get=function(ent_code,keyID,type,callback){
var key = getKey(ent_code,keyID,type);
if(!redis){
console.log('redis error');
return callback && callback('error');
}
redis.get(key, function(error, res){
if(!res){
//不存在,先获取再返回
getEsenceThreads(ent_code, keyID, type,function(err){
redis.get(key, function(error, res){
return callback && callback(error, res.split(","));
});
});
}else{
return callback && callback(error, res);
}
});
};
exports.set=function(ent_code,keyID,type,value,callback){
var key = getKey(ent_code,keyID,type);
if(!redis){
console.log('redis error');
return callback && callback('error');
}
redis.set(key, value, function(error, res){
redis.expire(key, expire);
return callback && callback(error, 'success');
});
};
exports.clear = function(ent_code,keyID,type,callback){
var key = getKey(ent_code,keyID,type);
if(!redis){
console.log('redis error');
return callback && callback('error');
}
redis.del(key, function(error, res){
return callback && callback(error, !!res);
});
};
function getEsenceThreads(ent_code,keyID,type,callback){
var sort = '-new_recommend_time';
var today = new Date();
var conditions = {
ent_code: ent_code,
level: 1,
status: 1,
new_recommend: 1,
$or: [{
isEvent: 0
}, {
isEvent: null
}, {
isEvent: 1,
'event.eventStartTime' : {$lte : today}
}]
};
forumThreadService.getThreadWithNotPopulateComment(conditions, 1, ThreadRedisCount, sort, function(err, results) {
if (err) {
console.error(err);
callback(err);
} else {
util.loadLevel(ent_code, results.items, function() {
setToRedis(ent_code,keyID,type,JSON.stringify(results));
callback(null);
});
}
});
};
//获取缓存列表
exports.getRedisEsenceThreads = function(ent_code,keyID,type,callback){
var key = getKey(ent_code,keyID,type);
getEsenceThreads(ent_code, keyID,type, function(err){
redis.get(key, function(error, res){
return callback && callback(error, res.split(","));
});
});
};
//更新缓存列表
exports.updateRedisEsenceThreads = function(ent_code,keyID,type,callback){
var key = getKey(ent_code,keyID,type);
getEsenceThreads(ent_code, keyID,type, function(err){
callback();
});
};
//获取缓存数值
exports.getThreadRedisCount = function(){
return ThreadRedisCount;
};
\ 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