package com.mzl.flower.mapper.member;
|
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.mzl.flower.dto.request.menber.MemberRecordQueryDTO;
|
import com.mzl.flower.dto.request.menber.UserMemberRecordQueryDTO;
|
import com.mzl.flower.dto.response.member.MemberGrowthRecordVO;
|
import com.mzl.flower.dto.response.member.UserGrowthRecordVO;
|
import com.mzl.flower.entity.menber.MemberGrowthRecord;
|
import org.apache.ibatis.annotations.Param;
|
import org.apache.ibatis.annotations.Select;
|
import org.springframework.stereotype.Repository;
|
|
import java.time.LocalDate;
|
import java.util.List;
|
|
|
/**
|
* @author fanghaowei
|
* @version version2.0
|
* @className MemberMapper
|
* @date 2024/8/27
|
* @description 会员成记录mapper
|
*/
|
@SuppressWarnings("ALL")
|
@Repository
|
public interface MemberGrowthRecordMapper extends BaseMapper<MemberGrowthRecord> {
|
|
@Select("SELECT COALESCE(CASE WHEN SUM(growth) < 0 THEN 0 ELSE SUM(growth) END, 0) as total_growth from t_member_growth_record WHERE user_id = #{userId} and deleted = '0'")
|
Integer getSumGrowthByUsertId(@Param("userId") String userId);
|
|
List<MemberGrowthRecordVO> queryPage(@Param("dto") MemberRecordQueryDTO dto, Page page);
|
|
List<UserGrowthRecordVO> queryUserPage(@Param("dto") UserMemberRecordQueryDTO dto, Page page);
|
|
@Select("SELECT * from t_member_growth_record WHERE user_id = #{userId} and deleted = '0' and record_date = #{localDate} and type= 'reduce' and source = 'downgrading'")
|
List<MemberGrowthRecordVO> selectDowngradingByUserId(@Param("userId") String userId, LocalDate localDate);
|
|
}
|