package com.qs.mp.user.service;
import com.qs.mp.pay.domain.PayOrder;
import com.qs.mp.user.domain.UserDeliverOrder;
import com.qs.mp.user.domain.UserDeliverOrderItem;
import java.util.List;
import org.apache.ibatis.annotations.Param;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.baomidou.mybatisplus.extension.service.IService;
import com.qs.mp.user.domain.vo.DeliverOrderSettleVO;
import com.qs.mp.user.domain.vo.TicketOrderSettleVO;
import com.qs.mp.user.domain.vo.UserDeliverOrderVO;
/**
*
* 用户提货订单 服务类
*
*
* @author quanshu
* @since 2022-03-07
*/
public interface IUserDeliverOrderService extends IService {
/**
* 提交奖品提货订单
*
* @param userId
* @param orderSettleVO
* @return
*/
String submitOrder(Long userId, DeliverOrderSettleVO orderSettleVO);
/**
* 取消订单
*
* @param orderId
* @return
*/
boolean cancelOrder(String orderId);
/**
* 支付成功回调
*
* @param payOrder
* @return
*/
boolean paySuccess(PayOrder payOrder);
/**
* 获取用户提货订单列表信息,支持翻页
*
* @param wrapper
* @return
*/
List selectUserDeliverOrderVoList(Wrapper wrapper);
/**
* 查询满足筛选条件的用户提货订单数量
*
* @param wrapper
* @return
*/
int selectUserDeliverOrderCount(Wrapper wrapper);
/**
* 获取用户提货订单信息VO
*
* @param wrapper
* @return
*/
UserDeliverOrderVO selectUserDeliverOrderVo(String orderId);
/**
* 用户提货订单发货
* @param orderId
* @param itemList
* @return
*/
boolean userDeliverOrderShip(String orderId, List itemList);
}