package com.ifish.service;

import com.ifish.dto.JsonResult;
import com.ifish.dto.PageingDto;
import com.ifish.dto.UserAssetDto;
import com.ifish.entity.GradeTask;
import com.ifish.entity.UserAsset;
import com.ifish.validator.AddValueParam;
import com.ifish.validator.PageParam;


/**
 * 等级
 * @author Administrator
 *
 */
public interface GradeService {

	/**
	 * 是否加过经验
	 * @param userAsset
	 * @param gradeRule
	 * @return
	 */
	public UserAssetDto getGradeControl(UserAsset userAsset, GradeTask gradeRule, boolean isLogin);
	/**
	 * 增加经验值
	 * @param addValueParam
	 * @return
	 */
	public JsonResult<?> addGradeValue(AddValueParam addValueParam);
	
	/**
	 * @param userId
	 * @return
	 */
	public JsonResult<?> getGradeRuleInfo(Integer userId);
	
	/**
	 * 获取经验记录
	 * @param pageParam
	 * @return
	 */
	public PageingDto<?> getGradeRecordByPage(PageParam pageParam);

}
