0], ['user_id', 'required'], ['user_id', 'exist', 'targetClass' => '\common\models\User', 'targetAttribute' => 'id'], ['config_id', 'default', 'value' => ''], ['name', 'default', 'value' => ''], ['type', 'default', 'value' => DailyTaskUtil::TYPE_SIGN], ['type', 'in', 'range' => DailyTaskUtil::TYPE_LIST], ['item_id', 'default', 'value' => ''], ['item_num', 'default', 'value' => 0], ['item_num', 'number', 'max' => $this->max_item_num], ['max_item_num', 'default', 'value' => 0], ['expire_time', 'default', 'value' => 0], ['is_get_gift', 'default', 'value' => DailyTaskUtil::GIFT_NOT_GET], ['is_get_gift', 'in', 'range' => DailyTaskUtil::GIFT_GET_LIST], ['created_at', 'default', 'value' => 0], ['updated_at', 'default', 'value' => 0], ]; } /** * @param $userID * @param $type * @param $itemID * @return static[] */ public static function findAllByUserIDAndParam($userID, $type, $itemID) { $where['user_id'] = $userID; $where['type'] = $type; if (!empty($itemID)) $where['item_id'] = $itemID; return self::findAll($where); } /** * @param $userID * @return static[] */ public static function findAllByUserID($userID) { return self::findAll(['user_id' => $userID]); } /** * 清理过期任务 * @param $userID */ public static function cleanExpireByUserID($userID, $time) { self::deleteAll('user_id=:user_id and expire_time<=:expire_time', [':user_id' => $userID, ':expire_time' => $time]); } /** * 重置任务 * @param $userID */ public static function resetByUserID($userID) { self::updateAll(['item_num' => 0], ['user_id' => $userID]); } public static function findByID($id) { return self::findOne(['id' => $id]); } }