admin
2019-12-06 cd637932a970e7935b17d41568fe89c92775bccc
fanli/src/main/java/com/yeshi/fanli/service/inter/order/CommonOrderService.java
@@ -5,10 +5,15 @@
import java.util.List;
import java.util.Map;
import com.yeshi.fanli.dto.order.CommonOrderAddResultDTO;
import com.yeshi.fanli.entity.accept.AcceptData;
import com.yeshi.fanli.entity.jd.JDOrder;
import com.yeshi.fanli.entity.order.CommonOrder;
import com.yeshi.fanli.entity.pdd.PDDOrder;
import com.yeshi.fanli.entity.taobao.TaoBaoOrder;
import com.yeshi.fanli.exception.order.CommonOrderException;
import com.yeshi.fanli.vo.order.CommonOrderVO;
import com.yeshi.fanli.vo.order.OrderCountVO;
import net.sf.json.JSONObject;
@@ -44,7 +49,7 @@
    * @throws CommonOrderException
    */
   public List<CommonOrderVO> listGroupOrderNoByUid(long start, int count, Long uid, Integer state, Integer type,
         Integer orderState, String orderNo, String startTime, String endTime, Integer dateType)
         Integer orderState, String orderNo, String startTime, String endTime, Integer dateType, Integer source)
         throws CommonOrderException;
   /**
@@ -60,7 +65,7 @@
    * @throws CommonOrderException
    */
   long countGroupOrderNoByUid(Long uid, Integer state, Integer type, Integer orderState, String orderNo,
         String startTime, String endTime, Integer dateType) throws CommonOrderException;
         String startTime, String endTime, Integer dateType, Integer source) throws CommonOrderException;
   /**
    * 移动段订单列表
@@ -73,8 +78,9 @@
    *            到账状态
    * @return
    */
   public List<CommonOrderVO> getOrderByUid(Integer page, Long uid, Integer state, Integer type, Integer orderState,
         String orderNo, String startTime, String endTime, Integer dateType) throws CommonOrderException;
   public List<CommonOrderVO> getOrderByUid(AcceptData acceptData, Integer page, Long uid, Integer state, Integer type,
         Integer orderState, String orderNo, String startTime, String endTime, Integer dateType, Integer source)
         throws CommonOrderException,Exception;
   /**
    * 统计订单-根据红包类型 自购 邀请 分享
@@ -82,7 +88,7 @@
    * @param uid
    * @return
    */
   public Map<String, BigDecimal> countHistoryOrder(Long uid, Integer day);
   public Map<String, BigDecimal> countHistoryOrder(Long uid, Integer day, Integer source);
   /**
    * 统计订单
@@ -90,7 +96,8 @@
    * @param uid
    * @return
    */
   public long countBonusOrderNumber(Long uid, Integer type, Integer isToday, String startTime, String endTime);
   public long countBonusOrderNumber(Long uid, Integer type, Integer isToday, String startTime, String endTime,
         Integer source);
   /**
    * 统计订单
@@ -98,10 +105,12 @@
    * @param uid
    * @return
    */
   public BigDecimal countBonusOrderMoney(Long uid, Integer type, Integer isToday, String startTime, String endTime);
   public BigDecimal countBonusOrderMoney(Long uid, Integer type, Integer isToday, String startTime, String endTime,
         Integer source);
   /**
    * 统计奖金订单数量、金额
    *
    * @param uid
    * @param type
    * @param day
@@ -110,9 +119,8 @@
    * @return
    */
   public Map<String, Object> countBonusOrderMoneyAndNumber(Long uid, Integer type, Integer day, String startTime,
         String endTime);
         String endTime, Integer source);
   /**
    * 根据条件统计
    * 
@@ -122,8 +130,8 @@
    * @param endTime
    * @return
    */
   public Map<String, BigDecimal> countByUidAndOrderState(Long uid, Integer type, String startTime, String endTime,
         Integer day);
   public Long countUserOrderToApp(Long uid, Integer type, String startTime, String endTime,
         Integer day, Integer source, Integer state, Integer stateOrder);
   /**
    * 根据订单号与订单类型查询订单
@@ -135,17 +143,38 @@
   public List<CommonOrder> listBySourceTypeAndOrderId(int sourceType, String orderId);
   /**
    * 缓存普通订单
    * 缓存淘宝类普通订单
    * 
    * @param taoBaoOrder
    * @param uid
    * @return
    * @throws CommonOrderException
    */
   public List<CommonOrder> addTaoBaoOrder(List<TaoBaoOrder> taoBaoOrder, Long uid) throws CommonOrderException;
   public List<CommonOrderAddResultDTO> addTaoBaoOrder(List<TaoBaoOrder> taoBaoOrder, Long uid) throws CommonOrderException;
   /**
    * 缓存拼多多类普通订单
    *
    * @param pddOrderList
    * @param uid
    * @return
    * @throws CommonOrderException
    */
   public List<CommonOrderAddResultDTO> addPDDOrder(List<PDDOrder> pddOrderList, Long uid) throws CommonOrderException;
   /**
    * 缓存京东普通订单
    *
    * @param jdOrderList
    * @param uid
    * @return
    * @throws CommonOrderException
    */
   public List<CommonOrderAddResultDTO> addJDOrder(JDOrder jdOrder, Long uid) throws CommonOrderException;
   /**
    * 根据用户ID,订单状态,结算时间统计订单数量
    *
    * @param uid
    * @param state
    * @param minDate
@@ -156,6 +185,7 @@
   /**
    * 后端查询订单列表
    *
    * @param start
    * @param count
    * @param uid
@@ -165,7 +195,8 @@
    * @param orderNo
    * @param startTime
    * @param endTime
    * @param dateType 1昨天  2今天 3本月 4 上月
    * @param dateType
    *            1昨天 2今天 3本月 4 上月
    * @return
    * @throws CommonOrderException
    */
