package com.yeshi.fanli.dao.mybatis.redpack;
|
|
import java.math.BigDecimal;
|
import java.util.Date;
|
import java.util.List;
|
|
import org.apache.ibatis.annotations.Param;
|
|
import com.yeshi.fanli.dao.BaseMapper;
|
import com.yeshi.fanli.entity.redpack.RedPackDetail;
|
import com.yeshi.fanli.vo.redpack.RedPackMonthVO;
|
|
public interface RedPackDetailMapper extends BaseMapper<RedPackDetail> {
|
|
|
/**
|
* 查询明细
|
* @param identifyCode
|
* @return
|
*/
|
RedPackDetail getByIdentifyCode(@Param("identifyCode")String identifyCode);
|
|
|
/**
|
* 根据日期类型统计获得金额
|
* @param uid
|
* @param dateType 1今日 、2昨日、3本月、4上月
|
* @return
|
*/
|
BigDecimal countAddMoneyByDate(@Param("uid")long uid, @Param("dateType")int dateType);
|
|
/**
|
* 根据日期类型统计消耗金额
|
* @param uid
|
* @param dateType 1今日 、2昨日、3本月、4上月
|
* @return
|
*/
|
BigDecimal countUseMoneyByDate(@Param("uid")long uid, @Param("dateType")int dateType);
|
|
/**
|
* 按最大的创建时间和用户ID检索列表
|
*
|
* @param uid
|
* @param date
|
* @return
|
*/
|
List<RedPackDetail> selectByMaxCreateTime(@Param("uid") Long uid, @Param("date") Date date, @Param("count") int count);
|
|
|
/**
|
* 通过用户ID和返回的最大时间的详情ID来获取下一页的数据
|
*
|
* @param uid
|
* @param id
|
* @param count
|
* @return
|
*/
|
List<RedPackDetail> selectByUidWithIndexId(@Param("uid") Long uid, @Param("id") Long id, @Param("count") int count);
|
|
|
/**
|
* 统计某个月份的收入与支出
|
*
|
* @param uid
|
* @param dateFormat
|
* @return
|
*/
|
List<RedPackMonthVO> selectMonthMoneyByUid(@Param("uid") Long uid, @Param("dateFormat") List<String> dateFormat);
|
|
|
/**
|
* 获取用户总共有多少记录数据
|
*
|
* @param uid
|
* @return
|
*/
|
Long selectCountByUid(@Param("uid") Long uid);
|
|
/**
|
* 按用户ID和最大时间检索月份的数量
|
*
|
* @param uid
|
* @param maxDate
|
* @return
|
*/
|
int selectMonthCountByUid(@Param("uid") Long uid, @Param("date") Date maxDate);
|
|
|
/**
|
* 按最大的创建时间和用户ID检索数量
|
*
|
* @param uid
|
* @param date
|
* @return
|
*/
|
Long selectCountByUidAndMaxCreateTime(@Param("uid") Long uid, @Param("date") Date date);
|
|
|
|
/**
|
* 根据日期类型统计获得金额
|
* @param uid
|
* @param dateType 1今日 、2昨日、3本月、4上月
|
* @return
|
*/
|
BigDecimal countWinMoneyByDate(@Param("uid")long uid, @Param("dateType")int dateType);
|
|
/**
|
* 根据日期类型统计消耗金额
|
* @param uid
|
* @param dateType 1今日 、2昨日、3本月、4上月
|
* @return
|
*/
|
BigDecimal countReduceMoneyByDate(@Param("uid")long uid, @Param("dateType")int dateType);
|
|
|
|
/**
|
* 列表查询
|
*
|
* @param key
|
* @param state
|
* @param start
|
* @param count
|
* @return
|
*/
|
List<RedPackDetail> query(@Param("start") long start,@Param("count") int count,@Param("key") String key, @Param("uid") Long uid,
|
@Param("type") Integer type);
|
|
/**
|
* 计数
|
*
|
* @param key
|
* @param state
|
* @return
|
*/
|
long count(@Param("key") String key, @Param("uid") Long uid, @Param("type") Integer type);
|
|
|
/**
|
* 统计每日新增红包
|
* @param preDay
|
* @return
|
*/
|
Long countNumByDay(@Param("preDay") String preDay);
|
|
/**
|
* 统计每日新增红包
|
* @param preDay
|
* @return
|
*/
|
BigDecimal countMoneyByDay(@Param("preDay") String preDay);
|
|
}
|