diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/repository/order/TbOrderInfoRepository.java b/eladmin-system/src/main/java/cn/ysk/cashier/repository/order/TbOrderInfoRepository.java index 97e8a356..81b7d18d 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/repository/order/TbOrderInfoRepository.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/repository/order/TbOrderInfoRepository.java @@ -33,10 +33,10 @@ import java.util.List; **/ public interface TbOrderInfoRepository extends JpaRepository, JpaSpecificationExecutor { - @Query("SELECT new cn.ysk.cashier.vo.TbOrderPayCountVo(info.payType, SUM(info.amount)) " + + @Query("SELECT new cn.ysk.cashier.vo.TbOrderPayCountVo(info.payType, SUM(info.orderAmount)) " + "FROM TbOrderInfo info " + "WHERE info.shopId = :shopId " + - "AND info.status ='closed'" + + "AND ((info.status = 'closed') OR (info.status = 'refund' AND info.orderType != 'return')) " + "GROUP BY info.payType") List queryTbOrderPayCount(@Param("shopId")String shopId); diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/order/TbOrderInfoServiceImpl.java b/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/order/TbOrderInfoServiceImpl.java index 7aad0ee2..a6567c11 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/order/TbOrderInfoServiceImpl.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/order/TbOrderInfoServiceImpl.java @@ -71,9 +71,10 @@ public class TbOrderInfoServiceImpl implements TbOrderInfoService { // Page page = tbOrderInfoRepository.findAll((root, criteriaQuery, criteriaBuilder) -> QueryHelp.getPredicate(root, criteria, criteriaBuilder), pageable); Page page = tbOrderInfoRepository.findAll((root, criteriaQuery, criteriaBuilder) -> { Predicate predicate = QueryHelp.getPredicate(root, criteria, criteriaBuilder); - // 追加校验参数 status不为空时 不查询状态为 "refund" 的 - if(StringUtils.isBlank(criteria.getStatus())){ + // 追加校验参数 status为空且source为空 时 不查询状态为 "refund"且orderType为return 的 + if (StringUtils.isBlank(criteria.getStatus()) && StringUtils.isBlank(criteria.getSource())) { predicate = criteriaBuilder.and(predicate, criteriaBuilder.notEqual(root.get("status"), "refund")); + predicate = criteriaBuilder.and(predicate, criteriaBuilder.notEqual(root.get("orderType"), "return")); } return predicate; }, pageable); @@ -102,16 +103,16 @@ public class TbOrderInfoServiceImpl implements TbOrderInfoService { @Override public List queryTbOrderPayCount(String shopId) { - List result=new ArrayList<>(); + List result = new ArrayList<>(); List payCountVoList = tbOrderInfoRepository.queryTbOrderPayCount(shopId); for (TbOrderPayCountVo payCount : payCountVoList) { - if(StringUtils.isNotBlank(payCount.getPayType())){ + if (StringUtils.isNotBlank(payCount.getPayType())) { TbShopPayType byPayType = payTypeRepository.findByPayType(payCount.getPayType(), shopId); if (byPayType != null) { payCount.setPayType(byPayType.getPayName()); payCount.setIcon(byPayType.getIcon()); } - if(payCount.getPayType().equals("wx_lite")){ + if (payCount.getPayType().equals("wx_lite")) { payCount.setPayType("微信小程序支付"); payCount.setIcon("https://cashier-oss.oss-cn-beijing.aliyuncs.com/upload/20240318/ecf9e234aad8426ab0b1c4d5b8e50c9d.jpg"); }