xiaoyong931011
2022-09-15 a721f2949a80666751ed7390a9ecba97454f140e
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());