Helius
2022-09-23 7c6f033b8754b07bf5c75ae8745a982d76f9abb4
src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallTeamLeaderServiceImpl.java
@@ -64,6 +64,7 @@
    private final MallGoodsSkuMapper mallGoodsSkuMapper;
    private final MallElectronicFenceMapper mallElectronicFenceMapper;
    private final IMallElectronicFenceServiceImpl iMallElectronicFenceService;
    private final MallLeaderDefaultMapper mallLeaderDefaultMapper;
    @Override
    @Transactional
@@ -154,6 +155,7 @@
    @Override
    public FebsResponse getApiLeaderInfoVoById(Long id) {
        MallMember member = LoginUserUtil.getLoginUser();
        MallTeamLeader mallTeamLeader = this.baseMapper.selectById(id);
        ApiLeaderInfoVo apiLeaderInfoVo = new ApiLeaderInfoVo();
        apiLeaderInfoVo.setId(mallTeamLeader.getId());
@@ -171,6 +173,14 @@
            String longLatStr = mallElectronicFence.getLonglatiarr();
            apiLeaderInfoVo.setLonglatiarr(longLatStr);
        }
        MallLeaderDefault mallLeaderDefault1 = mallLeaderDefaultMapper.selectByMemberId(member.getId());
        if(ObjectUtil.isNotEmpty(mallLeaderDefault1)){
            mallLeaderDefaultMapper.deleteById(mallLeaderDefaultMapper.selectByMemberId(member.getId()).getId());
        }
        MallLeaderDefault mallLeaderDefault = new MallLeaderDefault();
        mallLeaderDefault.setMemberId(member.getId());
        mallLeaderDefault.setUniqueCode(mallTeamLeader.getUniqueCode());
        mallLeaderDefaultMapper.insert(mallLeaderDefault);
        return new FebsResponse().success().data(apiLeaderInfoVo);
    }
@@ -222,7 +232,7 @@
            orderStateDto.setGoodsName(StrUtil.sub(productNames,0,20)+"...");
            String takeUniqueCode = mallOrderInfo.getTakeUniqueCode();
            MallTeamLeader mallTeamLeader = mallTeamLeaderMapper.selectLeaderByUniqueCode(takeUniqueCode);
            orderStateDto.setAddressArea(StrUtil.sub(mallTeamLeader.getAddressArea(),0,20)+"...");
            orderStateDto.setAddressArea(mallTeamLeader.getAddressArea());
            orderStateDto.setDetailAddress(StrUtil.sub(mallTeamLeader.getDetailAddress(),0,20)+"...");
            orderStateDto.setLeaderPhone(mallTeamLeader.getPhone());
            orderStateDto.setOpenId(mallMemberMapper.selectById(mallOrderInfo.getMemberId()).getOpenId());
@@ -279,20 +289,29 @@
        Double latitude = apiLeaderTitleDto.getLatitude() == null ? 0 : apiLeaderTitleDto.getLatitude();
        ApiLeaderInfoVo apiLeaderInfoVo = new ApiLeaderInfoVo();
        MallTeamLeader mallTeamLeader = new MallTeamLeader();
        //特征码扫码
        if(StrUtil.isNotEmpty(uniqueCode)){
            mallTeamLeader = this.baseMapper.selectLeaderByUniqueCode(uniqueCode);
        //经纬度定位
        }else if(longitude != 0 && latitude != 0){
            mallTeamLeader = this.baseMapper.selectLeaderByLonAndLat(longitude,latitude);
        //直接进入,默认选择列表第一个
        MallMember member = LoginUserUtil.getLoginUser();
        if(ObjectUtil.isNotEmpty(member)){
            MallLeaderDefault mallLeaderDefault = mallLeaderDefaultMapper.selectByMemberId(member.getId());
            if(ObjectUtil.isNotEmpty(mallLeaderDefault)){
                mallTeamLeader = this.baseMapper.selectLeaderByUniqueCode(mallLeaderDefault.getUniqueCode());
            }
        }else{
            List<MallTeamLeader> mallTeamLeaderList = this.baseMapper.getMallTeamLeaderList();
            if(CollUtil.isNotEmpty(mallTeamLeaderList)){
                mallTeamLeader = mallTeamLeaderList.get(0);
            //特征码扫码
            if(StrUtil.isNotEmpty(uniqueCode)){
                mallTeamLeader = this.baseMapper.selectLeaderByUniqueCode(uniqueCode);
                //经纬度定位
            }else if(longitude != 0 && latitude != 0){
                mallTeamLeader = this.baseMapper.selectLeaderByLonAndLat(longitude,latitude);
                //直接进入,默认选择列表第一个
            }else{
                List<MallTeamLeader> mallTeamLeaderList = this.baseMapper.getMallTeamLeaderList();
                if(CollUtil.isNotEmpty(mallTeamLeaderList)){
                    mallTeamLeader = mallTeamLeaderList.get(0);
                }
            }
        }
        if(ObjectUtil.isNotEmpty(mallTeamLeader)){
            apiLeaderInfoVo.setId(mallTeamLeader.getId());
            apiLeaderInfoVo.setName(mallTeamLeader.getName());
@@ -543,4 +562,50 @@
        return new FebsResponse().success().data(apiLeaderListVos);
    }
    @Override
    public FebsResponse noLoginLeaderTitle(ApiLeaderTitleDto apiLeaderTitleDto) {
        String uniqueCode = apiLeaderTitleDto.getUniqueCode();
        Double longitude = apiLeaderTitleDto.getLongitude() == null ? 0 : apiLeaderTitleDto.getLongitude();
        Double latitude = apiLeaderTitleDto.getLatitude() == null ? 0 : apiLeaderTitleDto.getLatitude();
        ApiLeaderInfoVo apiLeaderInfoVo = new ApiLeaderInfoVo();
        MallTeamLeader mallTeamLeader = new MallTeamLeader();
        //特征码扫码
        if(StrUtil.isNotEmpty(uniqueCode)){
            mallTeamLeader = this.baseMapper.selectLeaderByUniqueCode(uniqueCode);
            //经纬度定位
        }else if(longitude != 0 && latitude != 0){
            mallTeamLeader = this.baseMapper.selectLeaderByLonAndLat(longitude,latitude);
            //直接进入,默认选择列表第一个
        }else{
            List<MallTeamLeader> mallTeamLeaderList = this.baseMapper.getMallTeamLeaderList();
            if(CollUtil.isNotEmpty(mallTeamLeaderList)){
                mallTeamLeader = mallTeamLeaderList.get(0);
            }
        }
        if(ObjectUtil.isNotEmpty(mallTeamLeader)){
            apiLeaderInfoVo.setId(mallTeamLeader.getId());
            apiLeaderInfoVo.setName(mallTeamLeader.getName());
            apiLeaderInfoVo.setPhone(mallTeamLeader.getPhone());
            apiLeaderInfoVo.setAddressPic(mallTeamLeader.getAddressPic());
            apiLeaderInfoVo.setUniqueCode(mallTeamLeader.getUniqueCode());
            apiLeaderInfoVo.setProvince(mallTeamLeader.getProvince());
            apiLeaderInfoVo.setCity(mallTeamLeader.getCity());
            apiLeaderInfoVo.setTownship(mallTeamLeader.getTownship());
            apiLeaderInfoVo.setDetailAddress(mallTeamLeader.getDetailAddress());
            apiLeaderInfoVo.setAddressArea(mallTeamLeader.getAddressArea());
            MallElectronicFence mallElectronicFence = mallElectronicFenceMapper.selectByTeamLeaderCode(mallTeamLeader.getUniqueCode());
            if(ObjectUtil.isNotEmpty(mallElectronicFence)){
                apiLeaderInfoVo.setLonglatiarr(mallElectronicFence.getLonglatiarr());
            }
            apiLeaderInfoVo.setLongitude(mallTeamLeader.getLongitude());
            apiLeaderInfoVo.setLatitude(mallTeamLeader.getLatitude());
        }
        if(ObjectUtil.isEmpty(apiLeaderInfoVo)){
            return new FebsResponse().success();
        }
        return new FebsResponse().success().data(apiLeaderInfoVo);
    }
}