package com.sinata.rest.modular.mall.service;
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.service.IService;
|
import com.sinata.common.enums.EnumPayType;
|
import com.sinata.rest.modular.mall.controller.body.BodyMallOrder;
|
import com.sinata.rest.modular.mall.controller.vo.VoMallOrder;
|
import com.sinata.rest.modular.mall.controller.vo.VoMallOrderDetail;
|
import com.sinata.rest.modular.mall.controller.vo.VoMallOrderPayInfo;
|
import com.sinata.rest.modular.mall.model.MallOrder;
|
import com.sinata.rest.modular.member.controller.common.body.BodyMallOrderDetailUse;
|
|
import java.math.BigDecimal;
|
import java.util.Date;
|
import java.util.List;
|
import java.util.Map;
|
import java.util.concurrent.TimeoutException;
|
|
/**
|
* <p>
|
* 商品订单 服务类
|
* </p>
|
*
|
* @author goku
|
* @since 2023-03-10
|
*/
|
public interface IMallOrderService extends IService<MallOrder> {
|
|
/**
|
* 获取订单信息
|
*/
|
List<VoMallOrder> getOrderByUserIdList(Integer userId, Integer saleUserId, Integer state, Page page);
|
VoMallOrder getOrderByOrderNo(String orderNo);
|
List<VoMallOrder> getOrderListByOrderNo(String orderNo);
|
|
/**
|
* 获取订单详细信息
|
*/
|
List<VoMallOrderDetail> getOrderDetailByUserIdList(Integer userId, String state, Page page);
|
List<VoMallOrderDetail> getOrderDetailByOrderNoList(String orderNo);
|
|
/**
|
* 下单
|
*/
|
Object createOrder(List<BodyMallOrder> list);
|
|
/**
|
* 主订单回调
|
*/
|
Object payCallbackOrderMain(String orderNo, BigDecimal payFee, EnumPayType payType, String transactionNo);
|
|
/**
|
* 订单回调
|
*/
|
Object payCallback(MallOrder order, BigDecimal payFee, EnumPayType payType, String transactionNo, String outTradeNo);
|
|
/**
|
* 待评价订单
|
*/
|
List<Map<String, Object>> getOrderWaitEvaluate(Date outTime);
|
|
/**
|
* 订单默认评价
|
*/
|
void defaultOrderEvaluate(Date outTime);
|
|
/**
|
* 确认收货
|
*/
|
Object receiptCompleted(String orderNo);
|
|
/**
|
* 取消订单
|
*/
|
Object cancel(String orderNo);
|
|
/**
|
* 获取订单支付信息
|
*/
|
VoMallOrderPayInfo getOrderPayInfoByOrderDetailNo(String orderDetailNo);
|
|
/**
|
* 获取销售员业绩
|
* @param saleUserIdList
|
* @param beginTime
|
* @param endTime
|
* @return
|
*/
|
BigDecimal getSumMoneyBySaleUser(List<Integer> saleUserIdList, List<Integer> stateList, String beginTime, String endTime);
|
|
/**
|
* 我的直属团队(v3黄金营销员)业绩
|
* @param userId
|
* @param stateList
|
* @param beginTime
|
* @param endTime
|
* @return
|
*/
|
BigDecimal getV3DirectTeamSumMoney(Integer userId, List<Integer> stateList, String beginTime, String endTime);
|
|
/**
|
* 获取未结算佣金订单
|
* @return
|
*/
|
List<VoMallOrder> getNotCommissionSettlementOrderList();
|
|
Boolean use(BodyMallOrderDetailUse body) throws TimeoutException;
|
|
}
|