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
e192c05c
Commit
e192c05c
authored
Apr 17, 2015
by
邓军
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
pv/uv log
parent
e6ca87b5
Changes
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
1224 additions
and
1146 deletions
+1224
-1146
forumInfo.js
app/controllers/mobile/forumInfo.js
+354
-316
forumThread.js
app/controllers/mobile/forumThread.js
+870
-830
No files found.
app/controllers/mobile/forumInfo.js
View file @
e192c05c
...
...
@@ -6,13 +6,14 @@ var express = require('express'),
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
forumInfoService
=
require
(
'../../service/forumInfoService'
);
var
forumThreadService
=
require
(
'../../service/forumThreadService'
);
var
forumUserThreadControlService
=
require
(
'../../service/forumUserThreadControlService'
);
var
httpService
=
require
(
'../../service/httpService'
);
var
user
=
require
(
'../../utils/user'
);
var
user
=
require
(
'../../utils/user'
);
var
async
=
require
(
'async'
);
var
async
=
require
(
'async'
);
module
.
exports
=
function
(
app
)
{
app
.
use
(
'/v1/forum'
,
router
);
...
...
@@ -21,64 +22,88 @@ module.exports = function(app) {
//新增论坛板块
router
.
post
(
'/info/create'
,
function
(
req
,
res
,
next
)
{
var
rs
=
{};
req
.
body
.
ent_code
=
req
.
session
.
user
.
ent_code
;
forumInfoService
.
createInfo
(
req
.
body
,
function
(
err
,
info
)
{
req
.
body
.
ent_code
=
req
.
session
.
user
.
ent_code
;
forumInfoService
.
createInfo
(
req
.
body
,
function
(
err
,
info
)
{
if
(
err
)
{
console
.
error
(
err
);
res
.
json
(
returnCode
.
BUSY
);
}
else
{
rs
.
data
=
{
'id'
:
info
.
_id
};
rs
.
data
=
{
'id'
:
info
.
_id
};
res
.
json
(
_
.
assign
(
rs
,
returnCode
.
SUCCESS
));
}
});
});
//获取目标论坛板块
router
.
get
(
'/info/:fid/get'
,
function
(
req
,
res
,
next
)
{
var
fid
=
req
.
params
.
fid
||
null
;
//模拟数据
/*req.session.user.ent_code = 100001;
req.session.openUser = {};
req.session.openUser.mid=1;
req.session.mobileForumUser = {
openId: '54c9e321d5037010b44d4b1f',
userId: '54c9e321d5037010b44d4b1f'
};*/
var
log
=
{
ent_code
:
req
.
session
.
user
,
mid
:
req
.
session
.
openUser
.
mid
,
forumInfo
:
fid
,
open_id
:
req
.
session
.
mobileForumUser
.
openId
,
user
:
req
.
session
.
mobileForumUser
.
userId
,
type
:
2
};
httpService
.
createLog
(
log
);
if
(
fid
)
{
async
.
waterfall
([
function
(
callback
)
{
function
(
callback
)
{
//更新浏览数
forumInfoService
.
updateInfoPvCount
(
fid
,
function
(
err
,
result
)
{
if
(
err
)
{
callback
(
err
,
null
);
}
else
{
callback
(
null
,
null
);
forumInfoService
.
updateInfoPvCount
(
fid
,
function
(
err
,
result
)
{
if
(
err
)
{
callback
(
err
,
null
);
}
else
{
callback
(
null
,
null
);
}
});
},
function
(
data
,
callback
)
{
forumInfoService
.
getInfoById
(
fid
,
function
(
err
,
info
)
{
function
(
data
,
callback
)
{
forumInfoService
.
getInfoById
(
fid
,
function
(
err
,
info
)
{
if
(
err
)
{
callback
(
err
,
null
);
callback
(
err
,
null
);
}
else
{
callback
(
null
,
info
);
callback
(
null
,
info
);
}
});
},
function
(
info
,
callback
){
forumThreadService
.
getAllCountByFid
({
info
:
fid
},
function
(
err
,
threadCount
){
if
(
err
){
callback
(
err
,
null
,
null
);
}
else
{
callback
(
null
,
info
,
threadCount
);
function
(
info
,
callback
)
{
forumThreadService
.
getAllCountByFid
({
info
:
fid
},
function
(
err
,
threadCount
)
{
if
(
err
)
{
callback
(
err
,
null
,
null
);
}
else
{
callback
(
null
,
info
,
threadCount
);
}
});
}
],
function
(
err
,
info
,
threadCount
)
{
],
function
(
err
,
info
,
threadCount
)
{
if
(
err
)
{
console
.
error
(
err
);
res
.
json
(
returnCode
.
BUSY
);
}
else
{
var
rs
=
{};
var
rs
=
{};
rs
.
data
=
info
;
rs
.
data
.
threadCount
=
threadCount
;
rs
.
data
.
threadCount
=
threadCount
;
res
.
json
(
_
.
assign
(
rs
,
returnCode
.
SUCCESS
));
}
});
}
else
{
}
else
{
res
.
json
(
returnCode
.
WRONG_PARAM
);
}
...
...
@@ -86,32 +111,32 @@ router.get('/info/:fid/get', function(req, res, next) {
//更新目标论坛板块
router
.
post
(
'/info/:fid/update'
,
function
(
req
,
res
,
next
)
{
var
fid
=
req
.
params
.
fid
;
if
(
fid
)
{
forumInfoService
.
updateInfoById
(
fid
,
req
.
body
,
function
(
err
,
result
)
{
if
(
err
)
{
var
fid
=
req
.
params
.
fid
;
if
(
fid
)
{
forumInfoService
.
updateInfoById
(
fid
,
req
.
body
,
function
(
err
,
result
)
{
if
(
err
)
{
res
.
json
(
returnCode
.
BUSY
);
}
else
{
}
else
{
res
.
json
(
returnCode
.
SUCCESS
);
}
});
}
else
{
}
else
{
res
.
json
(
returnCode
.
WRONG_PARAM
);
}
});
//删除目标论坛板块
router
.
post
(
'/info/:fid/delete'
,
function
(
req
,
res
,
next
)
{
var
fid
=
req
.
params
.
fid
;
if
(
fid
)
{
forumInfoService
.
deleteInfoById
(
fid
,
function
(
err
,
result
)
{
if
(
err
)
{
var
fid
=
req
.
params
.
fid
;
if
(
fid
)
{
forumInfoService
.
deleteInfoById
(
fid
,
function
(
err
,
result
)
{
if
(
err
)
{
res
.
json
(
returnCode
.
BUSY
);
}
else
{
}
else
{
res
.
json
(
returnCode
.
SUCCESS
);
}
});
}
else
{
}
else
{
res
.
json
(
returnCode
.
WRONG_PARAM
);
}
});
...
...
@@ -126,260 +151,273 @@ router.post('/info/:fid/delete', function(req, res, next) {
router
.
get
(
'/info/:fid/threads'
,
function
(
req
,
res
,
next
)
{
var
pageNo
=
req
.
query
.
pageNo
||
1
;
var
pageSize
=
req
.
query
.
pageSize
||
10
;
var
fid
=
req
.
params
.
fid
;
var
conditions
=
{
ent_code
:
req
.
session
.
user
.
ent_code
,
level
:
1
var
fid
=
req
.
params
.
fid
;
var
conditions
=
{
ent_code
:
req
.
session
.
user
.
ent_code
,
level
:
1
};
if
(
fid
)
{
conditions
.
info
=
fid
;
if
(
fid
)
{
conditions
.
info
=
fid
;
}
if
(
fid
)
{
if
(
fid
)
{
async
.
waterfall
([
function
(
callback
)
{
forumUserThreadControlService
.
getUserThreadControlById
(
user
.
getMobileUser
(
req
),
function
(
err
,
doc
)
{
if
(
err
)
{
callback
(
err
,
null
);
}
else
{
if
(
doc
)
{
callback
(
null
,
doc
);
}
else
{
callback
(
null
,
null
);
function
(
callback
)
{
forumUserThreadControlService
.
getUserThreadControlById
(
user
.
getMobileUser
(
req
),
function
(
err
,
doc
)
{
if
(
err
)
{
callback
(
err
,
null
);
}
else
{
if
(
doc
)
{
callback
(
null
,
doc
);
}
else
{
callback
(
null
,
null
);
}
}
});
}
],
function
(
err
,
result
)
{
if
(
err
)
{
],
function
(
err
,
result
)
{
if
(
err
)
{
console
.
error
(
err
);
res
.
json
(
returnCode
.
BUSY
);
}
else
{
if
(
result
){
conditions
.
_id
=
{
$nin
:
result
.
thread
};
}
else
{
if
(
result
)
{
conditions
.
_id
=
{
$nin
:
result
.
thread
};
}
forumThreadService
.
getAllThreadByFid
(
conditions
,
pageNo
,
pageSize
,
null
,
function
(
err
,
results
)
{
if
(
err
)
{
forumThreadService
.
getAllThreadByFid
(
conditions
,
pageNo
,
pageSize
,
null
,
function
(
err
,
results
)
{
if
(
err
)
{
console
.
error
(
err
);
res
.
json
(
returnCode
.
BUSY
);
}
else
{
}
else
{
res
.
json
(
_
.
assign
(
results
,
returnCode
.
SUCCESS
));
}
});
}
});
}
else
{
}
else
{
res
.
json
(
returnCode
.
WRONG_PARAM
);
}
});
//获取论坛最热文章列表
router
.
get
(
'/info/:fid/hotThreads'
,
function
(
req
,
res
,
next
)
{
var
fid
=
req
.
params
.
fid
||
null
;
var
fid
=
req
.
params
.
fid
||
null
;
var
pageNo
=
req
.
query
.
pageNo
||
1
;
var
pageSize
=
req
.
query
.
pageSize
||
10
;
var
conditions
=
{
ent_code
:
req
.
session
.
user
.
ent_code
,
level
:
1
,
info
:
fid
var
conditions
=
{
ent_code
:
req
.
session
.
user
.
ent_code
,
level
:
1
,
info
:
fid
};
if
(
fid
){
if
(
fid
)
{
async
.
waterfall
([
function
(
callback
)
{
forumUserThreadControlService
.
getUserThreadControlById
(
user
.
getMobileUser
(
req
),
function
(
err
,
doc
)
{
if
(
err
)
{
callback
(
err
,
null
);
}
else
{
if
(
doc
)
{
callback
(
null
,
doc
);
}
else
{
callback
(
null
,
null
);
function
(
callback
)
{
forumUserThreadControlService
.
getUserThreadControlById
(
user
.
getMobileUser
(
req
),
function
(
err
,
doc
)
{
if
(
err
)
{
callback
(
err
,
null
);
}
else
{
if
(
doc
)
{
callback
(
null
,
doc
);
}
else
{
callback
(
null
,
null
);
}
}
});
}
],
function
(
err
,
result
)
{
if
(
err
)
{
],
function
(
err
,
result
)
{
if
(
err
)
{
console
.
error
(
err
);
res
.
json
(
returnCode
.
BUSY
);
}
else
{
if
(
result
){
conditions
.
_id
=
{
$nin
:
result
.
thread
};
}
else
{
if
(
result
)
{
conditions
.
_id
=
{
$nin
:
result
.
thread
};
}
forumThreadService
.
getAllThreadByFid
(
conditions
,
pageNo
,
pageSize
,
'-comment_count -praise_count'
,
function
(
err
,
results
)
{
if
(
err
)
{
forumThreadService
.
getAllThreadByFid
(
conditions
,
pageNo
,
pageSize
,
'-comment_count -praise_count'
,
function
(
err
,
results
)
{
if
(
err
)
{
console
.
error
(
err
);
res
.
json
(
returnCode
.
BUSY
);
}
else
{
}
else
{
res
.
json
(
_
.
assign
(
results
,
returnCode
.
SUCCESS
));
}
});
}
});
}
else
{
}
else
{
res
.
json
(
returnCode
.
WRONG_PARAM
);
}
});
//获取论坛晒图文章列表
router
.
get
(
'/info/:fid/photoThreads'
,
function
(
req
,
res
,
next
)
{
var
fid
=
req
.
params
.
fid
||
null
;
var
fid
=
req
.
params
.
fid
||
null
;
var
pageNo
=
req
.
query
.
pageNo
||
1
;
var
pageSize
=
req
.
query
.
pageSize
||
10
;
var
conditions
=
{
ent_code
:
req
.
session
.
user
.
ent_code
,
level
:
1
,
info
:
fid
,
type
:
3
var
conditions
=
{
ent_code
:
req
.
session
.
user
.
ent_code
,
level
:
1
,
info
:
fid
,
type
:
3
};
if
(
fid
){
if
(
fid
)
{
async
.
waterfall
([
function
(
callback
)
{
forumUserThreadControlService
.
getUserThreadControlById
(
user
.
getMobileUser
(
req
),
function
(
err
,
doc
)
{
if
(
err
)
{
callback
(
err
,
null
);
}
else
{
if
(
doc
)
{
callback
(
null
,
doc
);
}
else
{
callback
(
null
,
null
);
function
(
callback
)
{
forumUserThreadControlService
.
getUserThreadControlById
(
user
.
getMobileUser
(
req
),
function
(
err
,
doc
)
{
if
(
err
)
{
callback
(
err
,
null
);
}
else
{
if
(
doc
)
{
callback
(
null
,
doc
);
}
else
{
callback
(
null
,
null
);
}
}
});
}
],
function
(
err
,
result
)
{
if
(
err
)
{
],
function
(
err
,
result
)
{
if
(
err
)
{
console
.
error
(
err
);
res
.
json
(
returnCode
.
BUSY
);
}
else
{
if
(
result
){
conditions
.
_id
=
{
$nin
:
result
.
thread
};
}
else
{
if
(
result
)
{
conditions
.
_id
=
{
$nin
:
result
.
thread
};
}
forumThreadService
.
getAllThreadByFid
(
conditions
,
pageNo
,
pageSize
,
null
,
function
(
err
,
results
)
{
if
(
err
)
{
forumThreadService
.
getAllThreadByFid
(
conditions
,
pageNo
,
pageSize
,
null
,
function
(
err
,
results
)
{
if
(
err
)
{
console
.
error
(
err
);
res
.
json
(
returnCode
.
BUSY
);
}
else
{
}
else
{
res
.
json
(
_
.
assign
(
results
,
returnCode
.
SUCCESS
));
}
});
}
});
}
else
{
}
else
{
res
.
json
(
returnCode
.
WRONG_PARAM
);
}
});
//获取我的文章列表
router
.
get
(
'/info/:fid/myThreads'
,
function
(
req
,
res
,
next
)
{
var
fid
=
req
.
params
.
fid
||
null
;
var
fid
=
req
.
params
.
fid
||
null
;
var
pageNo
=
req
.
query
.
pageNo
||
1
;
var
pageSize
=
req
.
query
.
pageSize
||
10
;
var
conditions
=
{
ent_code
:
req
.
session
.
user
.
ent_code
,
from
:
user
.
getMobileUser
(
req
),
info
:
fid
var
conditions
=
{
ent_code
:
req
.
session
.
user
.
ent_code
,
from
:
user
.
getMobileUser
(
req
),
info
:
fid
};
if
(
fid
){
if
(
fid
)
{
async
.
waterfall
([
function
(
callback
)
{
forumUserThreadControlService
.
getUserThreadControlById
(
user
.
getMobileUser
(
req
),
function
(
err
,
doc
)
{
if
(
err
)
{
callback
(
err
,
null
);
}
else
{
if
(
doc
)
{
callback
(
null
,
doc
);
}
else
{
callback
(
null
,
null
);
function
(
callback
)
{
forumUserThreadControlService
.
getUserThreadControlById
(
user
.
getMobileUser
(
req
),
function
(
err
,
doc
)
{
if
(
err
)
{
callback
(
err
,
null
);
}
else
{
if
(
doc
)
{
callback
(
null
,
doc
);
}
else
{
callback
(
null
,
null
);
}
}
});
}
],
function
(
err
,
result
)
{
if
(
err
)
{
],
function
(
err
,
result
)
{
if
(
err
)
{
console
.
error
(
err
);
res
.
json
(
returnCode
.
BUSY
);
}
else
{
if
(
result
){
conditions
.
_id
=
{
$nin
:
result
.
thread
};
}
else
{
if
(
result
)
{
conditions
.
_id
=
{
$nin
:
result
.
thread
};
}
//获取子话题数据
forumThreadService
.
getAllThreadByFid
(
conditions
,
pageNo
,
pageSize
,
'-praise_count'
,
function
(
err
,
results
)
{
if
(
err
)
{
forumThreadService
.
getAllThreadByFid
(
conditions
,
pageNo
,
pageSize
,
'-praise_count'
,
function
(
err
,
results
)
{
if
(
err
)
{
console
.
error
(
err
);
res
.
json
(
returnCode
.
BUSY
);
}
else
{
}
else
{
res
.
json
(
_
.
assign
(
results
,
returnCode
.
SUCCESS
));
}
});
}
});
}
else
{
}
else
{
res
.
json
(
returnCode
.
WRONG_PARAM
);
}
});
//搜索文章列表
router
.
get
(
'/info/:fid/serachThreads'
,
function
(
req
,
res
,
next
)
{
var
fid
=
req
.
params
.
fid
||
null
;
var
fid
=
req
.
params
.
fid
||
null
;
var
pageNo
=
req
.
query
.
pageNo
||
1
;
var
pageSize
=
req
.
query
.
pageSize
||
10
;
var
content
=
req
.
query
.
content
;
var
content
=
req
.
query
.
content
;
var
conditions
=
{
ent_code
:
req
.
session
.
user
.
ent_code
,
info
:
fid
var
conditions
=
{
ent_code
:
req
.
session
.
user
.
ent_code
,
info
:
fid
};
if
(
content
)
{
conditions
.
content
=
{
if
(
content
)
{
conditions
.
content
=
{
$regex
:
content
,
$options
:
'i'
};
}
if
(
fid
){
if
(
fid
)
{
async
.
waterfall
([
function
(
callback
)
{
forumUserThreadControlService
.
getUserThreadControlById
(
user
.
getMobileUser
(
req
),
function
(
err
,
doc
)
{
if
(
err
)
{
callback
(
err
,
null
);
}
else
{
if
(
doc
)
{
callback
(
null
,
doc
);
}
else
{
callback
(
null
,
null
);
function
(
callback
)
{
forumUserThreadControlService
.
getUserThreadControlById
(
user
.
getMobileUser
(
req
),
function
(
err
,
doc
)
{
if
(
err
)
{
callback
(
err
,
null
);
}
else
{
if
(
doc
)
{
callback
(
null
,
doc
);
}
else
{
callback
(
null
,
null
);
}
}
});
}
],
function
(
err
,
result
)
{
if
(
err
)
{
],
function
(
err
,
result
)
{
if
(
err
)
{
console
.
error
(
err
);
res
.
json
(
returnCode
.
BUSY
);
}
else
{
if
(
result
){
conditions
.
_id
=
{
$nin
:
result
.
thread
};
}
else
{
if
(
result
)
{
conditions
.
_id
=
{
$nin
:
result
.
thread
};
}
//获取子话题数据
forumThreadService
.
getAllThreadByFid
(
conditions
,
pageNo
,
pageSize
,
'-praise_count'
,
function
(
err
,
results
)
{
if
(
err
)
{
forumThreadService
.
getAllThreadByFid
(
conditions
,
pageNo
,
pageSize
,
'-praise_count'
,
function
(
err
,
results
)
{
if
(
err
)
{
console
.
error
(
err
);
res
.
json
(
returnCode
.
BUSY
);
}
else
{
}
else
{
res
.
json
(
_
.
assign
(
results
,
returnCode
.
SUCCESS
));
}
});
}
});
}
else
{
}
else
{
res
.
json
(
returnCode
.
WRONG_PARAM
);
}
});
app/controllers/mobile/forumThread.js
View file @
e192c05c
...
...
@@ -7,82 +7,84 @@ var mongoose = require('mongoose');
var
ForumThread
=
mongoose
.
model
(
'ForumThread'
);
var
ForumComment
=
mongoose
.
model
(
'ForumComment'
);
var
forumThreadService
=
require
(
'../../service/forumThreadService'
);
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
forumThreadService
=
require
(
'../../service/forumThreadService'
);
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
httpService
=
require
(
'../../service/httpService'
);
var
httpService
=
require
(
'../../service/httpService'
);
var
user
=
require
(
'../../utils/user'
);
var
async
=
require
(
'async'
);
var
user
=
require
(
'../../utils/user'
);
var
async
=
require
(
'async'
);
module
.
exports
=
function
(
app
)
{
app
.
use
(
'/v1/forum'
,
router
);
};
function
create
(
req
,
callback
)
{
var
entity
=
req
.
body
;
function
create
(
req
,
callback
)
{
var
entity
=
req
.
body
;
if
(
entity
.
pid
==
''
)
{
entity
.
pid
=
null
;
if
(
entity
.
pid
==
''
)
{
entity
.
pid
=
null
;
}
var
address
=
entity
.
address
||
null
;
if
(
address
)
{
entity
.
address
=
JSON
.
parse
(
address
);
var
address
=
entity
.
address
||
null
;
if
(
address
)
{
entity
.
address
=
JSON
.
parse
(
address
);
}
entity
.
ent_code
=
req
.
session
.
user
.
ent_code
;
entity
.
from
=
user
.
getMobileUser
(
req
);
entity
.
ent_code
=
req
.
session
.
user
.
ent_code
;
entity
.
from
=
user
.
getMobileUser
(
req
);
//-----------处理前端上传图片开始
//格式为['http://imageurl','http://imageurl'],
//转换为[{urlFileName:'http://imageUrL'},{urlFileName:'http://imageUrL'}]
var
images
=
entity
.
images
;
if
(
images
)
{
var
array
=
[];
for
(
var
i
=
0
;
i
<
images
.
length
;
i
=
i
+
1
)
{
var
images
=
entity
.
images
;
if
(
images
)
{
var
array
=
[];
for
(
var
i
=
0
;
i
<
images
.
length
;
i
=
i
+
1
)
{
array
.
push
({
urlFileName
:
images
[
i
]
urlFileName
:
images
[
i
]
});
}
entity
.
images
=
array
;
entity
.
images
=
array
;
}
//-----------处理前端上传图片结束
forumThreadService
.
createThread
(
entity
,
function
(
err
,
entity
)
{
forumThreadService
.
createThread
(
entity
,
function
(
err
,
entity
)
{
if
(
err
)
{
console
.
error
(
err
);
callback
(
err
,
null
);
callback
(
err
,
null
);
}
else
{
callback
(
null
,
entity
);
callback
(
null
,
entity
);
}
});
}
//新增论坛文章
router
.
post
(
'/thread/create'
,
function
(
req
,
res
,
next
)
{
var
integral
=
req
.
session
.
openUser
.
integral
||
0
;
var
exp
=
req
.
session
.
openUser
.
exp
||
0
;
forumRolePermissionService
.
checkRolePermiss
(
req
.
session
.
user
.
ent_code
,
'create'
,
integral
,
exp
,
function
(
err
,
result
)
{
if
(
err
)
{
res
.
json
(
returnCode
.
BUSY
);
}
else
{
if
(
result
){
//有操作权限
create
(
req
,
function
(
err
,
thread
)
{
if
(
err
)
{
res
.
json
(
returnCode
.
BUSY
);
}
else
{
httpService
.
sendRequest
(
req
.
session
.
user
.
ent_code
,
req
.
session
.
openUser
.
mid
,
'post'
);
var
integral
=
req
.
session
.
openUser
.
integral
||
0
;
var
exp
=
req
.
session
.
openUser
.
exp
||
0
;
forumRolePermissionService
.
checkRolePermiss
(
req
.
session
.
user
.
ent_code
,
'create'
,
integral
,
exp
,
function
(
err
,
result
)
{
if
(
err
)
{
res
.
json
(
returnCode
.
BUSY
);
}
else
{
if
(
result
)
{
//有操作权限
create
(
req
,
function
(
err
,
thread
)
{
if
(
err
)
{
res
.
json
(
returnCode
.
BUSY
);
}
else
{
httpService
.
sendRequest
(
req
.
session
.
user
.
ent_code
,
req
.
session
.
openUser
.
mid
,
'post'
);
var
rs
=
{};
rs
.
data
=
{
'id'
:
thread
.
_id
};
rs
.
data
=
{
'id'
:
thread
.
_id
};
res
.
json
(
_
.
assign
(
rs
,
returnCode
.
SUCCESS
));
}
});
}
else
{
}
else
{
res
.
json
(
returnCode
.
ACTION_NOT_PERMISSION
);
}
}
...
...
@@ -92,69 +94,92 @@ router.post('/thread/create', function(req, res, next) {
//获取目标论坛文章
router
.
get
(
'/thread/:tid/get'
,
function
(
req
,
res
,
next
)
{
var
tid
=
req
.
params
.
tid
||
null
;
if
(
tid
){
if
(
tid
)
{
async
.
waterfall
([
function
(
callback
)
{
forumThreadService
.
updateThreadPvCount
(
tid
,
function
(
err
,
doc
)
{
if
(
err
)
{
callback
(
err
,
null
);
}
else
{
callback
(
null
,
null
);
function
(
callback
)
{
forumThreadService
.
updateThreadPvCount
(
tid
,
function
(
err
,
doc
)
{
if
(
err
)
{
callback
(
err
,
null
);
}
else
{
callback
(
null
,
null
);
}
});
},
function
(
data
,
callback
){
forumThreadService
.
getThreadById
(
tid
,
function
(
err
,
thread
){
if
(
err
){
callback
(
err
,
null
);
}
else
{
callback
(
null
,
thread
);
function
(
data
,
callback
)
{
forumThreadService
.
getThreadById
(
tid
,
function
(
err
,
thread
)
{
var
log
=
{
ent_code
:
req
.
session
.
user
,
mid
:
req
.
session
.
openUser
.
mid
,
forumInfo
:
tid
,
open_id
:
req
.
session
.
mobileForumUser
.
openId
,
user
:
req
.
session
.
mobileForumUser
.
userId
,
type
:
3
,
thread_type
:
2
};
if
(
thread
.
type
==
1
)
{
log
.
thread_type
=
2
;
httpService
.
createLog
(
log
);
}
else
if
(
thread
.
type
==
2
&&
thread
.
level
==
1
){
log
.
thread_type
=
1
;
httpService
.
createLog
(
log
);
}
else
if
(
thread
.
type
==
2
&&
thread
.
level
==
2
){
log
.
thread_type
=
4
;
httpService
.
createLog
(
log
);
}
else
if
(
thread
.
type
==
3
){
log
.
thread_type
=
3
;
httpService
.
createLog
(
log
);
}
if
(
err
)
{
callback
(
err
,
null
);
}
else
{
callback
(
null
,
thread
);
}
});
},
],
function
(
err
,
thread
)
{
if
(
err
)
{
],
function
(
err
,
thread
)
{
if
(
err
)
{
console
.
error
(
err
);
res
.
json
(
returnCode
.
BUSY
);
}
else
{
}
else
{
var
rs
=
{};
rs
.
data
=
thread
;
res
.
json
(
_
.
assign
(
rs
,
returnCode
.
SUCCESS
));
}
});
}
else
{
}
else
{
res
.
json
(
returnCode
.
WRONG_PARAM
);
}
});
//更新文章状态、如:屏蔽
router
.
post
(
'/thread/:tid/update'
,
function
(
req
,
res
,
next
)
{
var
tid
=
req
.
params
.
tid
;
if
(
tid
)
{
forumThreadService
.
updateThreadById
(
tid
,
req
.
body
,
function
(
err
,
thread
)
{
if
(
err
)
{
var
tid
=
req
.
params
.
tid
;
if
(
tid
)
{
forumThreadService
.
updateThreadById
(
tid
,
req
.
body
,
function
(
err
,
thread
)
{
if
(
err
)
{
res
.
json
(
returnCode
.
BUSY
);
}
else
{
}
else
{
res
.
json
(
returnCode
.
SUCCESS
);
}
});
}
else
{
}
else
{
res
.
json
(
returnCode
.
WRONG_PARAM
);
}
});
//删除文章
router
.
post
(
'/thread/:tid/delete'
,
function
(
req
,
res
,
next
)
{
var
tid
=
req
.
params
.
tid
;
if
(
tid
)
{
forumThreadService
.
deleteThreadById
(
tid
,
function
(
err
,
thread
)
{
if
(
err
)
{
var
tid
=
req
.
params
.
tid
;
if
(
tid
)
{
forumThreadService
.
deleteThreadById
(
tid
,
function
(
err
,
thread
)
{
if
(
err
)
{
res
.
json
(
returnCode
.
BUSY
);
}
else
{
}
else
{
res
.
json
(
returnCode
.
SUCCESS
);
}
});
}
else
{
}
else
{
res
.
json
(
returnCode
.
WRONG_PARAM
);
}
});
...
...
@@ -162,82 +187,83 @@ router.post('/thread/:tid/delete', function(req, res, next) {
//文章点赞
router
.
post
(
'/thread/:tid/raise'
,
function
(
req
,
res
,
next
)
{
var
tid
=
req
.
params
.
tid
||
null
;
if
(
tid
)
{
var
integral
=
req
.
session
.
openUser
.
integral
||
0
;
var
exp
=
req
.
session
.
openUser
.
exp
||
0
;
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
,
logs
)
{
if
(
err
)
{
forumPraiseLogService
.
queryPraiseLog
(
tid
,
null
,
user
.
getMobileUser
(
req
),
1
,
function
(
err
,
logs
)
{
if
(
err
)
{
res
.
json
(
returnCode
.
BUSY
);
}
else
{
if
(
logs
&&
logs
.
length
>
0
)
{
}
else
{
if
(
logs
&&
logs
.
length
>
0
)
{
res
.
json
(
returnCode
.
CAN_NOT_RAISE_REPEAT
);
}
else
{
}
else
{
//1.检查是否有权限
forumRolePermissionService
.
checkRolePermiss
(
req
.
session
.
user
.
ent_code
,
'raise'
,
integral
,
exp
,
function
(
err
,
result
)
{
if
(
err
)
{
forumRolePermissionService
.
checkRolePermiss
(
req
.
session
.
user
.
ent_code
,
'raise'
,
integral
,
exp
,
function
(
err
,
result
)
{
if
(
err
)
{
res
.
json
(
returnCode
.
BUSY
);
}
else
{
if
(
result
){
//有操作权限
}
else
{
if
(
result
)
{
//有操作权限
//2.获取论坛文章
forumThreadService
.
getThreadById
(
tid
,
function
(
err
,
thread
)
{
if
(
err
)
{
forumThreadService
.
getThreadById
(
tid
,
function
(
err
,
thread
)
{
if
(
err
)
{
res
.
json
(
returnCode
.
BUSY
);
}
else
{
}
else
{
async
.
parallel
([
function
(
callback
)
{
function
(
callback
)
{
//3.更新文章统计数据(点赞数)
if
(
thread
)
{
forumThreadService
.
updateThreadRaiseCount
(
tid
,
function
(
err
,
cb
)
{
if
(
err
)
{
callback
(
err
,
null
);
}
else
{
callback
(
null
,
null
);
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
);
}
else
{
callback
(
'cannot find thread by id'
,
null
);
}
},
function
(
callback
)
{
var
entity
=
{
ent_code
:
req
.
session
.
user
.
ent_code
,
user
:
user
.
getMobileUser
(
req
),
thread
:
tid
,
ip
:
req
.
ip
,
comment
:
null
,
type
:
1
function
(
callback
)
{
var
entity
=
{
ent_code
:
req
.
session
.
user
.
ent_code
,
user
:
user
.
getMobileUser
(
req
),
thread
:
tid
,
ip
:
req
.
ip
,
comment
:
null
,
type
:
1
};
//4.创建点赞日志
forumPraiseLogService
.
createPraiseLog
(
entity
,
function
(
err
,
result
)
{
if
(
err
)
{
callback
(
err
,
null
);
}
else
{
callback
(
null
,
null
);
forumPraiseLogService
.
createPraiseLog
(
entity
,
function
(
err
,
result
)
{
if
(
err
)
{
callback
(
err
,
null
);
}
else
{
callback
(
null
,
null
);
}
});
}],
function
(
err
,
results
){
if
(
err
){
}
],
function
(
err
,
results
)
{
if
(
err
)
{
console
.
error
(
err
);
res
.
json
(
returnCode
.
BUSY
);
}
else
{
httpService
.
sendRequest
(
req
.
session
.
user
.
ent_code
,
req
.
session
.
openUser
.
mid
,
'thread_praise'
);
forumThreadService
.
getThreadById
(
tid
,
function
(
err
,
doc
)
{
if
(
err
)
{
}
else
{
httpService
.
sendRequest
(
req
.
session
.
user
.
ent_code
,
req
.
session
.
openUser
.
mid
,
'thread_praise'
);
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
{
var
rs
=
{};
rs
.
praise_count
=
doc
.
praise_count
;
res
.
json
(
_
.
assign
(
rs
,
returnCode
.
SUCCESS
));
}
});
}
});
}
});
}
else
{
}
else
{
res
.
json
(
returnCode
.
ACTION_NOT_PERMISSION
);
}
}
...
...
@@ -246,7 +272,7 @@ router.post('/thread/:tid/raise', function(req, res, next) {
}
});
}
else
{
}
else
{
res
.
json
(
returnCode
.
WRONG_PARAM
);
}
});
...
...
@@ -254,70 +280,70 @@ router.post('/thread/:tid/raise', function(req, res, next) {
//文章分享
router
.
post
(
'/thread/:tid/share'
,
function
(
req
,
res
,
next
)
{
var
tid
=
req
.
params
.
tid
||
null
;
if
(
tid
)
{
var
integral
=
req
.
session
.
openUser
.
integral
||
0
;
var
exp
=
req
.
session
.
openUser
.
exp
||
0
;
var
destination
=
req
.
body
.
destination
||
'1'
;
if
(
tid
)
{
var
integral
=
req
.
session
.
openUser
.
integral
||
0
;
var
exp
=
req
.
session
.
openUser
.
exp
||
0
;
var
destination
=
req
.
body
.
destination
||
'1'
;
//1.检查是否有权限
forumRolePermissionService
.
checkRolePermiss
(
req
.
session
.
user
.
ent_code
,
'share'
,
integral
,
exp
,
function
(
err
,
result
)
{
if
(
err
)
{
forumRolePermissionService
.
checkRolePermiss
(
req
.
session
.
user
.
ent_code
,
'share'
,
integral
,
exp
,
function
(
err
,
result
)
{
if
(
err
)
{
res
.
json
(
returnCode
.
BUSY
);
}
else
{
if
(
result
){
//有操作权限
}
else
{
if
(
result
)
{
//有操作权限
//2.获取论坛文章
forumThreadService
.
getThreadById
(
tid
,
function
(
err
,
thread
)
{
if
(
err
)
{
forumThreadService
.
getThreadById
(
tid
,
function
(
err
,
thread
)
{
if
(
err
)
{
res
.
json
(
returnCode
.
BUSY
);
}
else
{
}
else
{
async
.
parallel
([
function
(
callback
)
{
function
(
callback
)
{
//3.更新文章统计数据(分享数)
if
(
thread
)
{
forumThreadService
.
updateThreadShareCount
(
tid
,
function
(
err
,
cb
)
{
if
(
err
)
{
callback
(
err
,
null
);
}
else
{
callback
(
null
,
null
);
if
(
thread
)
{
forumThreadService
.
updateThreadShareCount
(
tid
,
function
(
err
,
cb
)
{
if
(
err
)
{
callback
(
err
,
null
);
}
else
{
callback
(
null
,
null
);
}
});
}
else
{
callback
(
'cannot find thread by id'
,
null
);
}
else
{
callback
(
'cannot find thread by id'
,
null
);
}
},
function
(
callback
)
{
var
entity
=
{
ent_code
:
req
.
session
.
user
.
ent_code
,
user
:
user
.
getMobileUser
(
req
),
thread
:
tid
,
destination
:
destination
,
ip
:
req
.
ip
function
(
callback
)
{
var
entity
=
{
ent_code
:
req
.
session
.
user
.
ent_code
,
user
:
user
.
getMobileUser
(
req
),
thread
:
tid
,
destination
:
destination
,
ip
:
req
.
ip
};
//4.创建分享日志
forumShareLogService
.
createShareLog
(
entity
,
function
(
err
,
result
)
{
if
(
err
)
{
callback
(
err
,
null
);
}
else
{
callback
(
null
,
null
);
forumShareLogService
.
createShareLog
(
entity
,
function
(
err
,
result
)
{
if
(
err
)
{
callback
(
err
,
null
);
}
else
{
callback
(
null
,
null
);
}
});
}
],
function
(
err
,
results
)
{
if
(
err
)
{
],
function
(
err
,
results
)
{
if
(
err
)
{
console
.
error
(
err
);
res
.
json
(
returnCode
.
BUSY
);
}
else
{
}
else
{
// httpService.sendRequest(req.session.user.ent_code,req.session.openUser.mid,'share');
res
.
json
(
returnCode
.
SUCCESS
);
}
});
}
});
}
else
{
}
else
{
res
.
json
(
returnCode
.
ACTION_NOT_PERMISSION
);
}
}
});
}
else
{
}
else
{
res
.
json
(
returnCode
.
WRONG_PARAM
);
}
});
...
...
@@ -325,113 +351,115 @@ router.post('/thread/:tid/share', function(req, res, next) {
//新增文章评论
router
.
post
(
'/thread/:tid/comment/create'
,
function
(
req
,
res
,
next
)
{
var
tid
=
req
.
params
.
tid
||
null
;
if
(
tid
)
{
var
integral
=
req
.
session
.
openUser
.
integral
||
0
;
var
exp
=
req
.
session
.
openUser
.
exp
||
0
;
var
destination
=
req
.
body
.
destination
||
'1'
;
if
(
tid
)
{
var
integral
=
req
.
session
.
openUser
.
integral
||
0
;
var
exp
=
req
.
session
.
openUser
.
exp
||
0
;
var
destination
=
req
.
body
.
destination
||
'1'
;
//1.检查是否有权限
forumRolePermissionService
.
checkRolePermiss
(
req
.
session
.
user
.
ent_code
,
'comment'
,
integral
,
exp
,
function
(
err
,
result
)
{
if
(
err
)
{
forumRolePermissionService
.
checkRolePermiss
(
req
.
session
.
user
.
ent_code
,
'comment'
,
integral
,
exp
,
function
(
err
,
result
)
{
if
(
err
)
{
console
.
error
(
err
);
res
.
json
(
returnCode
.
BUSY
);
}
else
{
if
(
result
){
//有操作权限
var
content
=
req
.
body
.
content
;
if
(
content
){
//评论不能为空
}
else
{
if
(
result
)
{
//有操作权限
var
content
=
req
.
body
.
content
;
if
(
content
)
{
//评论不能为空
//2.获取论坛文章
forumThreadService
.
getThreadById
(
tid
,
function
(
err
,
thread
)
{
if
(
err
)
{
forumThreadService
.
getThreadById
(
tid
,
function
(
err
,
thread
)
{
if
(
err
)
{
res
.
json
(
returnCode
.
BUSY
);
}
else
{
}
else
{
async
.
parallel
([
function
(
callback
)
{
var
entity
=
{
ent_code
:
req
.
session
.
user
.
ent_code
,
from
:
user
.
getMobileUser
(
req
),
content
:
content
,
ip
:
req
.
ip
,
thread
:
thread
,
level
:
'1'
function
(
callback
)
{
var
entity
=
{
ent_code
:
req
.
session
.
user
.
ent_code
,
from
:
user
.
getMobileUser
(
req
),
content
:
content
,
ip
:
req
.
ip
,
thread
:
thread
,
level
:
'1'
};
//4.创建文章评论
forumCommentService
.
createComment
(
entity
,
function
(
err
,
newComment
)
{
if
(
err
)
{
callback
(
err
,
null
);
}
else
{
var
comments
=
thread
.
comments
;
forumCommentService
.
createComment
(
entity
,
function
(
err
,
newComment
)
{
if
(
err
)
{
callback
(
err
,
null
);
}
else
{
var
comments
=
thread
.
comments
;
// console.log('=========');
// console.log(comments);
// console.log('=========');
var
array
=
[];
if
(
comments
&&
comments
.
items
&&
comments
.
items
.
length
>
0
)
{
array
=
comments
.
items
;
var
array
=
[];
if
(
comments
&&
comments
.
items
&&
comments
.
items
.
length
>
0
)
{
array
=
comments
.
items
;
}
array
.
push
(
newComment
.
_id
);
forumThreadService
.
updateThreadById
(
tid
,{
comments
:
array
},
function
(
err
,
result
){
if
(
err
){
callback
(
err
,
null
);
}
else
{
callback
(
null
,
null
);
forumThreadService
.
updateThreadById
(
tid
,
{
comments
:
array
},
function
(
err
,
result
)
{
if
(
err
)
{
callback
(
err
,
null
);
}
else
{
callback
(
null
,
null
);
}
});
}
});
},
function
(
callback
)
{
function
(
callback
)
{
//3.更新文章统计数据(评论数)
if
(
thread
)
{
forumThreadService
.
updateThreadCommentCount
(
tid
,
function
(
err
,
results
)
{
if
(
err
)
{
if
(
thread
)
{
forumThreadService
.
updateThreadCommentCount
(
tid
,
function
(
err
,
results
)
{
if
(
err
)
{
console
.
log
(
err
);
callback
(
err
,
null
);
}
else
{
callback
(
null
,
null
);
callback
(
err
,
null
);
}
else
{
callback
(
null
,
null
);
}
});
}
else
{
callback
(
'cannot find thread by id'
,
null
);
}
else
{
callback
(
'cannot find thread by id'
,
null
);
}
}
],
function
(
err
,
results
)
{
if
(
err
)
{
],
function
(
err
,
results
)
{
if
(
err
)
{
console
.
error
(
err
);
res
.
json
(
returnCode
.
BUSY
);
}
else
{
httpService
.
sendRequest
(
req
.
session
.
user
.
ent_code
,
req
.
session
.
openUser
.
mid
,
'comment'
);
}
else
{
httpService
.
sendRequest
(
req
.
session
.
user
.
ent_code
,
req
.
session
.
openUser
.
mid
,
'comment'
);
async
.
parallel
([
function
(
callback
)
{
function
(
callback
)
{
//获取最新5条评论
var
conditions
=
{
thread
:
tid
,
level
:
'1'
var
conditions
=
{
thread
:
tid
,
level
:
'1'
};
forumCommentService
.
getAllComment
(
conditions
,
1
,
5
,
function
(
err
,
results
)
{
if
(
err
)
{
forumCommentService
.
getAllComment
(
conditions
,
1
,
5
,
function
(
err
,
results
)
{
if
(
err
)
{
console
.
log
(
err
);
callback
(
err
,
null
);
}
else
{
callback
(
null
,
results
);
callback
(
err
,
null
);
}
else
{
callback
(
null
,
results
);
}
});
},
function
(
callback
)
{
forumThreadService
.
getThreadById
(
tid
,
function
(
err
,
thread
)
{
if
(
err
)
{
function
(
callback
)
{
forumThreadService
.
getThreadById
(
tid
,
function
(
err
,
thread
)
{
if
(
err
)
{
console
.
log
(
err
);
callback
(
err
,
null
);
}
else
{
callback
(
null
,
thread
);
callback
(
err
,
null
);
}
else
{
callback
(
null
,
thread
);
}
});
}
],
function
(
err
,
results
)
{
if
(
err
)
{
],
function
(
err
,
results
)
{
if
(
err
)
{
res
.
json
(
returnCode
.
BUSY
);
}
else
{
var
rs
=
{};
rs
.
comments
=
results
[
0
].
items
;
rs
.
commentCount
=
results
[
1
].
comment_count
;
res
.
json
(
_
.
assign
(
rs
,
returnCode
.
SUCCESS
));
}
else
{
var
rs
=
{};
rs
.
comments
=
results
[
0
].
items
;
rs
.
commentCount
=
results
[
1
].
comment_count
;
res
.
json
(
_
.
assign
(
rs
,
returnCode
.
SUCCESS
));
}
});
...
...
@@ -439,15 +467,15 @@ router.post('/thread/:tid/comment/create', function(req, res, next) {
});
}
});
}
else
{
}
else
{
res
.
json
(
returnCode
.
WRONG_PARAM
);
}
}
else
{
}
else
{
res
.
json
(
returnCode
.
ACTION_NOT_PERMISSION
);
}
}
});
}
else
{
}
else
{
res
.
json
(
returnCode
.
WRONG_PARAM
);
}
});
...
...
@@ -455,83 +483,88 @@ router.post('/thread/:tid/comment/create', function(req, res, next) {
//新建文章评论的子评论
router
.
post
(
'/thread/:tid/comment/:cid/create'
,
function
(
req
,
res
,
next
)
{
var
tid
=
req
.
params
.
tid
||
null
;
var
cid
=
req
.
params
.
cid
||
null
;
if
(
tid
&&
cid
)
{
var
integral
=
req
.
session
.
openUser
.
integral
||
0
;
var
exp
=
req
.
session
.
openUser
.
exp
||
0
;
var
destination
=
req
.
body
.
destination
||
'1'
;
req
.
body
.
from
=
user
.
getMobileUser
(
req
);
var
cid
=
req
.
params
.
cid
||
null
;
if
(
tid
&&
cid
)
{
var
integral
=
req
.
session
.
openUser
.
integral
||
0
;
var
exp
=
req
.
session
.
openUser
.
exp
||
0
;
var
destination
=
req
.
body
.
destination
||
'1'
;
req
.
body
.
from
=
user
.
getMobileUser
(
req
);
//1.检查是否有权限
forumRolePermissionService
.
checkRolePermiss
(
req
.
session
.
user
.
ent_code
,
'reply'
,
integral
,
exp
,
function
(
err
,
result
)
{
if
(
err
)
{
forumRolePermissionService
.
checkRolePermiss
(
req
.
session
.
user
.
ent_code
,
'reply'
,
integral
,
exp
,
function
(
err
,
result
)
{
if
(
err
)
{
console
.
error
(
err
);
res
.
json
(
returnCode
.
BUSY
);
}
else
{
if
(
result
){
//有操作权限
var
content
=
req
.
body
.
content
;
if
(
content
){
//评论不能为空
}
else
{
if
(
result
)
{
//有操作权限
var
content
=
req
.
body
.
content
;
if
(
content
)
{
//评论不能为空
//2.获取论坛评论
forumCommentService
.
getCommentById
(
cid
,
function
(
err
,
comment
)
{
if
(
err
)
{
forumCommentService
.
getCommentById
(
cid
,
function
(
err
,
comment
)
{
if
(
err
)
{
res
.
json
(
returnCode
.
BUSY
);
}
else
{
}
else
{
async
.
parallel
([
function
(
callback
)
{
var
entity
=
{
ent_code
:
req
.
session
.
user
.
ent_code
,
from
:
user
.
getMobileUser
(
req
),
to
:
req
.
body
.
to
,
content
:
content
,
ip
:
req
.
ip
,
thread
:
tid
,
level
:
'2'
function
(
callback
)
{
var
entity
=
{
ent_code
:
req
.
session
.
user
.
ent_code
,
from
:
user
.
getMobileUser
(
req
),
to
:
req
.
body
.
to
,
content
:
content
,
ip
:
req
.
ip
,
thread
:
tid
,
level
:
'2'
};
//4.创建文章评论
forumCommentService
.
createComment
(
entity
,
function
(
err
,
newComment
)
{
if
(
err
)
{
callback
(
err
,
null
);
}
else
{
var
comments
=
comment
.
comments
;
var
array
=
[];
if
(
comments
&&
comments
.
length
>
0
)
{
array
=
comments
;
forumCommentService
.
createComment
(
entity
,
function
(
err
,
newComment
)
{
if
(
err
)
{
callback
(
err
,
null
);
}
else
{
var
comments
=
comment
.
comments
;
var
array
=
[];
if
(
comments
&&
comments
.
length
>
0
)
{
array
=
comments
;
}
array
.
push
(
newComment
.
_id
);
forumCommentService
.
updateCommentById
(
cid
,{
comments
:
array
},
function
(
err
,
result
){
if
(
err
){
callback
(
err
,
null
);
}
else
{
callback
(
null
,
newComment
);
forumCommentService
.
updateCommentById
(
cid
,
{
comments
:
array
},
function
(
err
,
result
)
{
if
(
err
)
{
callback
(
err
,
null
);
}
else
{
callback
(
null
,
newComment
);
}
});
}
});
},
function
(
callback
)
{
forumCommentService
.
updateCommentCount
(
cid
,
function
(
err
,
results
)
{
if
(
err
)
{
function
(
callback
)
{
forumCommentService
.
updateCommentCount
(
cid
,
function
(
err
,
results
)
{
if
(
err
)
{
console
.
log
(
err
);
callback
(
err
,
null
);
}
else
{
callback
(
null
,
null
);
callback
(
err
,
null
);
}
else
{
callback
(
null
,
null
);
}
});
}
],
function
(
err
,
results
)
{
if
(
err
)
{
],
function
(
err
,
results
)
{
if
(
err
)
{
console
.
error
(
err
);
res
.
json
(
returnCode
.
BUSY
);
}
else
{
httpService
.
sendRequest
(
req
.
session
.
user
.
ent_code
,
req
.
session
.
openUser
.
mid
,
'reply'
);
ForumComment
.
populate
(
results
[
0
],
{
path
:
'from to'
,
select
:
'uid nickName icon comments'
}
,
function
(
err
,
c
){
if
(
err
){
}
else
{
httpService
.
sendRequest
(
req
.
session
.
user
.
ent_code
,
req
.
session
.
openUser
.
mid
,
'reply'
);
ForumComment
.
populate
(
results
[
0
],
{
path
:
'from to'
,
select
:
'uid nickName icon comments'
},
function
(
err
,
c
)
{
if
(
err
)
{
res
.
json
(
returnCode
.
BUSY
);
}
else
{
}
else
{
var
rs
=
{};
rs
.
data
=
results
[
0
];
res
.
json
(
_
.
assign
(
rs
,
returnCode
.
SUCCESS
));
var
rs
=
{};
rs
.
data
=
results
[
0
];
res
.
json
(
_
.
assign
(
rs
,
returnCode
.
SUCCESS
));
}
});
// res.json(returnCode.SUCCESS);
...
...
@@ -539,15 +572,15 @@ router.post('/thread/:tid/comment/:cid/create', function(req, res, next) {
});
}
});
}
else
{
}
else
{
res
.
json
(
returnCode
.
WRONG_PARAM
);
}
}
else
{
}
else
{
res
.
json
(
returnCode
.
ACTION_NOT_PERMISSION
);
}
}
});
}
else
{
}
else
{
res
.
json
(
returnCode
.
WRONG_PARAM
);
}
});
...
...
@@ -555,144 +588,145 @@ 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
.
params
.
tid
||
null
;
var
cid
=
req
.
params
.
cid
||
null
;
if
(
tid
&&
cid
)
{
forumCommentService
.
getCommentById
(
cid
,
function
(
err
,
result
)
{
if
(
err
)
{
var
cid
=
req
.
params
.
cid
||
null
;
if
(
tid
&&
cid
)
{
forumCommentService
.
getCommentById
(
cid
,
function
(
err
,
result
)
{
if
(
err
)
{
console
.
error
(
err
);
res
.
json
(
returnCode
.
BUSY
);
}
else
{
if
(
result
)
{
if
(
result
.
from
===
user
.
getMobileUser
(
req
))
{
}
else
{
if
(
result
)
{
if
(
result
.
from
===
user
.
getMobileUser
(
req
))
{
async
.
parallel
([
function
(
callback
)
{
forumCommentService
.
deleteCommentById
(
cid
,
function
(
err
,
result
)
{
if
(
err
)
{
callback
(
err
,
null
);
}
else
{
callback
(
null
,
null
);
function
(
callback
)
{
forumCommentService
.
deleteCommentById
(
cid
,
function
(
err
,
result
)
{
if
(
err
)
{
callback
(
err
,
null
);
}
else
{
callback
(
null
,
null
);
}
});
}
],
function
(
err
,
results
)
{
if
(
err
)
{
],
function
(
err
,
results
)
{
if
(
err
)
{
res
.
json
(
returnCode
.
BUSY
);
}
else
{
}
else
{
res
.
json
(
returnCode
.
SUCCESS
);
}
});
}
else
{
}
else
{
res
.
json
(
returnCode
.
ACTION_NOT_PERMISSION
);
}
}
else
{
}
else
{
res
.
json
(
returnCode
.
WRONG_PARAM
);
}
}
});
}
else
{
}
else
{
res
.
json
(
returnCode
.
WRONG_PARAM
);
}
});
//评论列表
router
.
get
(
'/thread/:tid/comment/list'
,
function
(
req
,
res
,
next
)
{
var
tid
=
req
.
params
.
tid
||
null
;
var
tid
=
req
.
params
.
tid
||
null
;
var
pageNo
=
req
.
query
.
pageNo
||
1
;
var
pageSize
=
req
.
query
.
pageSize
||
10
;
var
conditions
=
{
ent_code
:
req
.
session
.
user
.
ent_code
,
thread
:
tid
,
level
:
'1'
var
conditions
=
{
ent_code
:
req
.
session
.
user
.
ent_code
,
thread
:
tid
,
level
:
'1'
};
if
(
tid
)
{
if
(
tid
)
{
//获取最新5条评论
forumCommentService
.
getAllComment
(
conditions
,
pageNo
,
pageSize
,
function
(
err
,
results
)
{
if
(
err
)
{
forumCommentService
.
getAllComment
(
conditions
,
pageNo
,
pageSize
,
function
(
err
,
results
)
{
if
(
err
)
{
console
.
log
(
err
);
res
.
json
(
returnCode
.
BUSY
);
}
else
{
}
else
{
res
.
json
(
_
.
assign
(
results
,
returnCode
.
SUCCESS
));
}
});
}
else
{
}
else
{
res
.
json
(
returnCode
.
WRONG_PARAM
);
}
});
//评论点赞
router
.
post
(
'/thread/:tid/comment/:cid/raise'
,
function
(
req
,
res
,
next
)
{
var
tid
=
req
.
params
.
tid
||
null
;
var
cid
=
req
.
params
.
cid
||
null
;
var
tid
=
req
.
params
.
tid
||
null
;
var
cid
=
req
.
params
.
cid
||
null
;
if
(
tid
&&
cid
){
if
(
tid
&&
cid
)
{
var
integral
=
req
.
session
.
openUser
.
integral
||
0
;
var
exp
=
req
.
session
.
openUser
.
exp
||
0
;
var
integral
=
req
.
session
.
openUser
.
integral
||
0
;
var
exp
=
req
.
session
.
openUser
.
exp
||
0
;
//判断是否已经点赞
forumPraiseLogService
.
queryPraiseLog
(
tid
,
cid
,
user
.
getMobileUser
(
req
),
2
,
function
(
err
,
logs
)
{
if
(
err
)
{
forumPraiseLogService
.
queryPraiseLog
(
tid
,
cid
,
user
.
getMobileUser
(
req
),
2
,
function
(
err
,
logs
)
{
if
(
err
)
{
res
.
json
(
returnCode
.
BUSY
);
}
else
{
if
(
logs
&&
logs
.
length
>
0
)
{
}
else
{
if
(
logs
&&
logs
.
length
>
0
)
{
res
.
json
(
returnCode
.
CAN_NOT_RAISE_REPEAT
);
}
else
{
}
else
{
//1.检查是否有权限
forumRolePermissionService
.
checkRolePermiss
(
req
.
session
.
user
.
ent_code
,
'raise'
,
integral
,
exp
,
function
(
err
,
result
)
{
if
(
err
)
{
forumRolePermissionService
.
checkRolePermiss
(
req
.
session
.
user
.
ent_code
,
'raise'
,
integral
,
exp
,
function
(
err
,
result
)
{
if
(
err
)
{
res
.
json
(
returnCode
.
BUSY
);
}
else
{
if
(
result
){
//有操作权限
}
else
{
if
(
result
)
{
//有操作权限
//2.获取论坛文章
forumThreadService
.
getThreadById
(
tid
,
function
(
err
,
thread
)
{
if
(
err
)
{
forumThreadService
.
getThreadById
(
tid
,
function
(
err
,
thread
)
{
if
(
err
)
{
res
.
json
(
returnCode
.
BUSY
);
}
else
{
}
else
{
async
.
parallel
([
function
(
callback
)
{
forumCommentService
.
updatePraiseCount
(
cid
,
function
(
err
,
results
)
{
if
(
err
)
{
function
(
callback
)
{
forumCommentService
.
updatePraiseCount
(
cid
,
function
(
err
,
results
)
{
if
(
err
)
{
console
.
log
(
err
);
callback
(
err
,
null
);
}
else
{
callback
(
null
,
null
);
callback
(
err
,
null
);
}
else
{
callback
(
null
,
null
);
}
});
},
function
(
callback
)
{
var
entity
=
{
ent_code
:
req
.
session
.
user
.
ent_code
,
user
:
user
.
getMobileUser
(
req
),
thread
:
tid
,
ip
:
req
.
ip
,
comment
:
cid
,
type
:
2
function
(
callback
)
{
var
entity
=
{
ent_code
:
req
.
session
.
user
.
ent_code
,
user
:
user
.
getMobileUser
(
req
),
thread
:
tid
,
ip
:
req
.
ip
,
comment
:
cid
,
type
:
2
};
//4.创建点赞日志
forumPraiseLogService
.
createPraiseLog
(
entity
,
function
(
err
,
result
)
{
if
(
err
)
{
callback
(
err
,
null
);
}
else
{
callback
(
null
,
null
);
forumPraiseLogService
.
createPraiseLog
(
entity
,
function
(
err
,
result
)
{
if
(
err
)
{
callback
(
err
,
null
);
}
else
{
callback
(
null
,
null
);
}
});
}],
function
(
err
,
results
){
if
(
err
){
}
],
function
(
err
,
results
)
{
if
(
err
)
{
console
.
error
(
err
);
res
.
json
(
returnCode
.
BUSY
);
}
else
{
httpService
.
sendRequest
(
req
.
session
.
user
.
ent_code
,
req
.
session
.
openUser
.
mid
,
'comment_praise'
);
}
else
{
httpService
.
sendRequest
(
req
.
session
.
user
.
ent_code
,
req
.
session
.
openUser
.
mid
,
'comment_praise'
);
//返回点赞总数
forumCommentService
.
getCommentById
(
cid
,
function
(
err
,
doc
)
{
if
(
err
)
{
forumCommentService
.
getCommentById
(
cid
,
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
{
var
rs
=
{};
rs
.
praise_count
=
doc
.
praise_count
;
res
.
json
(
_
.
assign
(
rs
,
returnCode
.
SUCCESS
));
}
});
...
...
@@ -700,7 +734,7 @@ router.post('/thread/:tid/comment/:cid/raise', function(req, res, next) {
});
}
});
}
else
{
}
else
{
res
.
json
(
returnCode
.
ACTION_NOT_PERMISSION
);
}
}
...
...
@@ -709,7 +743,7 @@ router.post('/thread/:tid/comment/:cid/raise', function(req, res, next) {
}
});
}
else
{
}
else
{
res
.
json
(
returnCode
.
WRONG_PARAM
);
}
});
...
...
@@ -717,195 +751,201 @@ router.post('/thread/:tid/comment/:cid/raise', function(req, res, next) {
//用户屏蔽文章
router
.
post
(
'/thread/:tid/userShield'
,
function
(
req
,
res
,
next
)
{
var
tid
=
req
.
params
.
tid
||
null
;
if
(
tid
)
{
forumUserThreadControlService
.
getUserThreadControlById
(
user
.
getMobileUser
(
req
),
function
(
err
,
doc
)
{
if
(
err
)
{
if
(
tid
)
{
forumUserThreadControlService
.
getUserThreadControlById
(
user
.
getMobileUser
(
req
),
function
(
err
,
doc
)
{
if
(
err
)
{
res
.
json
(
returnCode
.
BUSY
);
}
else
{
if
(
doc
)
{
var
thread
=
doc
.
thread
;
}
else
{
if
(
doc
)
{
var
thread
=
doc
.
thread
;
thread
.
push
(
tid
);
forumUserThreadControlService
.
updateUserThreadControlById
(
doc
.
_id
,{
thread
:
thread
},
function
(
err
,
result
){
if
(
err
){
forumUserThreadControlService
.
updateUserThreadControlById
(
doc
.
_id
,
{
thread
:
thread
},
function
(
err
,
result
)
{
if
(
err
)
{
res
.
json
(
returnCode
.
BUSY
);
}
else
{
}
else
{
res
.
json
(
returnCode
.
SUCCESS
);
}
});
}
else
{
var
array
=
[
tid
];
var
entity
=
{
ent_code
:
req
.
session
.
user
.
ent_code
,
user
:
user
.
getMobileUser
(
req
),
thread
:
array
}
else
{
var
array
=
[
tid
];
var
entity
=
{
ent_code
:
req
.
session
.
user
.
ent_code
,
user
:
user
.
getMobileUser
(
req
),
thread
:
array
};
forumUserThreadControlService
.
createUserThreadControl
(
entity
,
function
(
err
,
result
)
{
if
(
err
)
{
forumUserThreadControlService
.
createUserThreadControl
(
entity
,
function
(
err
,
result
)
{
if
(
err
)
{
res
.
json
(
returnCode
.
BUSY
);
}
else
{
}
else
{
res
.
json
(
returnCode
.
SUCCESS
);
}
});
}
}
});
}
else
{
}
else
{
res
.
json
(
returnCode
.
WRONG_PARAM
);
}
});
//获取论坛话题列表
router
.
get
(
'/thread/:tid/topics'
,
function
(
req
,
res
,
next
)
{
var
tid
=
req
.
params
.
tid
||
null
;
var
tid
=
req
.
params
.
tid
||
null
;
var
pageNo
=
req
.
query
.
pageNo
||
1
;
var
pageSize
=
req
.
query
.
pageSize
||
10
;
var
conditions
=
{
ent_code
:
req
.
session
.
user
.
ent_code
,
pid
:
tid
,
type
:
2
var
conditions
=
{
ent_code
:
req
.
session
.
user
.
ent_code
,
pid
:
tid
,
type
:
2
};
if
(
tid
){
if
(
tid
)
{
async
.
waterfall
([
function
(
callback
)
{
forumUserThreadControlService
.
getUserThreadControlById
(
user
.
getMobileUser
(
req
),
function
(
err
,
doc
)
{
if
(
err
)
{
callback
(
err
,
null
);
}
else
{
if
(
doc
)
{
callback
(
null
,
doc
);
}
else
{
callback
(
null
,
null
);
function
(
callback
)
{
forumUserThreadControlService
.
getUserThreadControlById
(
user
.
getMobileUser
(
req
),
function
(
err
,
doc
)
{
if
(
err
)
{
callback
(
err
,
null
);
}
else
{
if
(
doc
)
{
callback
(
null
,
doc
);
}
else
{
callback
(
null
,
null
);
}
}
});
}
],
function
(
err
,
result
)
{
if
(
err
)
{
],
function
(
err
,
result
)
{
if
(
err
)
{
console
.
error
(
err
);
res
.
json
(
returnCode
.
BUSY
);
}
else
{
if
(
result
){
conditions
.
_id
=
{
$nin
:
result
.
thread
};
}
else
{
if
(
result
)
{
conditions
.
_id
=
{
$nin
:
result
.
thread
};
}
//获取子话题数据
forumThreadService
.
getAllThreadByFid
(
conditions
,
pageNo
,
pageSize
,
null
,
function
(
err
,
results
)
{
if
(
err
)
{
forumThreadService
.
getAllThreadByFid
(
conditions
,
pageNo
,
pageSize
,
null
,
function
(
err
,
results
)
{
if
(
err
)
{
console
.
error
(
err
);
res
.
json
(
returnCode
.
BUSY
);
}
else
{
}
else
{
res
.
json
(
_
.
assign
(
results
,
returnCode
.
SUCCESS
));
}
});
}
});
}
else
{
}
else
{
res
.
json
(
returnCode
.
WRONG_PARAM
);
}
});
//获取论坛最新照片墙列表
router
.
get
(
'/thread/:tid/latestPhotos'
,
function
(
req
,
res
,
next
)
{
var
tid
=
req
.
params
.
tid
||
null
;
var
tid
=
req
.
params
.
tid
||
null
;
var
pageNo
=
req
.
query
.
pageNo
||
1
;
var
pageSize
=
req
.
query
.
pageSize
||
10
;
var
conditions
=
{
ent_code
:
req
.
session
.
user
.
ent_code
,
pid
:
tid
,
type
:
3
var
conditions
=
{
ent_code
:
req
.
session
.
user
.
ent_code
,
pid
:
tid
,
type
:
3
};
if
(
tid
)
{
if
(
tid
)
{
async
.
waterfall
([
function
(
callback
)
{
forumUserThreadControlService
.
getUserThreadControlById
(
user
.
getMobileUser
(
req
),
function
(
err
,
doc
)
{
if
(
err
)
{
callback
(
err
,
null
);
}
else
{
if
(
doc
)
{
callback
(
null
,
doc
);
}
else
{
callback
(
null
,
null
);
function
(
callback
)
{
forumUserThreadControlService
.
getUserThreadControlById
(
user
.
getMobileUser
(
req
),
function
(
err
,
doc
)
{
if
(
err
)
{
callback
(
err
,
null
);
}
else
{
if
(
doc
)
{
callback
(
null
,
doc
);
}
else
{
callback
(
null
,
null
);
}
}
});
}
],
function
(
err
,
result
)
{
if
(
err
)
{
],
function
(
err
,
result
)
{
if
(
err
)
{
console
.
error
(
err
);
res
.
json
(
returnCode
.
BUSY
);
}
else
{
if
(
result
){
conditions
.
_id
=
{
$nin
:
result
.
thread
};
}
else
{
if
(
result
)
{
conditions
.
_id
=
{
$nin
:
result
.
thread
};
}
//获取子话题数据
forumThreadService
.
getAllThreadByFid
(
conditions
,
pageNo
,
pageSize
,
'-created'
,
function
(
err
,
results
)
{
if
(
err
)
{
forumThreadService
.
getAllThreadByFid
(
conditions
,
pageNo
,
pageSize
,
'-created'
,
function
(
err
,
results
)
{
if
(
err
)
{
console
.
error
(
err
);
res
.
json
(
returnCode
.
BUSY
);
}
else
{
}
else
{
res
.
json
(
_
.
assign
(
results
,
returnCode
.
SUCCESS
));
}
});
}
});
}
else
{
}
else
{
res
.
json
(
returnCode
.
WRONG_PARAM
);
}
});
//获取论坛最热照片墙列表
router
.
get
(
'/thread/:tid/hotPhotos'
,
function
(
req
,
res
,
next
)
{
var
tid
=
req
.
params
.
tid
||
null
;
var
tid
=
req
.
params
.
tid
||
null
;
var
pageNo
=
req
.
query
.
pageNo
||
1
;
var
pageSize
=
req
.
query
.
pageSize
||
10
;
var
conditions
=
{
ent_code
:
req
.
session
.
user
.
ent_code
,
pid
:
tid
,
type
:
3
var
conditions
=
{
ent_code
:
req
.
session
.
user
.
ent_code
,
pid
:
tid
,
type
:
3
};
if
(
tid
)
{
if
(
tid
)
{
async
.
waterfall
([
function
(
callback
)
{
forumUserThreadControlService
.
getUserThreadControlById
(
user
.
getMobileUser
(
req
),
function
(
err
,
doc
)
{
if
(
err
)
{
callback
(
err
,
null
);
}
else
{
if
(
doc
)
{
callback
(
null
,
doc
);
}
else
{
callback
(
null
,
null
);
function
(
callback
)
{
forumUserThreadControlService
.
getUserThreadControlById
(
user
.
getMobileUser
(
req
),
function
(
err
,
doc
)
{
if
(
err
)
{
callback
(
err
,
null
);
}
else
{
if
(
doc
)
{
callback
(
null
,
doc
);
}
else
{
callback
(
null
,
null
);
}
}
});
}
],
function
(
err
,
result
)
{
if
(
err
)
{
],
function
(
err
,
result
)
{
if
(
err
)
{
console
.
error
(
err
);
res
.
json
(
returnCode
.
BUSY
);
}
else
{
if
(
result
){
conditions
.
_id
=
{
$nin
:
result
.
thread
};
}
else
{
if
(
result
)
{
conditions
.
_id
=
{
$nin
:
result
.
thread
};
}
//获取子话题数据
forumThreadService
.
getAllThreadByFid
(
conditions
,
pageNo
,
pageSize
,
'-praise_count'
,
function
(
err
,
results
)
{
if
(
err
)
{
forumThreadService
.
getAllThreadByFid
(
conditions
,
pageNo
,
pageSize
,
'-praise_count'
,
function
(
err
,
results
)
{
if
(
err
)
{
console
.
error
(
err
);
res
.
json
(
returnCode
.
BUSY
);
}
else
{
}
else
{
res
.
json
(
_
.
assign
(
results
,
returnCode
.
SUCCESS
));
}
});
}
});
}
else
{
}
else
{
res
.
json
(
returnCode
.
WRONG_PARAM
);
}
});
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