UserTaskModel.class.php 1.16 KB
<?php
/**
 * Created by PhpStorm.
 * User: zhonglei
 * Date: 17/7/26
 * Time: 16:17
 */
namespace Common\Model;

class UserTaskModel extends AbstractModel
{
    /**
     * 完成状态(2=执行中;3=已完成)
     */
    const COMPLETE_STATUS_ING = 2;
    const COMPLETE_STATUS_OVER = 3;

    // 构造方法
    public function __construct()
    {
        parent::__construct();
    }

    /**
     * 获取我的日常任务完成排名(不适用:未参与任务的人员)
     * @param Int $customtask_id 日常任务ID
     * @param Int $progress 我的完成度
     * @param Int $complete_time 我的完成时间
     * @return mixed
     */
    public function getMyRank($customtask_id, $progress, $complete_time)
    {
        $sql = "SELECT count(*) as `total` FROM __TABLE__ WHERE `domain` = ? AND `status` < ?  
                AND `customtask_id` = ? AND (`progress` > ? OR (`progress` = ? AND `complete_time` < ?))";

        $param = [
            QY_DOMAIN,
            self::ST_DELETE,
            $customtask_id,
            $progress,
            $progress,
            $complete_time,
        ];

        return $this->_m->result($sql, $param);
    }
}