Commit d51e51e0 authored by 陈家荣's avatar 陈家荣

Merge branch 'forum_moderator_manage' of...

Merge branch 'forum_moderator_manage' of git.wxpai.cn:scrmgroup/pisns-forum-api into forum_moderator_manage
parents 38218d18 61ee192e
'use strict';
var express = require('express'),
router = express.Router(),
returnCode = require('../../utils/returnCode'),
_ = require('lodash'),
moment = require('moment'),
nodeExcel = require('excel-export'),
then = require('thenjs');
var mongoose = require('mongoose');
var forumModeratorService=require('../../service/forumModeratorService');
var ForumModerator = mongoose.model('ForumModerator'),
ForumPVLog = mongoose.model('ForumPVLog');
module.exports = function(app) {
app.use('/admin/forum', router);
};
//操作记录列表
router.get('/moderator/list', function(req, res, next){
var pageNo = req.query.pageNo || 1;
var pageSize = req.query.pageSize || 10;
var infoId = req.query.infoId;
var content = req.query.content;
var userName = req.query.userName;
var moderatorName=req.query.moderatorName;
var behavior=req.query.behavior;
var begin = req.query.begin;
var end = req.query.end;
var conditions = {
ent_code: req.session.user.ent_code
};
if (infoId) {
conditions.info = infoId;
}
if (content) {
conditions['content.content'] = {
$regex:content,
$options:'i'
};
}
if(begin || end){
conditions.created = {};
if(begin){
conditions.created['$gte'] = new Date(begin);
}
if(end){
var t = new Date(end);
t.setDate(t.getDate() + 1);
conditions.created['$lte'] = t;
}
}
if(behavior)
{
conditions.behavior=behavior;
}
if(userName){
forumModeratorService.getAllOperationByFidAndNickName(userName, conditions, pageNo, pageSize, null, function(err, results) {
if (err) {
console.error(err);
res.json(returnCode.BUSY);
} else {
res.json(_.assign(results, returnCode.SUCCESS));
}
});
}else
{
forumModeratorService.getAllOperationByFid(conditions, pageNo, pageSize, null, function(err, results) {
if (err) {
console.error(err);
res.json(returnCode.BUSY);
} else {
res.json(_.assign(results, returnCode.SUCCESS));
}
});
}
})
\ No newline at end of file
......@@ -18,8 +18,8 @@ var ForumModeratorSchema=new Schema({
require: false
},
content:{
type:Object,
require:false
id:{type:String},
content:{type:String}
},
behavior:{//行为:1.加精 2.取消精华 3.删帖
type: Number,
......
'use strict';
var mongoose = require('mongoose');
var ForumModerator=mongoose.model('ForumModerator');
var ForumThread = mongoose.model('ForumThread');
var ForumComment = mongoose.model('ForumComment');
var ForumShare = mongoose.model('ForumShare');
var forumUserService = require('./forumUserService');
var forumCommentService = require('./forumCommentService');
var async = require('async');
var then = require('thenjs');
exports.getAllOperationByFidAndNickName = function(userName, conditions, pageNo, pageSize, sort, callback) {
getAllOperationByFidHelpAndNickName(userName, conditions, pageNo, pageSize, sort, callback);
}
exports.getAllOperationByFid = function(conditions, pageNo, pageSize, sort, callback) {
getAllOperationByFidHelp(conditions, pageNo, pageSize, sort, callback);
};
function getAllOperationByFidHelp(conditions, pageNo, pageSize, sort, callback) {
countAllByFid(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 sortBy = '-created';
if (sort) {
sortBy = sort;
}
ForumModerator.find(conditions).populate('info').limit(limit).skip(skip).sort(sortBy).exec(function(err, docs) {
if (err) {
console.error(err);
callback(err,null);
} else {
var obj={};
obj.total=count;
obj.pageNo=pageNo;
obj.pageSize=pageSize;
obj.items=docs;
callback(null,obj);
}
});
}
});
}
//获取数量
function countAllByFid(conditions, callback) {
ForumModerator.count(conditions, function(err, count) {
if (err) {
console.error(err);
callback(err, null);
} else {
callback(null, count);
}
});
}
function getAllOperationByFidHelpAndNickName(userName, conditions, pageNo, pageSize, sort, callback){
conditions.userName = {
$regex:userName,
$options:'i'
};
countAllByFid(conditions, function(err, count) {
console.log(count);
if (err) {
console.error(err);
callback(err, null);
} else {
var skip = (pageNo - 1) * pageSize;
var limit = count - skip > pageSize ? pageSize : (count - skip);
var sortBy = '-created';
if (sort) {
sortBy = sort;
}
ForumModerator.find(conditions).populate('info').limit(limit).skip(skip).sort(sortBy).exec(function(err, docs) {
if (err) {
console.error(err);
callback(err, null);
} else {
var obj = {};
obj.total = count;
obj.pageNo = pageNo;
obj.pageSize = pageSize;
obj.items = docs;
console.log(docs);
callback(null, obj);
}
});
}
});
}
\ 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