| | |
| | | package com.yeshi.fanli.service.inter.order;
|
| | |
|
| | | import java.math.BigDecimal;
|
| | | import java.util.Date;
|
| | | 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;
|
| | |
|
| | | public interface CommonOrderService {
|
| | |
|
| | |
| | | * @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;
|
| | |
|
| | | /**
|
| | |
| | | * @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;
|
| | |
|
| | | /**
|
| | | * 移动段订单列表
|
| | |
| | | * 到账状态
|
| | | * @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;
|
| | |
|
| | | /**
|
| | | * 统计订单-根据红包类型 自购 邀请 分享
|
| | |
| | | * @param uid
|
| | | * @return
|
| | | */
|
| | | public Map<String, BigDecimal> countOrderByHongBaoType(Long uid, Integer day);
|
| | | public Map<String, BigDecimal> countHistoryOrder(Long uid, Integer day, Integer source);
|
| | |
|
| | | /**
|
| | | * 统计订单
|
| | |
| | | * @param uid
|
| | | * @return
|
| | | */
|
| | | public long countOrder(Long uid, Integer type, Integer isToday);
|
| | | public long countBonusOrderNumber(Long uid, Integer type, Integer isToday, String startTime, String endTime,
|
| | | Integer source);
|
| | |
|
| | | /**
|
| | | * 统计订单
|
| | |
| | | * @param uid
|
| | | * @return
|
| | | */
|
| | | public BigDecimal countOrderMoney(Long uid, Integer type, Integer isToday);
|
| | | public BigDecimal countBonusOrderMoney(Long uid, Integer type, Integer isToday, String startTime, String endTime,
|
| | | Integer source);
|
| | |
|
| | | /**
|
| | | * 统计奖金订单数量、金额
|
| | | * |
| | | * @param uid
|
| | | * @param type
|
| | | * @param day
|
| | | * @param startTime
|
| | | * @param endTime
|
| | | * @return
|
| | | */
|
| | | public Map<String, Object> countBonusOrderMoneyAndNumber(Long uid, Integer type, Integer day, String startTime,
|
| | | String endTime, Integer source);
|
| | |
|
| | | /**
|
| | | * 根据条件统计
|
| | |
| | | * @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);
|
| | |
|
| | | /**
|
| | | * 根据订单号与订单类型查询订单
|
| | |
| | | public List<CommonOrder> listBySourceTypeAndOrderId(int sourceType, String orderId);
|
| | |
|
| | | /**
|
| | | * 缓存普通订单
|
| | | * 缓存淘宝类普通订单
|
| | | *
|
| | | * @param taoBaoOrder
|
| | | * @param uid
|
| | | * @return
|
| | | * @throws CommonOrderException
|
| | | */
|
| | | public CommonOrder addTaoBaoOrder(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
|
| | | * @param maxDate
|
| | | * @return
|
| | | */
|
| | | public long countByUidAndOrderStateWithOrderBalanceTime(Long uid, int state, Date minDate, Date maxDate);
|
| | |
|
| | | /**
|
| | | * 后端查询订单列表
|
| | | * |
| | | * @param start
|
| | | * @param count
|
| | | * @param uid
|
| | | * @param state
|
| | | * @param type
|
| | | * @param orderState
|
| | | * @param orderNo
|
| | | * @param startTime
|
| | | * @param endTime
|
| | | * @param day
|
| | | * @param dateType
|
| | | * 1昨天 2今天 3本月 4 上月
|
| | | * @return
|
| | | * @throws CommonOrderException
|
| | | */
|
| | | public List<CommonOrderVO> listQueryByUid(long start, int count, 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
|
| | | * @param key
|
| | | * @param state
|
| | | * @param type
|
| | | * @param orderState
|
| | | * @param startTime
|
| | | * @param endTime
|
| | | * @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, Integer source,
|
| | | List<Long> listShopId, List<Long> listGoodsId, Date minTime, BigDecimal money)
|
| | | 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, Integer sourceType)
|
| | | throws CommonOrderException;
|
| | |
|
| | | /**
|
| | | * 使用奖励券成功后跳转 修改
|
| | | * |
| | | * @param orderNo
|
| | | * @return
|
| | | */
|
| | | public Map<String, Object> countMoneyGroupOrderNoByUid(Long uid, Integer type, String orderNo, String startTime, |
| | | String endTime, Integer day);
|
| | | 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);
|
| | |
|
| | | }
|