package com.qs.mp.user.service; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.qs.mp.admin.domain.param.IndexTicketBoxTopQueryParam; import com.qs.mp.admin.domain.param.IndexTicketSiteTopQueryParam; import com.qs.mp.admin.domain.param.UserTicketOrderQueryParam; import com.qs.mp.admin.domain.vo.IndexVO; import com.qs.mp.admin.domain.vo.TicketCntVO; import com.qs.mp.admin.domain.vo.UserTicketOrderDetailVO; import com.qs.mp.admin.domain.vo.UserTicketOrderListVO; import com.qs.mp.channel.domain.ChannelOrder; import com.qs.mp.channel.domain.ChannelOrderDetail; import com.qs.mp.pay.domain.PayOrder; import com.qs.mp.user.domain.UserDeliverOrder; import com.qs.mp.user.domain.UserTicketOrder; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.extension.service.IService; import com.qs.mp.user.domain.UserTicketOrderItem; import com.qs.mp.user.domain.vo.TicketOrderSettleVO; import com.qs.mp.user.domain.vo.UserShareVO; import java.util.List; import org.apache.ibatis.annotations.Param; /** *

* 用户盲票订单 服务类 *

* * @author quanshu * @since 2022-03-07 */ public interface IUserTicketOrderService extends IService { /** * 提交盲票购买订单 * @param userId * @param orderSettleVO * @param userShareVO * @return */ String submitOrder(Long userId, TicketOrderSettleVO orderSettleVO, UserShareVO userShareVO); /** * 批量取消一个票组(线上)的订单(恢复优惠券、票组销量) * @param boxId * @param orderIds * @return */ boolean batchCancelOrder(String boxId, List orderIds); /** * 取消订单(恢复优惠券、票组销量) * @param orderId * @return */ boolean cancelOrder(String orderId); /** * 支付成功回调 * @param payOrder * @return */ boolean paySuccess(PayOrder payOrder); /** * 给渠道分润 * @param orderId * @param resource 订单来源1用户,2经销商 * @return */ boolean commToChannel(String orderId,Integer resource); /** * 统计交易金额 * @param wrapper * @return */ List selectIndexPayAmtList(Wrapper wrapper); /** * 统计交易用户数 * @param wrapper * @return */ List selectIndexPayUserCntList(Wrapper wrapper); /** * 统计实时交易数据 * @param wrapper * @return */ List selectIndexDailyInfoList(Wrapper wrapper); /** * 统计票组销售TOP10 * @param wrapper * @return */ List selectIndexTicketBoxTop(Wrapper wrapper); /** * 统计经销商交易额TOP10 * @param wrapper * @return */ List selectIndexTicketSiteTop(Wrapper wrapper); /** * 查询子渠道全部的盲票销售张数 * @param channelNo * @return */ int getChannelTotalTicketNumCnt(String channelNo); /** * 查询子渠道全部的盲票销售张数 * @param channelNo * @return */ int getSaleSiteTotalTicketNumCnt(Long channelId); /** * 统计经销商盲票销量线下和线上 * @param channelId * @return */ TicketCntVO getTicketSaleCnt(Long channelId); /** * 查询统计经销商盲票销量数据线下和线上 * @param queryWrapper * @return */ List listTicketSaleCnt(Wrapper queryWrapper); /** * 获取用户盲票订单列表 * @return */ List listUserTicketOrder(QueryWrapper queryWrapper); /** * 查询用户订单详情 * @param orderId * @return */ UserTicketOrderDetailVO detail(String orderId); /** * 统计用户订单数量 * @return */ int countUserTicketOrder(QueryWrapper queryWrapper); /** * 统计盲票组销量 * @param queryWrapper * @param channelOrderQueryWrapper * @return */ List selectIndexTicketBoxTopByTicketOrderAndChannelOrder(IndexTicketBoxTopQueryParam indexTicketBoxTopQueryParam ); /** * 统计经销商交易额 * @param indexTicketSiteTopQueryParam * @return */ List selectIndexTicketSiteTopByTicketOrderAndChannelOrder(IndexTicketSiteTopQueryParam indexTicketSiteTopQueryParam); }