UserTaskService.class.php
1.16 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
<?php
/**
* Created by PhpStorm.
* User: zhonglei
* Date: 17/7/26
* Time: 16:36
*/
namespace Common\Service;
use Common\Model\UserTaskModel;
class UserTaskService extends AbstractService
{
// 构造方法
public function __construct()
{
parent::__construct();
$this->_d = new UserTaskModel();
}
/**
* 获取我的常规任务排名
* @author liyifei
* @param String $uid 人员UID
* @param Int $customtask_id 常规任务ID
* @return Int
*/
public function getMyRank($uid, $customtask_id)
{
$userTask = $this->get_by_conds([
'uid' => $uid,
'progress > ?' => 0,
'customtask_id' => $customtask_id,
]);
// 未参与任务或任务完成度为0时,不显示排名
$myRank = 0;
if (!empty($userTask)) {
// 我已参与任务,排名=完成度大于我的人数+完成度等于我且完成时间小于我的人数+1
$userTotal = $this->_d->getMyRank($customtask_id, $userTask['progress'], $userTask['complete_time']);
$myRank = (int)$userTotal + 1;
}
return $myRank;
}
}