yujian
2019-12-12 8c04d27e5cebb7e654c208533e9567c4df2c8acc
fanli/src/main/java/com/yeshi/fanli/service/inter/order/CommonOrderCountService.java
@@ -1,28 +1,34 @@
package com.yeshi.fanli.service.inter.order;
import java.math.BigDecimal;
import java.util.List;
import java.util.Map;
import com.yeshi.fanli.dto.ChartTDO;
public interface CommonOrderCountService {
   /**
    * 当前各个状态订单数
    * @param state 状态
    *
    * @param state
    *            状态
    * @return
    */
   public Long countByState(Integer state);
   /**
    *  统计所有订单
    * 统计所有订单
    *
    * @param channel
    * @return
    */
   public List<Map<String, Object>> getTrackAccuracyRate(Integer dateType, String year, String startTime,
         String endTime) throws Exception;
   public List<ChartTDO> getTrackAccuracyRate(Integer dateType, String year, String startTime, String endTime,
         int sourceType) throws Exception;
   /**
    * 统计总金额
    *
    * @param dateType
    * @param year
    * @param startTime
@@ -30,11 +36,12 @@
    * @return
    * @throws Exception
    */
   public List<Map<String, Object>> countWeiQaunOrderMoney(Integer dateType, String year, String startTime,
         String endTime)   throws Exception;
   public List<ChartTDO> countWeiQaunOrderMoney(Integer dateType, String year, String startTime, String endTime)
         throws Exception;
   /**
    * 统计总个数
    *
    * @param dateType
    * @param year
    * @param startTime
@@ -42,11 +49,12 @@
    * @return
    * @throws Exception
    */
   public List<Map<String, Object>> countWeiQaunOrderNumber(Integer dateType, String year, String startTime, String endTime)
   public List<ChartTDO> countWeiQaunOrderNumber(Integer dateType, String year, String startTime, String endTime)
         throws Exception;
   /**
    * 根据结算时间统计
    *
    * @param uid
    * @param state
    * @param day
@@ -57,17 +65,74 @@
   /**
    * 根据结算时间筛选 上个月已结算的订订单数量
    *
    * @param uid
    * @return
    */
   public Map<String, Object> lastMonthSettleOrderNumber(Long uid);
   /**
    *   是否产生订单:自购、分享有效订单数量
    * @param uid
    * 根据订单号 统计奖励券加成金额
    *
    * @param orderNo
    * @return
    */
   public boolean hasRebateAndShareOrder(Long uid);
   BigDecimal getMoneyByOrderNo(String orderNo);
   /**
    * 统计已到账返利订单
    *
    * @param uid
    * @param dateTime
    * @return
    */
   public long countValidOrderByDate(Long uid, String dateTime);
   /**
    * 查询用户在同一店铺购买超过一定数量商品的店铺数量
    *
    * @param typeList
    *            -红包类型
    * @param uid
    *            -用户ID
    * @param minSameShopGoodsCount
    *            -同一店铺买的最小订单数
    * @return
    */
   long countSameShopOrderByUidAndHongBaoType(List<Integer> typeList, Long uid, int minSameShopGoodsCount);
   /**
    * 查询用户购买相同商品超过一定的订单数量的商品数量
    *
    * @param typeList
    * @param uid
    * @param minSameGoodsOrderCount
    * @return
    */
   long countSameGoodsOrderByUidAndHongBaoType(List<Integer> typeList, Long uid, int minSameGoodsOrderCount);
   /**
    * 查询用户在同一店铺购买超过一定数量商品的店铺id
    *
    * @param typeList
    *            -红包类型
    * @param uid
    *            -用户ID
    * @param minSameShopGoodsCount
    *            -同一店铺买的最小订单数
    * @return
    */
   List<Long> getSameShopOrderByUidAndHongBaoType(List<Integer> typeList, Long uid, int minSameShopGoodsCount);
   /**
    * 查询用户购买相同商品超过一定的订单数量的商品id
    *
    * @param typeList
    * @param uid
    * @param minSameGoodsOrderCount
    * @return
    */
   List<Long> getSameGoodsOrderByUidAndHongBaoType(List<Integer> typeList, Long uid, int minSameGoodsOrderCount);
}