From ee83bd226e5eebef8124809ee42498c89ed29fb1 Mon Sep 17 00:00:00 2001 From: Cui Zhi Feng <7426394+wuxixiaocui@user.noreply.gitee.com> Date: 星期五, 27 九月 2024 15:42:19 +0800 Subject: [PATCH] 商品销量排序 --- src/main/resources/mapper/flower/FlowerMapper.xml | 14 ++++++++++---- src/main/java/com/mzl/flower/service/flower/FlowerService.java | 5 +++-- 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/mzl/flower/service/flower/FlowerService.java b/src/main/java/com/mzl/flower/service/flower/FlowerService.java index 9cc9169..f7f4821 100644 --- a/src/main/java/com/mzl/flower/service/flower/FlowerService.java +++ b/src/main/java/com/mzl/flower/service/flower/FlowerService.java @@ -693,9 +693,10 @@ public Page<FlowerShowListDTO> myCollect(Page page, FlowerShowQueryDTO dto) { dto.setUserId(SecurityUtils.getUserId()); if (StringUtils.isNotEmpty(dto.getColumn())) { - if(dto.getColumn().contains("sales") - || dto.getColumn().contains("stock")){ + if(dto.getColumn().contains("stock")){ dto.setColumn(dto.getColumn() + " desc"); + } else if (dto.getColumn().contains("sales")) { + dto.setColumn("ifnull(sales, 0) + ifnull(real_sales, 0) desc"); } } diff --git a/src/main/resources/mapper/flower/FlowerMapper.xml b/src/main/resources/mapper/flower/FlowerMapper.xml index 1da83a9..711835b 100644 --- a/src/main/resources/mapper/flower/FlowerMapper.xml +++ b/src/main/resources/mapper/flower/FlowerMapper.xml @@ -180,8 +180,11 @@ <choose> <when test="condition.column != null and condition.column != '' and (condition.recommend == null or condition.zoneId != null)"> <choose> - <when test="'f.sales'.equals(condition.column) or 'f.stock'.equals(condition.column)"> - order by ${condition.column} desc + <when test="'f.sales'.equals(condition.column)"> + order by ifnull(f.sales, 0) + ifnull(f.real_sales, 0) desc + </when> + <when test="'f.stock'.equals(condition.column)"> + order by f.stock desc </when> <otherwise> order by ${condition.column}, f.price @@ -332,8 +335,11 @@ <choose> <when test="condition.column != null and condition.column != ''"> <choose> - <when test="'f.sales'.equals(condition.column) or 'f.stock'.equals(condition.column)"> - order by ${condition.column} desc + <when test="'f.sales'.equals(condition.column)"> + order by ifnull(f.sales, 0) + ifnull(f.real_sales, 0) desc + </when> + <when test="'f.stock'.equals(condition.column)"> + order by f.stock desc </when> <otherwise> order by ${condition.column} asc -- Gitblit v1.9.3