Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
P
pisns-forum-api
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
scrmGroup
pisns-forum-api
Commits
9f3a0a17
Commit
9f3a0a17
authored
Nov 27, 2015
by
strong
Browse files
Options
Browse Files
Download
Plain Diff
Merge commit '
89770488
' into SANDBOX
# Conflicts: # app/controllers/mobile/forumThread.js
parents
0d847060
89770488
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
222 additions
and
162 deletions
+222
-162
forumThread.js
app/controllers/mobile/forumThread.js
+221
-161
forumThread.js
app/models/forumThread.js
+1
-1
No files found.
app/controllers/mobile/forumThread.js
View file @
9f3a0a17
...
...
@@ -98,7 +98,6 @@ function create(req, callback) {
}
}
//点赞和取消点赞
var
raiseOrcancelRaise
=
function
(
req
,
ent_code
,
tid
,
userId
,
callback
)
{
//判断是否已经点赞
forumPraiseLogService
.
queryPraiseLog
(
tid
,
null
,
userId
,
1
,
function
(
err
,
doc
)
{
...
...
@@ -109,7 +108,6 @@ var raiseOrcancelRaise = function(req, ent_code, tid, userId, callback) {
if
(
err
)
{
callback
(
returnCode
.
BUSY
);
}
else
if
(
!
doc
||
doc
.
status
==
1
)
{
//点赞
async
.
parallel
([
function
(
callback
)
{
//3.更新文章统计数据(点赞数)
...
...
@@ -157,6 +155,7 @@ var raiseOrcancelRaise = function(req, ent_code, tid, userId, callback) {
],
function
(
err
,
results
)
{
if
(
err
)
{
console
.
error
(
err
);
// res.json(returnCode.BUSY);
callback
(
returnCode
.
BUSY
);
}
else
{
//更新点赞redis
...
...
@@ -169,18 +168,18 @@ var raiseOrcancelRaise = function(req, ent_code, tid, userId, callback) {
forumThreadService
.
getThreadById
(
tid
,
function
(
err
,
doc
)
{
if
(
err
)
{
console
.
error
(
err
);
// res.json(returnCode.BUSY);
callback
(
returnCode
.
BUSY
);
}
else
{
var
rs
=
{};
rs
.
praise_count
=
doc
.
praise_count
;
rs
.
isPraise
=
true
;
// res.json(_.assign(rs, returnCode.SUCCESS))
;
callback
(
_
.
assign
(
rs
,
returnCode
.
SUCCESS
));
}
});
}
});
}
else
if
(
doc
&&
doc
.
status
==
0
)
{
//取消点赞
}
else
if
(
doc
&&
doc
.
status
==
0
)
{
async
.
parallel
([
function
(
callback
)
{
//3.更新文章统计数据(点赞数)
...
...
@@ -230,7 +229,6 @@ var raiseOrcancelRaise = function(req, ent_code, tid, userId, callback) {
}
else
{
var
rs
=
{};
rs
.
praise_count
=
doc
.
praise_count
;
rs
.
isPraise
=
false
;
callback
(
_
.
assign
(
rs
,
returnCode
.
SUCCESS
));
}
});
...
...
@@ -239,148 +237,7 @@ var raiseOrcancelRaise = function(req, ent_code, tid, userId, callback) {
}
else
{
callback
(
returnCode
.
BUSY
);
}
});
}
});
}
//评论点赞和取消点赞
var
conmentRaiseOrcancelRaise
=
function
(
req
,
ent_code
,
tid
,
cid
,
userId
,
callback
)
{
forumPraiseLogService
.
queryPraiseLog
(
tid
,
cid
,
userId
,
2
,
function
(
err
,
doc
)
{
if
(
err
)
{
console
.
error
(
err
);
callback
(
returnCode
.
BUSY
);
}
else
{
//2.获取论坛文章
forumThreadService
.
getThreadById
(
tid
,
function
(
err
,
thread
)
{
if
(
err
)
{
callback
(
returnCode
.
BUSY
);
}
else
if
(
!
doc
||
doc
.
status
==
1
){
//点赞
async
.
parallel
([
function
(
callback
)
{
forumCommentService
.
updatePraiseCount
(
cid
,
function
(
err
,
results
)
{
if
(
err
)
{
console
.
log
(
err
);
callback
(
err
,
null
);
}
else
{
callback
(
null
,
null
);
}
});
},
function
(
callback
)
{
if
(
doc
)
{
//4.更新点赞日志
forumPraiseLogService
.
updatePraiseLog
(
doc
.
_id
,
0
,
function
(
err
,
result
)
{
if
(
err
)
{
callback
(
err
,
null
);
}
else
{
callback
(
null
,
null
);
}
});
}
else
{
var
entity
=
{
ent_code
:
ent_code
,
user
:
userId
,
thread
:
tid
,
ip
:
req
.
ip
,
comment
:
cid
,
type
:
2
,
status
:
0
};
//4.创建点赞日志
forumPraiseLogService
.
createPraiseLog
(
entity
,
function
(
err
,
result
)
{
if
(
err
)
{
callback
(
err
,
null
);
}
else
{
callback
(
null
,
null
);
}
});
}
}
],
function
(
err
,
results
)
{
if
(
err
)
{
console
.
error
(
err
);
callback
(
returnCode
.
BUSY
);
}
else
{
//更新点赞redis
redisPraiseLog
.
get
(
ent_code
,
userId
,
'comment'
,
function
(
error
,
docs
)
{
var
list
=
docs
;
list
.
push
(
cid
);
redisPraiseLog
.
set
(
ent_code
,
userId
,
'comment'
,
list
,
function
()
{});
});
//返回点赞总数
forumCommentService
.
getCommentById
(
cid
,
function
(
err
,
doc
)
{
if
(
err
)
{
console
.
error
(
err
);
callback
(
returnCode
.
BUSY
);
}
else
{
var
rs
=
{};
rs
.
praise_count
=
doc
.
praise_count
;
rs
.
isPraise
=
true
;
callback
(
_
.
assign
(
rs
,
returnCode
.
SUCCESS
));
}
});
}
});
}
else
if
(
doc
&&
doc
.
status
==
0
){
//取消点赞
async
.
parallel
([
function
(
callback
)
{
forumCommentService
.
updatePraiseCountDec
(
cid
,
function
(
err
,
results
)
{
if
(
err
)
{
console
.
log
(
err
);
callback
(
err
,
null
);
}
else
{
callback
(
null
,
null
);
}
});
},
function
(
callback
)
{
//4.更新点赞日志
forumPraiseLogService
.
updatePraiseLog
(
doc
.
_id
,
1
,
function
(
err
,
result
)
{
if
(
err
)
{
callback
(
err
,
null
);
}
else
{
callback
(
null
,
null
);
}
});
}
],
function
(
err
,
results
)
{
if
(
err
)
{
console
.
error
(
err
);
callback
(
returnCode
.
BUSY
);
}
else
{
//更新点赞redis
redisPraiseLog
.
get
(
ent_code
,
userId
,
'comment'
,
function
(
error
,
docs
)
{
var
list
=
docs
;
for
(
var
i
=
0
;
i
<
list
.
length
;
i
++
)
{
if
(
list
[
i
].
toString
()
==
cid
)
{
list
.
splice
(
i
,
1
);
break
;
}
}
redisPraiseLog
.
set
(
ent_code
,
userId
,
'comment'
,
list
,
function
()
{});
});
//返回点赞总数
forumCommentService
.
getCommentById
(
cid
,
function
(
err
,
doc
)
{
if
(
err
)
{
console
.
error
(
err
);
res
.
json
(
returnCode
.
BUSY
);
}
else
{
var
rs
=
{};
rs
.
praise_count
=
doc
.
praise_count
;
rs
.
isPraise
=
false
;
callback
(
_
.
assign
(
rs
,
returnCode
.
SUCCESS
));
}
});
}
});
}
else
{
callback
(
returnCode
.
BUSY
);
}
});
}
});
...
...
@@ -881,6 +738,223 @@ router.post('/thread/:tid/delete', function(req, res, next) {
// });
//文章点赞
// router.post('/thread/:tid/raise', function(req, res, next) {
// var userId = req.session.mobileForumUser.userId;
// var mid = req.session.openUser.mid;
// var tid = req.params.tid || null;
// var ent_code = req.session.user.ent_code;
// if (tid) {
// var integral = req.session.openUser.integral || 0;
// var exp = req.session.openUser.exp || 0;
// //判断是否已经点赞
// forumPraiseLogService.queryPraiseLog(tid, null, user.getMobileUser(req), 1, function(err, doc) {
// if (err) {
// res.json(returnCode.BUSY);
// } else {
// //1.检查是否有权限
// forumRolePermissionService.checkRolePermiss(ent_code, 'raise', integral, exp, function(err, result) {
// if (err) {
// res.json(returnCode.BUSY);
// } else {
// if (result) { //有操作权限
// //2.获取论坛文章
// forumThreadService.getThreadById(tid, function(err, thread) {
// if (err) {
// res.json(returnCode.BUSY);
// } else {
// async.parallel([
// function(callback) {
// //3.更新文章统计数据(点赞数)
// if (thread) {
// forumThreadService.updateThreadRaiseCount(tid, function(err, cb) {
// if (err) {
// callback(err, null);
// } else {
// callback(null, null);
// }
// });
// } else {
// callback('cannot find thread by id', null);
// }
// },
// function(callback) {
// if (doc) { //如果已存在,更新为点赞日志
// forumPraiseLogService.updatePraiseLog(doc._id, 0, function(err, result) {
// if (err) {
// callback(err, null);
// } else {
// callback(null, null);
// }
// });
// } else { //不存在,创建点赞日志
// var entity = {
// ent_code: ent_code,
// user: user.getMobileUser(req),
// thread: tid,
// ip: req.ip,
// comment: null,
// type: 1,
// status: 0
// };
// //4.创建点赞日志
// forumPraiseLogService.createPraiseLog(entity, function(err, result) {
// if (err) {
// callback(err, null);
// } else {
// callback(null, null);
// }
// });
// }
// }
// ], function(err, results) {
// if (err) {
// console.error(err);
// res.json(returnCode.BUSY);
// } else {
// // forumLimitOperationService.checkLimitOperationProhibitionAddIntegral(userId, function(err, flag){
// // if(err){
// // console.error(err);
// // }else{
// // if(!flag){
// // httpService.sendRequest(ent_code, req.session.openUser.mid, 'thread_praise');
// // }
// // }
// // });
// //更新点赞redis
// redisPraiseLog.get(ent_code, userId, 'thread', function(error, docs) {
// var list = docs;
// list.push(tid);
// redisPraiseLog.set(ent_code, userId, 'thread', list, function() {});
// });
// forumThreadService.getThreadById(tid, function(err, doc) {
// if (err) {
// console.error(err);
// res.json(returnCode.BUSY);
// } else {
// var rs = {};
// rs.praise_count = doc.praise_count;
// res.json(_.assign(rs, returnCode.SUCCESS));
// }
// });
// }
// });
// }
// });
// } else {
// res.json(returnCode.ACTION_NOT_PERMISSION);
// }
// }
// });
// }
// });
// } else {
// res.json(returnCode.WRONG_PARAM);
// }
// });
//文章取消点赞
// router.post('/thread/:tid/cancelRaise', function(req, res, next) {
// var userId = req.session.mobileForumUser.userId;
// var mid = req.session.openUser.mid;
// var tid = req.params.tid || null;
// var ent_code = req.session.user.ent_code;
// if (tid) {
// var integral = req.session.openUser.integral || 0;
// var exp = req.session.openUser.exp || 0;
// //判断是否已经点赞
// forumPraiseLogService.queryPraiseLog(tid, null, userId, 1, function(err, doc) {
// if (err) {
// res.json(returnCode.BUSY);
// } else {
// if (doc) {
// var praiseId = doc._id;
// //1.检查是否有权限
// forumRolePermissionService.checkRolePermiss(ent_code, 'raise', integral, exp, function(err, result) {
// if (err) {
// res.json(returnCode.BUSY);
// } else {
// if (result) { //有操作权限
// //2.获取论坛文章
// forumThreadService.getThreadById(tid, function(err, thread) {
// if (err) {
// res.json(returnCode.BUSY);
// } else {
// async.parallel([
// function(callback) {
// //3.更新文章统计数据(点赞数)
// if (thread && thread.praise_count > 0) {
// forumThreadService.updateThreadRaiseCountDec(tid, function(err, cb) {
// if (err) {
// callback(err, null);
// } else {
// callback(null, null);
// }
// });
// } else {
// callback('cannot find thread by id', null);
// }
// },
// function(callback) {
// //4.更新点赞日志
// forumPraiseLogService.updatePraiseLog(praiseId, 1, function(err, result) {
// if (err) {
// callback(err, null);
// } else {
// callback(null, null);
// }
// });
// }
// ], function(err, results) {
// if (err) {
// console.error(err);
// res.json(returnCode.BUSY);
// } else {
// //更新点赞redis
// redisPraiseLog.get(ent_code, userId, 'thread', function(error, docs) {
// var list = docs;
// for (var i = 0; i < list.length; i++) {
// if (list[i].toString() == tid) {
// list.splice(i, 1);
// break;
// }
// }
// redisPraiseLog.set(ent_code, userId, 'thread', list, function() {});
// });
// forumThreadService.getThreadById(tid, function(err, doc) {
// if (err) {
// console.error(err);
// res.json(returnCode.BUSY);
// } else {
// var rs = {};
// rs.praise_count = doc.praise_count;
// res.json(_.assign(rs, returnCode.SUCCESS));
// }
// });
// }
// });
// }
// });
// } else {
// res.json(returnCode.ACTION_NOT_PERMISSION);
// }
// }
// });
// }
// }
// });
// } else {
// res.json(returnCode.WRONG_PARAM);
// }
// });
//文章点赞
router
.
post
(
'/thread/:tid/raise'
,
function
(
req
,
res
,
next
)
{
var
userId
=
req
.
session
.
mobileForumUser
.
userId
;
...
...
@@ -911,20 +985,6 @@ router.post('/thread/:tid/cancelRaise', function(req, res, next) {
}
});
//文章点赞和取消点赞
router
.
post
(
'/thread/:tid/praiseOrCancelPraise'
,
function
(
req
,
res
,
next
)
{
var
userId
=
req
.
session
.
mobileForumUser
.
userId
;
var
mid
=
req
.
session
.
openUser
.
mid
;
var
tid
=
req
.
params
.
tid
||
null
;
var
ent_code
=
req
.
session
.
user
.
ent_code
;
if
(
tid
)
{
raiseOrcancelRaise
(
req
,
ent_code
,
tid
,
userId
,
function
(
result
){
res
.
json
(
result
);
});
}
else
{
res
.
json
(
returnCode
.
WRONG_PARAM
);
}
});
//文章分享
router
.
post
(
'/thread/:tid/share'
,
function
(
req
,
res
,
next
)
{
...
...
app/models/forumThread.js
View file @
9f3a0a17
...
...
@@ -116,7 +116,7 @@ var ForumThreadSchema = new Schema({
quality
:{
//质量 高:100,中:50,低:0
type
:
Number
,
require
:
true
,
default
:
5
0
default
:
10
0
},
created
:
{
type
:
Date
,
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment