package com.ylx.order.mapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ylx.massage.domain.CancelOrderApplication; import com.ylx.order.domain.OrderDispatch; import com.ylx.order.domain.dto.AdminOrderDispatchMerchantQueryDTO; import com.ylx.order.domain.dto.AdminOrderQueryDTO; import com.ylx.order.domain.vo.AdminOrderDetailVO; import com.ylx.order.domain.vo.AdminOrderDispatchMerchantVO; import com.ylx.order.domain.vo.AdminOrderDispatchOrderVO; import com.ylx.order.domain.vo.AdminOrderPageVO; import com.ylx.order.domain.vo.AdminOrderServiceCategoryVO; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import java.util.List; @Mapper public interface AdminOrderMapper { Page selectAdminOrderPage(Page page, @Param("dto") AdminOrderQueryDTO dto); Page selectAdminOrderRecyclePage(Page page, @Param("dto") AdminOrderQueryDTO dto); List selectServiceCategoryOptions(); int logicDeleteById(@Param("id") Long id); int restoreById(@Param("id") Long id); CancelOrderApplication selectRefundApplicationOrderById(@Param("id") Long id); int countPendingRefundApplicationByOrderNo(@Param("orderNo") String orderNo); int insertRefundApplication(@Param("application") CancelOrderApplication application); AdminOrderDetailVO.OrderInfoVO selectOrderDetailInfoById(@Param("id") Long id); AdminOrderDetailVO.ProjectInfoVO selectOrderProjectDetailById(@Param("id") Long id); List selectOrderOperationLogs(@Param("id") Long id); AdminOrderDispatchOrderVO selectDispatchOrderById(@Param("id") Long id); List selectDispatchMerchantCandidates(@Param("order") AdminOrderDispatchOrderVO order, @Param("query") AdminOrderDispatchMerchantQueryDTO query); AdminOrderDispatchMerchantVO selectDispatchMerchantById(@Param("order") AdminOrderDispatchOrderVO order, @Param("merchantId") Integer merchantId, @Param("radiusMeters") java.math.BigDecimal radiusMeters); /** * 查询订单当前派单状态 * @param orderId * @return int 订单当前派单状态 */ int countCurrentDispatchByOrderId(@Param("orderId") Long orderId); int insertOrderDispatch(OrderDispatch dispatch); int updateOrderDispatch(@Param("orderId") Long orderId, @Param("merchant") AdminOrderDispatchMerchantVO merchant, @Param("statusBefore") Integer statusBefore, @Param("statusAfter") Integer statusAfter); int insertOrderStatusFlow(@Param("orderId") Long orderId, @Param("status") Integer status, @Param("operator") String operator); }