From 6e3fcdbde6ad62832753ddc8d3e1429f29ea58ee Mon Sep 17 00:00:00 2001 From: Administrator <15274802129@163.com> Date: Mon, 28 Apr 2025 17:31:42 +0800 Subject: [PATCH] refactor(mall): 优化活动报名相关功能 --- src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallTeamLeaderServiceImpl.java | 57 +++++++++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 43 insertions(+), 14 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallTeamLeaderServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallTeamLeaderServiceImpl.java index 225e870..6ca7a53 100644 --- a/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallTeamLeaderServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallTeamLeaderServiceImpl.java @@ -174,6 +174,7 @@ Long memberId = adminLeaderAddDto.getMemberId(); MallMember mallMember = mallMemberMapper.selectById(memberId); + MallTeamLeader mallTeamLeaderAdd = new MallTeamLeader(); if(ObjectUtil.isEmpty(mallMember)){ return new FebsResponse().fail().message("刷新页面重试"); } @@ -185,17 +186,39 @@ if(CollUtil.isNotEmpty(mallTeamLeaderCancel)){ return new FebsResponse().fail().message("当前用户无法申请"); } + List<MallTeamLeader> mallTeamLeaderNo = this.baseMapper.selectListByMemberIdAndState(memberId, MallTeamLeader.STATE_NO); + if(CollUtil.isNotEmpty(mallTeamLeaderNo)){ + mallTeamLeaderAdd = mallTeamLeaderNo.get(0); + if(ObjectUtil.isNotEmpty(mallTeamLeaderAdd)){ + mallTeamLeaderAdd.setName(adminLeaderAddDto.getName()); + mallTeamLeaderAdd.setPhone(adminLeaderAddDto.getPhone()); + mallTeamLeaderAdd.setAddressPic(adminLeaderAddDto.getAddressPic()); + mallTeamLeaderAdd.setAddressArea(adminLeaderAddDto.getAddressArea()); + mallTeamLeaderAdd.setDetailAddress(adminLeaderAddDto.getDetailAddress()); + mallTeamLeaderAdd.setLongitude(adminLeaderAddDto.getLongitude()); + mallTeamLeaderAdd.setLatitude(adminLeaderAddDto.getLatitude()); + mallTeamLeaderAdd.setState(MallTeamLeader.STATE_YES); + //申请团长默认关闭返利,返利比例为0 + mallTeamLeaderAdd.setProfitSwitch(2); + mallTeamLeaderAdd.setBonusPercent("0"); + this.baseMapper.updateById(mallTeamLeaderAdd); + } + }else{ + MallTeamLeader mallTeamLeader = MallTeamLeaderConversion.INSTANCE.adminDtoToEntity(adminLeaderAddDto); + mallTeamLeader.setUniqueCode(mallMember.getInviteId()); + mallTeamLeader.setMemberId(memberId); + mallTeamLeader.setPhone(mallMember.getPhone()); + mallTeamLeader.setName(mallMember.getName()); + mallTeamLeader.setState(MallTeamLeader.STATE_YES); + //申请团长默认关闭返利,返利比例为0 + mallTeamLeader.setProfitSwitch(2); + mallTeamLeader.setBonusPercent("0"); + this.baseMapper.insert(mallTeamLeader); + } // Double bonusPercent = Double.parseDouble(adminLeaderAddDto.getBonusPercent()); // if(1 <= bonusPercent || 0 > bonusPercent){ // return new FebsResponse().fail().message("请输入合适的百分比小数"); // } - MallTeamLeader mallTeamLeader = MallTeamLeaderConversion.INSTANCE.adminDtoToEntity(adminLeaderAddDto); - mallTeamLeader.setUniqueCode(mallMember.getInviteId()); - mallTeamLeader.setMemberId(memberId); - mallTeamLeader.setPhone(mallMember.getPhone()); - mallTeamLeader.setName(mallMember.getName()); - mallTeamLeader.setState(MallTeamLeader.STATE_YES); - this.baseMapper.insert(mallTeamLeader); return new FebsResponse().success(); } @@ -318,14 +341,20 @@ mallElectronicFenceAdd.setServiceId(serviceId); mallElectronicFenceMapper.insert(mallElectronicFenceAdd); }else{ - String fenceUpdate = iMallElectronicFenceService.fenceUpdate(xcxProperties.getGaodeKey(), serviceId, - mallElectronicFence.getGid(), mallElectronicFence.getFenceName(), - adminLeaderAddFenceDto.getLonglatiarr()); - if("fail".equals(fenceUpdate)){ - return new FebsResponse().fail().message("高德地图更新多边形围栏失败"); + //删除电子围栏 + if(StrUtil.isEmpty(adminLeaderAddFenceDto.getLonglatiarr())){ + iMallElectronicFenceService.fenceDelete(xcxProperties.getGaodeKey(),serviceId,mallElectronicFence.getGid()); + mallElectronicFenceMapper.deleteById(mallElectronicFence.getId()); + }else{ + String fenceUpdate = iMallElectronicFenceService.fenceUpdate(xcxProperties.getGaodeKey(), serviceId, + mallElectronicFence.getGid(), mallElectronicFence.getFenceName(), + adminLeaderAddFenceDto.getLonglatiarr()); + if("fail".equals(fenceUpdate)){ + return new FebsResponse().fail().message("高德地图更新多边形围栏失败"); + } + mallElectronicFence.setLonglatiarr(adminLeaderAddFenceDto.getLonglatiarr()); + mallElectronicFenceMapper.updateById(mallElectronicFence); } - mallElectronicFence.setLonglatiarr(adminLeaderAddFenceDto.getLonglatiarr()); - mallElectronicFenceMapper.updateById(mallElectronicFence); } return new FebsResponse().success(); } -- Gitblit v1.9.1