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
2d647f6d
Commit
2d647f6d
authored
Aug 04, 2015
by
陈家荣
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
更新了查询文章的方法
parent
857b0774
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
112 additions
and
0 deletions
+112
-0
forumThreadService.js
app/service/forumThreadService.js
+112
-0
No files found.
app/service/forumThreadService.js
View file @
2d647f6d
...
@@ -970,3 +970,115 @@ exports.remove = function(array,val) {
...
@@ -970,3 +970,115 @@ exports.remove = function(array,val) {
}
}
return
array
;
return
array
;
};
};
//获取数量
function
countAllByConditionsAndNickName
(
nickName
,
conditions
,
callback
)
{
ForumThread
.
find
(
conditions
).
populate
(
'from'
).
exec
(
function
(
err
,
results
){
if
(
err
)
{
console
.
error
(
err
);
callback
(
err
,
null
);
}
else
{
if
(
results
){
var
count
=
0
;
//匹配 nickName
for
(
var
i
in
results
){
var
flag
=
results
[
i
].
from
.
nickName
.
toString
().
indexOf
(
nickName
);
if
(
flag
>=
0
){
// 如果有
count
+=
1
;
}
}
callback
(
null
,
count
);
}
else
{
callback
(
null
,
0
);
}
}
});
}
function
getAllThreadByFidHelpAndNickName
(
nickName
,
conditions
,
pageNo
,
pageSize
,
sort
,
callback
)
{
countAllByConditionsAndNickName
(
nickName
,
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
=
'-topTime -tag_topTime -created'
;
if
(
sort
)
{
sortBy
=
sort
;
}
ForumThread
.
find
(
conditions
).
populate
(
'from'
).
populate
(
'info'
).
populate
({
path
:
'tag'
}).
populate
({
path
:
'comments'
,
options
:
{
where
:{
status
:
1
},
limit
:
5
,
sort
:
'-created'
},
select
:
'from to created content'
}).
sort
(
sortBy
).
exec
(
function
(
err
,
docs
)
{
if
(
err
)
{
console
.
error
(
err
);
callback
(
err
,
null
);
}
else
{
//匹配 nickName
var
new_threads
=
[];
for
(
var
i
in
docs
){
var
flag
=
docs
[
i
].
from
.
nickName
.
toString
().
indexOf
(
nickName
);
if
(
flag
>=
0
){
// 如果有
new_threads
.
push
(
docs
[
i
]);
}
}
var
return_threads
=
new_threads
.
slice
(
skip
,
skip
+
limit
);
var
obj
=
{};
obj
.
total
=
count
;
obj
.
pageNo
=
pageNo
;
obj
.
pageSize
=
pageSize
;
obj
.
items
=
return_threads
;
if
(
return_threads
&&
return_threads
.
length
>
0
)
{
var
asyncTasks
=
[];
return_threads
.
forEach
(
function
(
doc
)
{
// console.log(doc);
if
(
doc
.
type
===
1
||
doc
.
level
!==
1
)
{
//非照片墙或文章时获取评论
asyncTasks
.
push
(
function
(
callback
)
{
populateComment
(
doc
,
callback
);
});
}
else
{
asyncTasks
.
push
(
function
(
callback
)
{
getSubThreads
(
doc
,
null
,
callback
);
});
}
});
async
.
parallel
(
asyncTasks
,
function
(
err
,
results
)
{
if
(
err
)
{
console
.
error
(
err
);
callback
(
null
,
null
);
}
else
{
obj
.
items
=
results
;
callback
(
null
,
obj
);
}
});
}
else
{
callback
(
null
,
obj
);
}
}
});
}
});
}
//获取全部列表数据
exports
.
getAllThreadByFidAndNickName
=
function
(
nickName
,
conditions
,
pageNo
,
pageSize
,
sort
,
callback
)
{
getAllThreadByFidHelpAndNickName
(
nickName
,
conditions
,
pageNo
,
pageSize
,
sort
,
callback
);
};
\ No newline at end of file
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