@@ -173,11 +204,12 @@
         Integer orderState, String orderNo, String startTime, String endTime, Integer dateType)
         throws CommonOrderException;
   public long countQueryByUid(Long uid, Integer state, Integer type, Integer orderState, String orderNo, String startTime,
         String endTime, Integer dateType) throws CommonOrderException;
   public long countQueryByUid(Long uid, Integer state, Integer type, Integer orderState, String orderNo,
         String startTime, String endTime, Integer dateType) throws CommonOrderException;
   /**
    * 查询所有用户订单
    * 查询所有用户订单
    *
    * @param start
    * @param count
    * @param keyType
@@ -190,45 +222,145 @@
    * @return
    * @throws CommonOrderException
    */
   public List<CommonOrderVO> listQuery(long start, int count, Integer keyType, String key, Integer state, Integer type,
         Integer orderState, String startTime, String endTime) throws CommonOrderException;
   public long countQuery(Integer keyType, String key, Integer state, Integer type, Integer orderState, String startTime,
         String endTime) throws CommonOrderException;
   public List<CommonOrderVO> listQuery(long start, int count, Integer keyType, String key, Integer state,
         Integer type, Integer orderState, String startTime, String endTime, Integer source,
         List<Long> listShopId, List<Long> listGoodsId, Date minTime, BigDecimal money)
         throws CommonOrderException;
   /**
    * 根据订单号获取信息
    * @param orderNo
    * @return
    * @throws CommonOrderException
    */
   public CommonOrderVO getInfoByOrderNo(Long uid, String orderNo) throws CommonOrderException;
   /**
    * 查询券奖励金额以及订单信息
    * @param uid
    * @param state
    * @param orderNo
    * @return
    * @throws CommonOrderException
    */
   public List<CommonOrderVO> getCouponHongbaoByOrderNo(Long uid, Integer state, String orderNo) throws CommonOrderException;
   public long countQuery(Integer keyType, String key, Integer state, Integer type, Integer orderState,
         String startTime, String endTime, Integer source,
         List<Long> listShopId, List<Long> listGoodsId,Date minTime, BigDecimal money) throws CommonOrderException;
   /**
    * 查询订单
    *
    * @param uid
    * @param orderNo
    * @return
    * @throws CommonOrderException
    */
   public CommonOrderVO getCommonOrderByOrderNo(Long uid, String orderNo, Integer orderState) throws CommonOrderException;
   public CommonOrderVO getCommonOrderByOrderNo(Long uid, String orderNo, Integer orderState, Integer sourceType)
         throws CommonOrderException;
   /**
    * 使用奖励券成功后跳转 修改
    *
    * @param orderNo
    * @return
    */
   public JSONObject getRewardJumpInfo(String orderNo);
   public JSONObject getRewardJumpInfo(String orderNo, Integer goodsType);
   /**
    * 根据交易号获取订单详情
    *
    * @param sourceType
    * @param tradeId
    * @return
    */
   public CommonOrder selectBySourceTypeAndTradeId(int sourceType, String tradeId);
   /**
    * 删除错误订单
    *
    * @param coId
    */
   public void deleteErrorCommonOrder(Long coId);
   /**
    * 根据订单类型与交易ID查询
    *
    * @param sourceType
    * @param tradeId
    * @return
    */
   public List<CommonOrder> listBySourceTypeAndTradeId(int sourceType, String tradeId);
   /**
    * 根据条件查询订单
    *
    * @param sourceType
    * @param state
    * @param minTime
    * @param maxTime
    * @param page
    * @param pageSize
    * @return
    */
   public List<CommonOrder> listBySourceTypeAndStateAndThirdCrateTime(int sourceType, Integer state, Long minTime,
         Long maxTime, int page, int pageSize);
   /**
    * 查询订单 -根据订单号
    *
    * @param uid
    * @param orderNO
    * @return
    */
   public List<CommonOrder> getByOrderNo(Long uid, String orderNO);
   /**
    * 根据用户ID查询最近一条有效的订单
    *
    * @param uid
    * @return
    */
   public CommonOrder selectLatestValidByUid(Long uid);
   /**
    * 查询首笔有效订单
    * @param uid
    * @return
    */
   public CommonOrderVO firstValidOrderByUid(Long uid);
   /**
    * 查询首笔有效订单
    * @param uid
    * @param type 类型: 1自购  2分享 3邀请
    * @return
    */
   public CommonOrderVO firstValidOrderByUidAndType(Long uid, Integer type);
   /**
    * 查询是否上月到账订单
    * @param uid
    * @param type 类型: 1自购  2分享 3邀请
    * @return
    */
   public CommonOrderVO firstValidOrderLastMonthByUidAndType(Long uid, Integer type);
   /**
    * 首个分享订单
    * @param uid
    * @return
    */
   public CommonOrder getFirstShareOrderByUid(Long uid);
   /**
    * 订单中获得有效奖金
    * @param orderNo
    * @param sourceType
    * @return
    */
   public BigDecimal getTotalRewardMoneyByOrderNoAndSourceType(String orderNo, Integer sourceType);
   /**
    * 统计24小时有效自购订单
    * @param uid
    * @param minTime
    * @return
    */
   public long count24HValidOrderByUid(Long uid, Date minTime);
   /**
    * 订单统计有效数量
    * @param uid
    * @param day
    * @param source
    * @return
    */
   public OrderCountVO getOrderCount(Long uid, Integer day, Integer source);
}