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
d627ece7
Commit
d627ece7
authored
Jul 23, 2015
by
陈家荣
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
1
parent
2a10da11
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
135 additions
and
46 deletions
+135
-46
forumLimitActionRefService.js
app/service/forumLimitActionRefService.js
+135
-46
No files found.
app/service/forumLimitActionRefService.js
View file @
d627ece7
...
@@ -4,6 +4,50 @@ var ForumLimitActionRef = mongoose.model('ForumLimitActionRef');
...
@@ -4,6 +4,50 @@ var ForumLimitActionRef = mongoose.model('ForumLimitActionRef');
var
async
=
require
(
'async'
);
var
async
=
require
(
'async'
);
var
then
=
require
(
'thenjs'
);
var
then
=
require
(
'thenjs'
);
var
moment
=
require
(
'moment'
);
//格式化日期 (格式:年-月-日)
function
date_format
(
date
)
{
return
moment
(
date
).
format
(
'YYYY-MM-DD'
);
}
//判断时间是否在指定范围
function
compareTime
(
now
,
begin_time
,
end_time
)
{
// 禁言中 true
now
=
date_format
(
now
);
begin_time
=
date_format
(
begin_time
);
end_time
=
date_format
(
end_time
);
if
(
moment
(
now
).
isSame
(
begin_time
)
||
moment
(
now
).
isSame
(
end_time
))
{
//如果等于开始时间或者结束时间
return
true
;
}
else
{
return
moment
(
now
).
isBetween
(
begin_time
,
end_time
);
}
}
//获取数量
function
countAll
(
conditions
,
callback
)
{
ForumLimitActionRef
.
count
(
conditions
,
function
(
err
,
count
)
{
if
(
err
){
console
.
error
(
err
);
callback
(
err
,
null
);
}
else
{
callback
(
null
,
count
);
}
});
}
//获取单个行为限制
function
getLimitActionRef
(
mid
,
callback
){
ForumLimitActionRef
.
findOne
({
mid
:
mid
},
function
(
err
,
role
)
{
if
(
err
)
{
console
.
error
(
err
);
callback
(
err
,
null
);
}
else
{
callback
(
null
,
role
);
}
});
}
//创建或更新论坛行为限制
//创建或更新论坛行为限制
exports
.
createOrUpdateLimitActionRef
=
function
(
conditions
,
entity
,
callback
){
exports
.
createOrUpdateLimitActionRef
=
function
(
conditions
,
entity
,
callback
){
...
@@ -44,7 +88,8 @@ exports.createLimitActionRef=function(entity,callback){
...
@@ -44,7 +88,8 @@ exports.createLimitActionRef=function(entity,callback){
}
}
});
});
};
};
//根据MID获取论坛角色
//根据MID和EntCode获取
exports
.
getLimitActionRefByMIdAndEntCode
=
function
(
mid
,
ent_code
,
callback
){
exports
.
getLimitActionRefByMIdAndEntCode
=
function
(
mid
,
ent_code
,
callback
){
ForumLimitActionRef
.
findOne
({
mid
:
mid
,
ent_code
:
ent_code
},
function
(
err
,
role
)
{
ForumLimitActionRef
.
findOne
({
mid
:
mid
,
ent_code
:
ent_code
},
function
(
err
,
role
)
{
if
(
err
)
{
if
(
err
)
{
...
@@ -56,8 +101,9 @@ exports.getLimitActionRefByMIdAndEntCode=function(mid,ent_code,callback){
...
@@ -56,8 +101,9 @@ exports.getLimitActionRefByMIdAndEntCode=function(mid,ent_code,callback){
});
});
};
};
//根据MID获取
exports
.
getLimitActionRefByMid
=
function
(
mid
,
callback
){
exports
.
getLimitActionRefByMid
=
function
(
mid
,
callback
){
ForumLimitActionRef
.
findOne
({
mid
:
mid
}
,
function
(
err
,
role
)
{
getLimitActionRef
(
mid
,
function
(
err
,
role
)
{
if
(
err
)
{
if
(
err
)
{
console
.
error
(
err
);
console
.
error
(
err
);
callback
(
err
,
null
);
callback
(
err
,
null
);
...
@@ -67,71 +113,114 @@ exports.getLimitActionRefByMid=function(mid,callback){
...
@@ -67,71 +113,114 @@ exports.getLimitActionRefByMid=function(mid,callback){
});
});
};
};
//根据ID获取论坛角色
//根据ID获取
exports
.
getLimitActionRefById
=
function
(
rid
,
callback
){
// exports.getLimitActionRefById=function(rid,callback){
ForumLimitActionRef
.
findById
(
rid
,
function
(
err
,
role
)
{
// ForumLimitActionRef.findById(rid, function(err, role) {
if
(
err
)
{
// if (err) {
// console.error(err);
// callback(err,null);
// } else {
// callback(null,role);
// }
// });
// };
//根据ID删除
// exports.deleteLimitActionRefById=function(rid,callback){
// ForumLimitActionRef.remove({ _id: rid},function(err,result){
// if (err) {
// console.error(err);
// callback(err,null);
// } else {
// callback(null,null);
// }
// });
// };
//获取全部列表数据
exports
.
getAllLimitActionRef
=
function
(
conditions
,
callback
)
{
countAll
(
conditions
,
function
(
err
,
count
){
if
(
err
){
console
.
error
(
err
);
console
.
error
(
err
);
callback
(
err
,
null
);
callback
(
err
,
null
);
}
else
{
}
else
{
callback
(
null
,
role
);
ForumLimitActionRef
.
find
(
conditions
).
exec
(
function
(
err
,
docs
)
{
}
});
};
//根据ID更新论坛角色
exports
.
updateLimitActionRefById
=
function
(
rid
,
entity
,
callback
){
ForumLimitActionRef
.
update
({
_id
:
rid
},
entity
,
null
,
function
(
err
,
result
){
if
(
err
)
{
if
(
err
)
{
console
.
error
(
err
);
console
.
error
(
err
);
callback
(
err
,
null
);
callback
(
err
,
null
);
}
else
{
}
else
{
callback
(
null
,
null
);
var
obj
=
{};
obj
.
items
=
docs
;
callback
(
null
,
obj
);
}
});
}
}
});
});
};
};
//根据ID更新论坛角色
exports
.
deleteLimitActionRefById
=
function
(
rid
,
callback
){
ForumLimitActionRef
.
remove
({
_id
:
rid
},
function
(
err
,
result
){
//检查用户是否被禁言
exports
.
checkLimitActionProhibitionOfSpeech
=
function
(
mid
,
callback
)
{
if
(
mid
){
var
isProhibition
=
false
;
getLimitActionRef
(
mid
,
function
(
err
,
forumLimitActionRef
){
if
(
err
)
{
if
(
err
)
{
console
.
error
(
err
);
console
.
error
(
err
);
callback
(
err
,
null
);
callback
(
err
,
null
);
}
else
{
}
else
{
callback
(
null
,
null
);
// 获取到用户行为限制记录
if
(
forumLimitActionRef
){
var
limit_actions
=
forumLimitActionRef
.
limit_actions
;
for
(
var
i
=
0
;
i
<
limit_actions
.
length
;
i
+=
1
)
{
var
limit_action
=
limit_actions
[
i
];
if
(
limit_action
.
limit_action_type
==
'forum_prohibition_of_speech'
){
isProhibition
=
compareTime
(
new
Date
(),
limit_action
.
begin_time
,
limit_action
.
end_time
);
break
;
}
}
});
}
};
callback
(
null
,
isProhibition
);
//获取数量
function
countAll
(
conditions
,
callback
)
{
ForumLimitActionRef
.
count
(
conditions
,
function
(
err
,
count
)
{
if
(
err
){
console
.
error
(
err
);
callback
(
err
,
null
);
}
else
{
}
else
{
callback
(
null
,
count
);
callback
(
null
,
isProhibition
);
}
}
}
});
});
}
//获取全部列表数据
exports
.
getAllLimitActionRef
=
function
(
conditions
,
callback
)
{
countAll
(
conditions
,
function
(
err
,
count
){
if
(
err
){
console
.
error
(
err
);
callback
(
err
,
null
);
}
else
{
}
else
{
ForumLimitActionRef
.
find
(
conditions
).
exec
(
function
(
err
,
docs
)
{
callback
(
null
,
isProhibition
);
}
};
//检查用户是否被禁加积分
exports
.
checkLimitActionProhibitionAddIntegral
=
function
(
mid
,
callback
)
{
if
(
mid
){
var
isProhibition
=
false
;
getLimitActionRef
(
mid
,
function
(
err
,
forumLimitActionRef
){
if
(
err
)
{
if
(
err
)
{
console
.
error
(
err
);
console
.
error
(
err
);
callback
(
err
,
null
);
callback
(
err
,
null
);
}
else
{
}
else
{
var
obj
=
{};
// 获取到用户行为限制记录
obj
.
items
=
docs
;
if
(
forumLimitActionRef
){
callback
(
null
,
obj
);
var
limit_actions
=
forumLimitActionRef
.
limit_actions
;
for
(
var
i
=
0
;
i
<
limit_actions
.
length
;
i
+=
1
)
{
var
limit_action
=
limit_actions
[
i
];
if
(
limit_action
.
limit_action_type
==
'forum_not_add_integral'
){
isProhibition
=
compareTime
(
new
Date
(),
limit_action
.
begin_time
,
limit_action
.
end_time
);
break
;
}
}
callback
(
null
,
isProhibition
);
}
else
{
callback
(
null
,
isProhibition
);
}
}
});
}
}
});
});
}
else
{
callback
(
null
,
isProhibition
);
}
};
};
\ 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