From 0c568e9f295471f6b80e0b6d156ae890163b19bf Mon Sep 17 00:00:00 2001 From: xiaoyong931011 <15274802129@163.com> Date: Mon, 13 Feb 2023 15:06:56 +0800 Subject: [PATCH] 订单发货设置 --- src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallTeamLeaderServiceImpl.java | 116 +++++++++++++++++++++++++++++++++++++--------------------- 1 files changed, 74 insertions(+), 42 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 3341286..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 @@ -61,6 +61,8 @@ private final MallMoneyFlowMapper mallMoneyFlowMapper; private final MallElectronicFenceMapper mallElectronicFenceMapper; private final IMallElectronicFenceService iMallElectronicFenceService; + private final SpringContextHolder springContextHolder; + private final XcxProperties xcxProperties = SpringContextHolder.getBean(XcxProperties.class); @Override public IPage<AdminMallTeamLeaderVo> getLeaderListInPage(MallTeamLeader mallTeamLeader, QueryRequest request) { @@ -96,7 +98,7 @@ public FebsResponse leaderUpdate(MallTeamLeader mallTeamLeader) { Long id = mallTeamLeader.getId(); MallTeamLeader mallTeamLeaders = this.baseMapper.selectById(id); - if(1 == mallTeamLeader.getOnlineState()){ + if(1 == mallTeamLeaders.getOnlineState()){ return new FebsResponse().fail().message("请先让团长离线"); } if(ObjectUtil.isEmpty(mallTeamLeaders)){ @@ -107,10 +109,10 @@ // return new FebsResponse().fail().message("只有【待审核】状态才能提交!"); // } - Double bonusPercent = Double.parseDouble(mallTeamLeader.getBonusPercent()); - if(1 <= bonusPercent || 0 > bonusPercent){ - return new FebsResponse().fail().message("请输入合适的百分比小数"); - } +// Double bonusPercent = Double.parseDouble(mallTeamLeader.getBonusPercent()); +// if(1 <= bonusPercent || 0 > bonusPercent){ +// return new FebsResponse().fail().message("请输入合适的百分比小数"); +// } int isOk = mallTeamLeader.getIsOk(); if(MallTeamLeader.STATE_YES == isOk){ mallTeamLeader.setState(MallTeamLeader.STATE_YES); @@ -128,7 +130,7 @@ @Override public List<AdminSelectListLeaderVo> selectList(MallTeamLeader mallTeamLeader) { List<AdminSelectListLeaderVo> list = new ArrayList<>(); - List<MallTeamLeader> mallTeamLeaders = this.baseMapper.getMallTeamLeaderList(); + List<MallTeamLeader> mallTeamLeaders = this.baseMapper.getAllMallTeamLeaderList(); if(CollUtil.isNotEmpty(mallTeamLeaders)){ for(MallTeamLeader teamLeader : mallTeamLeaders){ AdminSelectListLeaderVo adminSelectListLeaderVo = new AdminSelectListLeaderVo(); @@ -172,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("刷新页面重试"); } @@ -183,17 +186,39 @@ if(CollUtil.isNotEmpty(mallTeamLeaderCancel)){ return new FebsResponse().fail().message("当前用户无法申请"); } - Double bonusPercent = Double.parseDouble(adminLeaderAddDto.getBonusPercent()); - if(1 <= bonusPercent || 0 > bonusPercent){ - 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); } - 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); +// Double bonusPercent = Double.parseDouble(adminLeaderAddDto.getBonusPercent()); +// if(1 <= bonusPercent || 0 > bonusPercent){ +// return new FebsResponse().fail().message("请输入合适的百分比小数"); +// } return new FebsResponse().success(); } @@ -252,9 +277,8 @@ // System.out.print(sid); // } } - - private final XcxProperties xcxProperties = SpringContextHolder.getBean(XcxProperties.class); @Override + @Transactional public FebsResponse addFence(AdminLeaderAddFenceDto adminLeaderAddFenceDto) { Long id = adminLeaderAddFenceDto.getId(); MallTeamLeader mallTeamLeader = this.baseMapper.selectById(id); @@ -271,20 +295,22 @@ if("fail".equals(resultStr)){ return new FebsResponse().fail().message("高德地图查询服务失败"); } - JSONObject jsonObject = JSONUtil.parseObj(resultStr); - String results = jsonObject.get("results").toString(); - JSONArray jsonArray = JSONUtil.parseArray(results); - for(Object jsonArray1 : jsonArray){ - JSONObject jsonObject1 = JSONUtil.parseObj(jsonArray1); - String name = jsonObject1.get("name").toString(); - String sid = jsonObject1.get("sid").toString(); - if(xcxProperties.getServiceName().equals(name)){ - serviceId= sid; - break; - } - } - if(StrUtil.isBlank(serviceId)){ + log.info(resultStr); + if("null".equals(resultStr) || StrUtil.isBlank(resultStr)){ serviceId = iMallElectronicFenceService.trackServiceAdd(xcxProperties.getGaodeKey(), xcxProperties.getServiceName()); + }else{ + JSONObject jsonObject = JSONUtil.parseObj(resultStr); + String results = jsonObject.get("results").toString(); + JSONArray jsonArray = JSONUtil.parseArray(results); + for(Object jsonArray1 : jsonArray){ + JSONObject jsonObject1 = JSONUtil.parseObj(jsonArray1); + String name = jsonObject1.get("name").toString(); + String sid = jsonObject1.get("sid").toString(); + if(xcxProperties.getServiceName().equals(name)){ + serviceId= sid; + break; + } + } } }else{ serviceId = mallElectronicFences.get(0).getServiceId(); @@ -315,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(); } @@ -337,10 +369,10 @@ if(1!=state){ return new FebsResponse().fail().message("目前还不是团长,无法操作"); } - MallElectronicFence mallElectronicFence = mallElectronicFenceMapper.selectByTeamLeaderCode(mallTeamLeader.getUniqueCode()); - if(ObjectUtil.isEmpty(mallElectronicFence)){ - return new FebsResponse().fail().message("请先设置配送范围"); - } +// MallElectronicFence mallElectronicFence = mallElectronicFenceMapper.selectByTeamLeaderCode(mallTeamLeader.getUniqueCode()); +// if(ObjectUtil.isEmpty(mallElectronicFence)){ +// return new FebsResponse().fail().message("请先设置配送范围"); +// } mallTeamLeader.setOnlineState(1); this.baseMapper.updateById(mallTeamLeader); return new FebsResponse().success(); -- Gitblit v1.9.1