|  |  |  | 
|---|
|  |  |  | 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; | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | @Repository | 
|---|
|  |  |  | public interface MemberGrowthRecordMapper extends BaseMapper<MemberGrowthRecord> { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Select("SELECT CASE WHEN SUM(growth) < 0 THEN 0 ELSE SUM(growth) END as total_growth from t_member_growth_record WHERE user_id  = #{userId} and deleted = '0'") | 
|---|
|  |  |  | @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); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|