package com.hongqiang.shop.modules.shipping.dao; import java.math.BigDecimal; import java.util.Date; import java.util.List; import org.springframework.data.repository.CrudRepository; import com.hongqiang.shop.common.base.persistence.BaseDao; import com.hongqiang.shop.common.base.persistence.Page; import com.hongqiang.shop.common.utils.Filter; import com.hongqiang.shop.common.utils.Order; import com.hongqiang.shop.common.utils.Pageable; import com.hongqiang.shop.modules.entity.Member; public interface OrderDao extends OrderDaoCustom, CrudRepository<com.hongqiang.shop.modules.entity.Order, Long> { } /** * DAO自定义接口 * * @author Jack * */ interface OrderDaoCustom extends BaseDao<com.hongqiang.shop.modules.entity.Order,Long> { public com.hongqiang.shop.modules.entity.Order findBySn(String sn); public List<com.hongqiang.shop.modules.entity.Order> findList(Member member, Integer count, List<Filter> filters,List<Order> orders); public Page<com.hongqiang.shop.modules.entity.Order> findPage(Member member, Pageable pageable); public Page<com.hongqiang.shop.modules.entity.Order> findPage( com.hongqiang.shop.modules.entity.Order.OrderStatus orderStatus, com.hongqiang.shop.modules.entity.Order.PaymentStatus paymentStatus, com.hongqiang.shop.modules.entity.Order.ShippingStatus shippingStatus, Boolean hasExpired, Pageable pageable); public Long count(com.hongqiang.shop.modules.entity.Order.OrderStatus orderStatus, com.hongqiang.shop.modules.entity.Order.PaymentStatus paymentStatus, com.hongqiang.shop.modules.entity.Order.ShippingStatus shippingStatus, Boolean hasExpired); public Long waitingPaymentCount(Member member); public Long waitingShippingCount(Member member); public BigDecimal getSalesAmount(Date beginDate, Date endDate); public Integer getSalesVolume(Date beginDate, Date endDate); public void releaseStock(); }