|
@@ -8,6 +8,8 @@ import cn.newfeifan.mall.module.distri.mq.message.order.DistriOrderMessage;
|
|
|
import cn.newfeifan.mall.module.trade.controller.admin.order.vo.TradeOrderPageReqVO;
|
|
|
import cn.newfeifan.mall.module.trade.controller.app.order.vo.AppTradeOrderPageReqVO;
|
|
|
import cn.newfeifan.mall.module.trade.dal.dataobject.order.TradeOrderDO;
|
|
|
+import cn.newfeifan.mall.module.trade.enums.order.TradeOrderRefundStatusEnum;
|
|
|
+import cn.newfeifan.mall.module.trade.enums.order.TradeOrderStatusEnum;
|
|
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
|
|
import org.apache.ibatis.annotations.Mapper;
|
|
|
import org.apache.ibatis.annotations.Param;
|
|
@@ -30,23 +32,29 @@ public interface TradeOrderMapper extends BaseMapperX<TradeOrderDO> {
|
|
|
}
|
|
|
|
|
|
default PageResult<TradeOrderDO> selectPage(TradeOrderPageReqVO reqVO, Set<Long> userIds) {
|
|
|
- return selectPage(reqVO, new LambdaQueryWrapperX<TradeOrderDO>()
|
|
|
+ LambdaQueryWrapperX<TradeOrderDO> queryWrapper = new LambdaQueryWrapperX<TradeOrderDO>()
|
|
|
.likeIfPresent(TradeOrderDO::getNo, reqVO.getNo())
|
|
|
.eqIfPresent(TradeOrderDO::getUserId, reqVO.getUserId())
|
|
|
.eqIfPresent(TradeOrderDO::getDeliveryType, reqVO.getDeliveryType())
|
|
|
.inIfPresent(TradeOrderDO::getUserId, userIds)
|
|
|
.eqIfPresent(TradeOrderDO::getType, reqVO.getType())
|
|
|
- .eqIfPresent(TradeOrderDO::getStatus, reqVO.getStatus())
|
|
|
.eqIfPresent(TradeOrderDO::getPayChannelCode, reqVO.getPayChannelCode())
|
|
|
.eqIfPresent(TradeOrderDO::getTerminal, reqVO.getTerminal())
|
|
|
.eqIfPresent(TradeOrderDO::getLogisticsId, reqVO.getLogisticsId())
|
|
|
.eqIfPresent(TradeOrderDO::getMerchantId, reqVO.getMerchantId())
|
|
|
- .eqIfPresent(TradeOrderDO::getShopId,reqVO.getShopId())
|
|
|
+ .eqIfPresent(TradeOrderDO::getShopId, reqVO.getShopId())
|
|
|
.inIfPresent(TradeOrderDO::getShopId, reqVO.getShopIds())
|
|
|
.inIfPresent(TradeOrderDO::getPickUpStoreId, reqVO.getPickUpStoreIds())
|
|
|
.likeIfPresent(TradeOrderDO::getPickUpVerifyCode, reqVO.getPickUpVerifyCode())
|
|
|
.betweenIfPresent(TradeOrderDO::getCreateTime, reqVO.getCreateTime())
|
|
|
- .orderByDesc(TradeOrderDO::getId));
|
|
|
+ .orderByDesc(TradeOrderDO::getId);
|
|
|
+ if(reqVO.getStatus() != null && reqVO.getStatus().equals(TradeOrderStatusEnum.AFTER_SALE.getStatus())){
|
|
|
+ queryWrapper.eq(TradeOrderDO::getRefundStatus, TradeOrderRefundStatusEnum.ALL.getStatus());
|
|
|
+ }else if(reqVO.getStatus() != null){
|
|
|
+ queryWrapper.eqIfPresent(TradeOrderDO::getStatus, reqVO.getStatus());
|
|
|
+ queryWrapper.ne(TradeOrderDO::getRefundStatus, TradeOrderRefundStatusEnum.ALL.getStatus());
|
|
|
+ }
|
|
|
+ return selectPage(reqVO, queryWrapper);
|
|
|
}
|
|
|
|
|
|
// TODO @疯狂:如果用 map 返回,要不这里直接用 TradeOrderSummaryRespVO 返回?也算合理,就当 sql 查询出这么个玩意~~
|
|
@@ -106,6 +114,7 @@ public interface TradeOrderMapper extends BaseMapperX<TradeOrderDO> {
|
|
|
.inIfPresent(TradeOrderDO::getPickUpStoreId, reqVO.getPickUpStoreIds())
|
|
|
.likeIfPresent(TradeOrderDO::getPickUpVerifyCode, reqVO.getPickUpVerifyCode())
|
|
|
.betweenIfPresent(TradeOrderDO::getCreateTime, reqVO.getCreateTime())
|
|
|
+ .ne(TradeOrderDO::getRefundStatus, TradeOrderRefundStatusEnum.ALL.getStatus())
|
|
|
);
|
|
|
}
|
|
|
default Long selectCountByStatus(Integer status, Long userId) {
|
|
@@ -173,4 +182,19 @@ public interface TradeOrderMapper extends BaseMapperX<TradeOrderDO> {
|
|
|
List<DistriOrderMessage> queryDailyOrder();
|
|
|
|
|
|
List<DistriOrderMessage> queryAllOrderByOrderIds(@Param("orderIds") List<Long> orderIds);
|
|
|
+
|
|
|
+ default Long selectCountByRefundStatus(Integer refundStatus, TradeOrderPageReqVO reqVO){
|
|
|
+ return selectCount(new LambdaQueryWrapperX<TradeOrderDO>()
|
|
|
+ .eqIfPresent(TradeOrderDO::getRefundStatus, refundStatus)
|
|
|
+ .likeIfPresent(TradeOrderDO::getNo, reqVO.getNo())
|
|
|
+ .eqIfPresent(TradeOrderDO::getDeliveryType, reqVO.getDeliveryType())
|
|
|
+ .eqIfPresent(TradeOrderDO::getType, reqVO.getType())
|
|
|
+ .eqIfPresent(TradeOrderDO::getPayChannelCode, reqVO.getPayChannelCode())
|
|
|
+ .eqIfPresent(TradeOrderDO::getTerminal, reqVO.getTerminal())
|
|
|
+ .eqIfPresent(TradeOrderDO::getMerchantId, reqVO.getMerchantId())
|
|
|
+ .eqIfPresent(TradeOrderDO::getShopId,reqVO.getShopId())
|
|
|
+ .inIfPresent(TradeOrderDO::getShopId, reqVO.getShopIds())
|
|
|
+ .betweenIfPresent(TradeOrderDO::getCreateTime, reqVO.getCreateTime())
|
|
|
+ );
|
|
|
+ }
|
|
|
}
|