admin
2020-05-20 98b1a0affd69bbe63223c21fdd2c404e8bedfccb
fanli/src/main/java/com/yeshi/fanli/service/inter/order/LostOrderService.java
@@ -1,18 +1,125 @@
package com.yeshi.fanli.service.inter.order;
import java.math.BigDecimal;
import java.util.List;
import java.util.Map;
import java.util.concurrent.locks.ReentrantReadWriteLock;
import com.yeshi.fanli.entity.bus.user.LostOrder;
public interface LostOrderService {
   static final ReentrantReadWriteLock lostOrderLock = new ReentrantReadWriteLock(true);
   static final ReentrantReadWriteLock lostOrderLock = new ReentrantReadWriteLock(true);
   
   void saveLostOrder(LostOrder lostOrder);
   int addLostOrder(LostOrder lostOrder);
   void pass(LostOrder lostOrder);
   void reject(LostOrder lostOrder);
   List<LostOrder> findLostOrderList(String key, int page);
   int getCount(String key);
   LostOrder getOne(long id);
   /**
    * 按用户查找丢失订单
    *
    * @param uid
    * @param page
    * @param pageSize
    * @return
    */
   List<LostOrder> getLostOrderListByUid(Long uid, int page, int pageSize);
   /**
    * 获取丢失订单数量
    *
    * @param uid
    * @return
    */
   long getLostOrderCountByUid(Long uid);
   /**
    * 订单处理成功
    *
    * @param orderId
    */
   void processSuceess(String orderId,int orderType);
   /**
    * 订单处理失败
    *
    * @param orderId
    */
   void processFail(String orderId,int orderType);
   /**
    * 订单处理失败批量处理
    */
   void processFail();
   /**
    * 删除记录
    *
    * @param id
    */
   void deleteLostOrder(long id);
   /**
    * 删除用户的所有记录
    *
    * @param uid
    */
   void deleteLostOrderByUid(long uid);
   /**
    * 统计用户申诉次数
    *
    * @param uid
    * @return
    */
   public Map<String, Object> countByUid(long uid);
   /**
    * 后端查询
    *
    * @param start
    * @param count
    * @param key
    * @param state
    * @param handleType
    * @return
    */
   public List<LostOrder> listQuery(long start, int count, String key, Integer state, Integer handleType, Integer type);
   public long countQuery(String key, Integer state, Integer handleType, Integer type);
   /**
    * 根据状态与处理结果过去值
    *
    * @param state
    * @param resultCode
    * @return
    */
   public List<LostOrder> listByStateAndResultCode(int state, int resultCode, int page, int pageSize);
   /**
    * 统计申诉订单数量
    * @param preDay
    * @return
    */
   public Integer countLostOrderNum(String preDay, int resultCode);
   /**
    * 统计申诉找回佣金
    * @param preDay
    * @return
    */
   public BigDecimal countAppealMoney(String preDay);
}