From 529ad9dd8d1876b57e852bc45b602ba3ccc8df2a Mon Sep 17 00:00:00 2001 From: KKSU <15274802129@163.com> Date: Wed, 10 Apr 2024 17:19:08 +0800 Subject: [PATCH] 公告-首页公告调整 --- src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallTeamLeaderServiceImpl.java | 160 ++++++++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 132 insertions(+), 28 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallTeamLeaderServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallTeamLeaderServiceImpl.java index e4d0747..a979b39 100644 --- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallTeamLeaderServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallTeamLeaderServiceImpl.java @@ -64,12 +64,14 @@ private final MallGoodsSkuMapper mallGoodsSkuMapper; private final MallElectronicFenceMapper mallElectronicFenceMapper; private final IMallElectronicFenceServiceImpl iMallElectronicFenceService; + private final MallLeaderDefaultMapper mallLeaderDefaultMapper; @Override @Transactional public FebsResponse applyLeader(ApiApplayLeaderDto apiApplayLeaderDto) { MallMember member = LoginUserUtil.getLoginUser(); Long memberId = member.getId(); + MallTeamLeader mallTeamLeaderAdd = new MallTeamLeader(); List<MallTeamLeader> mallTeamLeaders = this.baseMapper.selectListByMemberIdAndState(memberId, MallTeamLeader.STATE_ING); if(CollUtil.isNotEmpty(mallTeamLeaders)){ return new FebsResponse().fail().message("正在申请中"); @@ -78,14 +80,33 @@ if(CollUtil.isNotEmpty(mallTeamLeaderCancel)){ return new FebsResponse().fail().message("当前用户无法申请"); } - MallTeamLeader mallTeamLeader = MallTeamLeaderConversion.INSTANCE.dtoToEntity(apiApplayLeaderDto); - mallTeamLeader.setMemberId(memberId); - mallTeamLeader.setState(MallTeamLeader.STATE_ING); - mallTeamLeader.setUniqueCode(member.getInviteId()); - //申请团长默认关闭返利,返利比例为0 - mallTeamLeader.setProfitSwitch(2); - mallTeamLeader.setBonusPercent("0"); - this.baseMapper.insert(mallTeamLeader); + List<MallTeamLeader> mallTeamLeaderNo = this.baseMapper.selectListByMemberIdAndState(memberId, MallTeamLeader.STATE_NO); + if(CollUtil.isNotEmpty(mallTeamLeaderNo)){ + mallTeamLeaderAdd = mallTeamLeaderNo.get(0); + if(ObjectUtil.isNotEmpty(mallTeamLeaderAdd)){ + mallTeamLeaderAdd.setName(apiApplayLeaderDto.getName()); + mallTeamLeaderAdd.setPhone(apiApplayLeaderDto.getPhone()); + mallTeamLeaderAdd.setAddressPic(apiApplayLeaderDto.getAddressPic()); + mallTeamLeaderAdd.setAddressArea(apiApplayLeaderDto.getAddressArea()); + mallTeamLeaderAdd.setDetailAddress(apiApplayLeaderDto.getDetailAddress()); + mallTeamLeaderAdd.setLongitude(apiApplayLeaderDto.getLongitude()); + mallTeamLeaderAdd.setLatitude(apiApplayLeaderDto.getLatitude()); + mallTeamLeaderAdd.setState(MallTeamLeader.STATE_ING); + //申请团长默认关闭返利,返利比例为0 + mallTeamLeaderAdd.setProfitSwitch(2); + mallTeamLeaderAdd.setBonusPercent("0"); + this.baseMapper.updateById(mallTeamLeaderAdd); + } + }else{ + MallTeamLeader mallTeamLeader = MallTeamLeaderConversion.INSTANCE.dtoToEntity(apiApplayLeaderDto); + mallTeamLeader.setMemberId(memberId); + mallTeamLeader.setState(MallTeamLeader.STATE_ING); + mallTeamLeader.setUniqueCode(member.getInviteId()); + //申请团长默认关闭返利,返利比例为0 + mallTeamLeader.setProfitSwitch(2); + mallTeamLeader.setBonusPercent("0"); + this.baseMapper.insert(mallTeamLeader); + } return new FebsResponse().success().message("申请成功"); } @@ -154,6 +175,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()); @@ -167,8 +189,18 @@ apiLeaderInfoVo.setDetailAddress(mallTeamLeader.getDetailAddress()); apiLeaderInfoVo.setAddressArea(mallTeamLeader.getAddressArea()); MallElectronicFence mallElectronicFence = mallElectronicFenceMapper.selectByTeamLeaderCode(mallTeamLeader.getUniqueCode()); - String longLatStr = mallElectronicFence.getLonglatiarr(); - apiLeaderInfoVo.setLonglatiarr(longLatStr); + if(ObjectUtil.isNotEmpty(mallElectronicFence)){ + 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); } @@ -177,7 +209,17 @@ MallMember member = LoginUserUtil.getLoginUser(); IPage<MallOrderInfo> page = new Page<>(apiLeaderOrderListDto.getPageNum(), apiLeaderOrderListDto.getPageSize()); apiLeaderOrderListDto.setMemberId(member.getId()); - IPage<MallOrderInfo> mallOrderInfos = this.baseMapper.selectApiLeaderOrderListInPage(page, apiLeaderOrderListDto); +// IPage<MallOrderInfo> mallOrderInfos = this.baseMapper.selectApiLeaderOrderListInPage(page, apiLeaderOrderListDto); + IPage<MallOrderInfo> mallOrderInfos = this.baseMapper.selectNewApiLeaderOrderListInPage(page, apiLeaderOrderListDto); + if(CollUtil.isNotEmpty(mallOrderInfos.getRecords())){ + for(MallOrderInfo mallOrderInfo : mallOrderInfos.getRecords()){ + Long orderInfoId = mallOrderInfo.getId(); + List<MallOrderItem> mallOrderItemList = mallOrderItemMapper.selectListByOrderId(orderInfoId); + if(CollUtil.isNotEmpty(mallOrderItemList)){ + mallOrderInfo.setItems(mallOrderItemList); + } + } + } return MallOrderInfoConversion.INSTANCE.entitysToVos(mallOrderInfos.getRecords()); } @@ -210,7 +252,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()); @@ -267,20 +309,27 @@ 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(); + 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()); @@ -292,6 +341,12 @@ 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(); @@ -334,6 +389,10 @@ MallOrderInfo mallOrderInfo = mallOrderInfoMapper.selectById(orderId); MallOrderItem mallOrderItem = mallOrderItemMapper.selectById(itemId); + MallGoodsSku mallGoodsSku = mallGoodsSkuMapper.selectById(mallOrderItem.getSkuId()); + if(ObjectUtil.isEmpty(mallGoodsSku)){ + return new FebsResponse().fail().message("退款失败,请联系客服人员"); + } List<MallRefundEntity> mallRefundEntities = mallRefundMapper.selectByItemIdAndOrderIdAndState(itemId, orderId, 3); if(CollUtil.isEmpty(mallRefundEntities)){ return new FebsResponse().fail().message("退款失败,请联系客服人员"); @@ -361,6 +420,7 @@ //退款退款金额 BigDecimal refundAmount = mallRefundEntity.getAmount(); + refundAmount = refundAmount.add(mallOrderInfo.getCarriage()); BigDecimal bb = new BigDecimal(100); int refundMoney = refundAmount.multiply(bb).intValue(); @@ -374,8 +434,6 @@ mallGoods.setStock(mallGoods.getStock() + mallOrderItem.getCnt()); mallGoods.setVolume(mallGoods.getVolume() - mallOrderItem.getCnt()); mallGoodsMapper.updateById(mallGoods); - - MallGoodsSku mallGoodsSku = mallGoodsSkuMapper.selectById(mallOrderItem.getSkuId()); mallGoodsSku.setStock(mallGoodsSku.getStock() + mallOrderItem.getCnt()); mallGoodsSku.setSkuVolume(mallGoodsSku.getSkuVolume() - mallOrderItem.getCnt()); mallGoodsSkuMapper.updateById(mallGoodsSku); @@ -383,7 +441,7 @@ mallRefundEntity.setState(1); mallRefundEntity.setUpdatedTime(DateUtil.date()); mallRefundMapper.updateById(mallRefundEntity); - mallMoneyFlowService.addMoneyFlow(mallOrderInfo.getMemberId(), refundAmount, MoneyFlowTypeEnum.REFUND.getValue(), mallOrderInfo.getOrderNo(), FlowTypeEnum.BALANCE.getValue()); + mallMoneyFlowService.addMoneyFlow(mallOrderInfo.getMemberId(), refundAmount, MoneyFlowTypeEnum.REFUND.getValue(), mallOrderInfo.getOrderNo(), FlowTypeEnum.BALANCE.getValue(),"余额退款",2); List<MallOrderItem> mallOrderItemList = mallOrderItemMapper.selectListByNotInStateAndOrderId(3,orderId); if(CollUtil.isEmpty(mallOrderItemList)){ @@ -416,7 +474,7 @@ mallGoods.setVolume(mallGoods.getVolume() - mallOrderItem.getCnt()); mallGoodsMapper.updateById(mallGoods); - MallGoodsSku mallGoodsSku = mallGoodsSkuMapper.selectById(mallOrderItem.getSkuId()); +// MallGoodsSku mallGoodsSku = mallGoodsSkuMapper.selectById(mallOrderItem.getSkuId()); mallGoodsSku.setStock(mallGoodsSku.getStock() + mallOrderItem.getCnt()); mallGoodsSku.setSkuVolume(mallGoodsSku.getSkuVolume() - mallOrderItem.getCnt()); mallGoodsSkuMapper.updateById(mallGoodsSku); @@ -425,7 +483,7 @@ mallRefundEntity.setState(1); mallRefundEntity.setUpdatedTime(DateUtil.date()); mallRefundMapper.updateById(mallRefundEntity); - mallMoneyFlowService.addMoneyFlow(mallOrderInfo.getMemberId(), refundAmount, MoneyFlowTypeEnum.REFUND.getValue(), mallOrderInfo.getOrderNo(), FlowTypeEnum.BALANCE.getValue()); + mallMoneyFlowService.addMoneyFlow(mallOrderInfo.getMemberId(), refundAmount, MoneyFlowTypeEnum.WECHAT_REFUND.getValue(), mallOrderInfo.getOrderNo(), FlowTypeEnum.WECHAT.getValue(),"微信退款",2); List<MallOrderItem> mallOrderItemList = mallOrderItemMapper.selectListByNotInStateAndOrderId(3,orderId); if(CollUtil.isEmpty(mallOrderItemList)){ @@ -525,4 +583,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); + } + } -- Gitblit v1.9.1