package com.doumee.service.business; import com.baomidou.mybatisplus.core.metadata.IPage; import com.doumee.core.model.PageData; import com.doumee.core.model.PageWrap; import com.doumee.dao.business.model.MemberCoupon; import com.doumee.dao.web.dto.CouponDTO; import com.doumee.dao.web.dto.MemberCouponDTO; import com.doumee.dao.web.request.PayDetailRequest; import java.math.BigDecimal; import java.util.List; /** * 用户优惠券关联表Service定义 * @author 江蹄蹄 * @date 2023/03/21 15:48 */ public interface MemberCouponService { /** * 创建 * * @param memberCoupon 实体对象 * @return Integer */ Integer create(MemberCoupon memberCoupon); /** * 主键删除 * * @param id 主键 */ void deleteById(Integer id); /** * 删除 * * @param memberCoupon 实体对象 */ void delete(MemberCoupon memberCoupon); /** * 批量主键删除 * * @param ids 主键集 */ void deleteByIdInBatch(List ids); /** * 主键更新 * * @param memberCoupon 实体对象 */ void updateById(MemberCoupon memberCoupon); /** * 批量主键更新 * * @param memberCoupons 实体集 */ void updateByIdInBatch(List memberCoupons); /** * 主键查询 * * @param id 主键 * @return MemberCoupon */ MemberCoupon findById(Integer id); /** * 条件查询单条记录 * * @param memberCoupon 实体对象 * @return MemberCoupon */ MemberCoupon findOne(MemberCoupon memberCoupon); /** * 条件查询 * * @param memberCoupon 实体对象 * @return List */ List findList(MemberCoupon memberCoupon); /** * 分页查询 * * @param pageWrap 分页对象 * @return PageData */ PageData findPage(PageWrap pageWrap); /** * 条件统计 * * @param memberCoupon 实体对象 * @return long */ long count(MemberCoupon memberCoupon); /****************************************移动端接口开始********************************************************************/ /** * 会员优惠券 * @param pages * @param price * @param memberId * @param couponType * @return */ IPage memberCouponPage(IPage pages, BigDecimal price, Integer memberId, Integer couponType); /** * 可用优惠券数量 * @param price * @param memberId * @param couponType * @return */ long memberCouponNum(BigDecimal price, Integer memberId, Integer couponType); /** * * 商家查询优惠券使用 * @param pageWrap * @return */ PageData findMemberCouponDTO(PageWrap pageWrap); /** * 根据商品选择信息 查询对应可使用的优惠券 * @param requestList * @param memberId * @return */ List getApplyCoupon(List requestList, Integer memberId); }