Commit 9c7bab2a authored by 张淼's avatar 张淼

1

parent a37e04de
......@@ -8,6 +8,9 @@ var mongoose = require('mongoose');
var ForumInfo = mongoose.model('ForumInfo');
var forumInfoService=require('../../service/forumInfoService');
var forumThreadService=require('../../service/forumThreadService');
var forumUserThreadControlService=require('../../service/forumUserThreadControlService');
var user=require('../../utils/user');
var async=require('async');
......@@ -133,14 +136,39 @@ router.get('/info/:fid/threads', function(req, res, next) {
conditions.info=fid;
}
if(fid){
forumThreadService.getAllThreadByFid(conditions,pageNo,pageSize,function(err,results){
if(err){
console.error(err);
res.json(returnCode.BUSY);
}else{
res.json(_.assign(results, returnCode.SUCCESS));
}
});
async.waterfall([
function(callback){
forumUserThreadControlService.getUserThreadControlById(user.getMobileUser(),function(err,doc){
if(err){
callback(err,null);
}else{
if(doc){
callback(null,doc);
}else{
callback(null,null);
}
}
});
}
],function(err,result){
if(err){
console.error(err);
res.json(returnCode.BUSY);
}else{
if(result){
conditions._id={$nin:result.thread};
}
forumThreadService.getAllThreadByFid(conditions,pageNo,pageSize,function(err,results){
if(err){
console.error(err);
res.json(returnCode.BUSY);
}else{
res.json(_.assign(results, returnCode.SUCCESS));
}
});
}
});
}else{
res.json(returnCode.WRONG_PARAM);
}
......
......@@ -10,6 +10,7 @@ var forumRolePermissionService=require('../../service/forumRolePermissionService
var forumPraiseLogService=require('../../service/forumPraiseLogService');
var forumShareLogService=require('../../service/forumShareLogService');
var forumCommentService=require('../../service/forumCommentService');
var forumUserThreadControlService=require('../../service/forumUserThreadControlService');
var user=require('../../utils/user');
var async=require('async');
......@@ -454,8 +455,6 @@ router.post('/thread/:tid/comment/:cid/create', function(req, res, next) {
//删除文章评论
router.post('/thread/:tid/comment/:cid/delete', function(req, res, next) {
var tid = req.body.tid || null;
console.log(tid);
//1.检查是否有权限
//2.获取论坛文章
......@@ -487,4 +486,51 @@ router.post('/thread/:tid/comment/:cid/:status', function(req, res, next) {
}else{
res.json(returnCode.WRONG_PARAM);
}
});
//用户屏蔽文章
router.post('/thread/:tid/userShield', function(req, res, next) {
var tid = req.params.tid || null;
if(tid){
forumUserThreadControlService.getUserThreadControlById(user.getMobileUser(),function(err,doc){
if(err){
res.json(returnCode.BUSY);
}else{
if(doc){
var thread=doc.thread;
thread.push(tid);
forumUserThreadControlService.updateUserThreadControlById(user.getMobileUser(),{thread:thread},function(err,result){
if(err){
res.json(returnCode.BUSY);
}else{
res.json(returnCode.SUCCESS);
}
});
}else{
var array=[tid];
var entity={
ent_code:req.session.user.ent_code,
user:user.getMobileUser(),
thread:array
};
forumUserThreadControlService.createUserThreadControl(entity,function(err,result){
if(err){
res.json(returnCode.BUSY);
}else{
res.json(returnCode.SUCCESS);
}
});
}
}
});
}else{
res.json(returnCode.WRONG_PARAM);
}
//1.检查是否有权限
//2.获取论坛文章
//3.新增文章评论
//4.更新文章统计数据(评论数)
});
\ No newline at end of file
'use strict';
var mongoose = require('mongoose'),
Schema = mongoose.Schema;
//用户文章访问控制(各用户看到的文章列表控制)
var ForumUserThreadCotrolSchema = new Schema({
ent_code: {
type: Number,
require: true,
index: true
},
user: { //用户
type: String,
require: true,
},
thread: { //文章集合
type: Array
},
created: {
type: Date,
required: true,
default:Date.now
}
}, {
'collection': 'pisns_forum_user_thread_control'
});
module.exports = mongoose.model('ForumUserThreadCotrol', ForumUserThreadCotrolSchema);
\ No newline at end of file
'use strict';
var mongoose = require('mongoose');
var ForumUserThreadCotrol = mongoose.model('ForumUserThreadCotrol');
exports.createUserThreadControl=function(entity,callback){
var forum = new ForumUserThreadCotrol(entity);
forum.save(function(err, forum) {
if (err) {
console.error(err);
callback(err,null);
} else {
callback(null,forum);
}
});
};
exports.getUserThreadControlById=function(uid,callback){
ForumUserThreadCotrol.find({user:uid}).exec(function(err,docs){
if (err) {
console.error(err);
callback(err,null);
} else {
callback(null,docs[0]);
}
});
};
exports.updateUserThreadControlById=function(uid,entity,callback){
ForumUserThreadCotrol.update({ _id: uid}, entity,null,function(err,result){
if (err) {
console.error(err);
callback(err,null);
} else {
callback(null,null);
}
});
};
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