From 6e03ad49978433ae107d4c47c430dce294807ba0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=89=9B=E5=8F=89=E9=97=AA=E9=97=AA?= <18322780655@163.com> Date: Wed, 14 Aug 2024 10:19:47 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E8=AE=A2=E5=8D=95=E6=95=B0?= =?UTF-8?q?=E9=87=8F=E5=92=8C=E5=85=85=E5=80=BC=E9=87=91=E9=A2=9D=E5=AD=97?= =?UTF-8?q?=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../repository/order/TbOrderInfoRepository.java | 5 +++++ .../repository/shop/TbShopUserRepository.java | 7 +++++++ .../impl/shopimpl/TbShopUserServiceImpl.java | 14 ++++++++++---- .../java/cn/ysk/cashier/vo/ShopUserInfoVo.java | 3 +++ 4 files changed, 25 insertions(+), 4 deletions(-) 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 aa889297..c8294d74 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 @@ -205,4 +205,9 @@ public interface TbOrderInfoRepository extends JpaRepository queryShopTableSaleInfo(@Param("shopId") String shopId, @Param("startTime") Long startTime, @Param("endTime") Long endTime); + + + + @Query(value = "select count(*) from tb_order_info where user_id=:userId and shop_id=:shopId and `status` in ('closed','refund')",nativeQuery = true) + Integer countByUserIdAndStatusAndShopId(String userId,String shopId); } diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/repository/shop/TbShopUserRepository.java b/eladmin-system/src/main/java/cn/ysk/cashier/repository/shop/TbShopUserRepository.java index acff9e4f..54509cc9 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/repository/shop/TbShopUserRepository.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/repository/shop/TbShopUserRepository.java @@ -22,6 +22,7 @@ import org.springframework.data.jpa.repository.JpaSpecificationExecutor; import org.springframework.data.jpa.repository.Query; import javax.persistence.Tuple; +import java.math.BigDecimal; import java.util.Date; import java.util.List; @@ -44,4 +45,10 @@ public interface TbShopUserRepository extends JpaRepository @Query("SELECT user.userId from TbShopUser user where user.shopId = :shopId") List getUserIdByShopId(String shopId); + + + + @Query(value = "select IFNULL(sum(amount),0) from tb_shop_user_flow where shop_user_id=:userId and biz_code in ('cashMemberIn','scanMemberIn')",nativeQuery = true) + BigDecimal sumAmount(Integer userId); + } diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/shopimpl/TbShopUserServiceImpl.java b/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/shopimpl/TbShopUserServiceImpl.java index 86393543..c1c1d916 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/shopimpl/TbShopUserServiceImpl.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/shopimpl/TbShopUserServiceImpl.java @@ -8,7 +8,9 @@ import cn.ysk.cashier.dto.shop.TbShopUserDto; import cn.ysk.cashier.dto.shop.TbShopUserQueryCriteria; import cn.ysk.cashier.mapper.shop.TbShopUserMapper; import cn.ysk.cashier.mybatis.mapper.ShopUserMapper; +import cn.ysk.cashier.mybatis.mapper.TbShopUserFlowMapper; import cn.ysk.cashier.pojo.shop.TbShopUser; +import cn.ysk.cashier.repository.order.TbOrderInfoRepository; import cn.ysk.cashier.repository.shop.TbShopUserRepository; import cn.ysk.cashier.service.shop.TbShopUserService; import cn.ysk.cashier.utils.FileUtil; @@ -26,11 +28,9 @@ import org.springframework.transaction.annotation.Transactional; import javax.servlet.http.HttpServletResponse; import java.io.IOException; +import java.math.BigDecimal; import java.time.Instant; -import java.util.ArrayList; -import java.util.LinkedHashMap; -import java.util.List; -import java.util.Map; +import java.util.*; /** * @author lyf @@ -45,6 +45,8 @@ public class TbShopUserServiceImpl implements TbShopUserService { private final TbShopUserRepository tbShopUserRepository; private final TbShopUserMapper tbShopUserMapper; + private final TbOrderInfoRepository tbOrderInfoRepository; + @Autowired private ShopUserMapper shopUserMapper; @@ -63,6 +65,10 @@ public class TbShopUserServiceImpl implements TbShopUserService { shopUserInfoVo.setTotalScore(0); }); } + Integer orderNumber=tbOrderInfoRepository.countByUserIdAndStatusAndShopId(shopUserInfoVo.getId().toString(),criteria.getShopId()); + shopUserInfoVo.setOrderNumber(Objects.isNull(orderNumber)?0:orderNumber); + shopUserInfoVo.setInMoney(tbShopUserRepository.sumAmount(shopUserInfoVo.getId())); + } return PageUtil.toPlusPage(iPage.getRecords(), Integer.valueOf(iPage.getTotal() + "")); diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/vo/ShopUserInfoVo.java b/eladmin-system/src/main/java/cn/ysk/cashier/vo/ShopUserInfoVo.java index e50ecdc3..d52439a5 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/vo/ShopUserInfoVo.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/vo/ShopUserInfoVo.java @@ -35,6 +35,9 @@ public class ShopUserInfoVo implements Serializable { private long createAt; private long lastLoginAt; + private BigDecimal inMoney; + private Integer orderNumber; + public Object getSex() { return sex; }