From a721f2949a80666751ed7390a9ecba97454f140e Mon Sep 17 00:00:00 2001 From: xiaoyong931011 <15274802129@163.com> Date: Thu, 15 Sep 2022 17:48:09 +0800 Subject: [PATCH] 20220902 --- src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java | 14 +++++++++++++- 1 files changed, 13 insertions(+), 1 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java index c803616..86f5b94 100644 --- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java @@ -76,6 +76,8 @@ private final DataDictionaryCustomMapper dataDictionaryCustomMapper; private final MallLeaderAchieveMapper mallLeaderAchieveMapper; private final IApiMallTeamLeaderService iApiMallTeamLeaderService; + private final IMallElectronicFenceService iMallElectronicFenceService; + private final MallElectronicFenceMapper mallElectronicFenceMapper; @Override @Transactional(rollbackFor = Exception.class) @@ -90,6 +92,17 @@ MallTeamLeader mallTeamLeader = mallTeamLeaderMapper.selectLeaderByUniqueCode(takeUniqueCode); if(ObjectUtil.isEmpty(mallTeamLeader)){ throw new FebsException("请重新选择团长"); + } + + //订单范围内才允许下单 + MallAddressInfo address = mallAddressInfoMapper.selectAddressInfoByMemberIdAndId(member.getId(), addOrderDto.getAddressId()); + MallElectronicFence mallElectronicFence = mallElectronicFenceMapper.selectByTeamLeaderCode(mallTeamLeader.getUniqueCode()); + if(ObjectUtil.isNotEmpty(mallElectronicFence)){ + String inStr = iMallElectronicFenceService.fenceToLocation(mallElectronicFence.getGKey(), + mallElectronicFence.getServiceId(), address.getLongitude() + "," + address.getLatitude(), mallElectronicFence.getGid()); + if("1".equals(inStr)){ + throw new FebsException("不在当前团长的配送范围内"); + } } String orderNo = MallUtils.getOrderNum(); @@ -207,7 +220,6 @@ } orderInfo.setAmount(total); - MallAddressInfo address = mallAddressInfoMapper.selectAddressInfoByMemberIdAndId(member.getId(), addOrderDto.getAddressId()); orderInfo.setName(address.getName()); orderInfo.setPhone(address.getPhone()); orderInfo.setIsHome(addOrderDto.getIsHome()); -- Gitblit v1.9.1