package cc.mrbird.febs.mall.mapper; import cc.mrbird.febs.mall.dto.MoneyChargeListDto; import cc.mrbird.febs.mall.dto.MoneyFlowDto; import cc.mrbird.febs.mall.dto.MoneyFlowListDto; import cc.mrbird.febs.mall.entity.MallMember; import cc.mrbird.febs.mall.entity.MallMoneyFlow; import cc.mrbird.febs.mall.entity.MallOrderInfo; import cc.mrbird.febs.mall.vo.*; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.apache.ibatis.annotations.Param; import java.math.BigDecimal; import java.util.Date; import java.util.List; public interface MallMoneyFlowMapper extends BaseMapper { IPage selectMoneyFlowInPage(Page page, @Param("record")MallMember mallMember); IPage selectApiMoneyFlowInPage(IPage page, @Param("record") MoneyFlowDto moneyFlowDto); IPage selectApiFcmMoneyFlowInPage(IPage page, @Param("record") MoneyFlowDto moneyFlowDto); IPage getMoneyFlowListInPage(Page page, @Param("record")MoneyFlowListDto moneyFlowListDto); IPage getMoneyChargeListInPage(Page page, @Param("record")MoneyChargeListDto moneyChargeListDto); List selectMoneyFlowProfitByDate(@Param("date") Date date); int updateIsReturnByMemberId(@Param("isReturn") Integer isReturn, @Param("memberId") Long memberId); BigDecimal selectProfitByDateAndMemberId(Long memberId); BigDecimal selectCommissionIncome(@Param("type") Integer type, @Param("date") Date date, @Param("memberId") Long memebrid); BigDecimal selectThankfulCommission(@Param("date") Date date, @Param("memberId") Long memberId); void insertMoneyFlow(MallMoneyFlow mallMoneyFlow); List selectTeamEqualsMemberByDate(@Param("date") Date date); IPage selectOrderMoneyFlowInPage(Page page, @Param("record")MallOrderInfo mallOrderInfo); List selectMoneyFlowByMemberIdAndIsRetrun(@Param("memberId") Long memberId, @Param("isReturn") int isReturn); void updateRemarkById(@Param("remark")String remarkNum, @Param("id")Long id); void updateRemarkAndIsReturnById(@Param("remark")String remarkNum, @Param("id")Long id); MallMoneyFlow selectByOrderNoAndMemberId(@Param("orderNo")String orderNo, @Param("memberId")Long memberId, @Param("isReturn")int isReturn); MallMoneyFlow selectByOrderAndType(@Param("orderNo")String orderNo, @Param("type")int type, @Param("flowType")int flowType, @Param("memberId")Long memberId); IPage selectApiFcmMoneyFlowInsideInPage(IPage page, @Param("record") MoneyFlowDto moneyFlowDto); }